Автор работы: Пользователь скрыл имя, 12 Января 2013 в 15:16, дипломная работа
Целью данной работы является создание системы, которая обеспечит решение следующих задач:
вести журнал посещения и хранения автомобилей на стоянках;
отслеживать информацию о клиентах компании;
отслеживать свободное пространство на стоянках и рекомендовать постановку машины;
вести договора с клиентами.
используют протокол уровня приложения под названием Tabular Data Stream (TDS, протокол передачи табличных данных). Протокол TDS также был реализован в проекте FreeTDS с целью обеспечить различным приложениям возможность взаимодействия с базами данных Microsoft SQL Server и Sybase [22].
Microsoft SQL Server также поддерживает Open Database Connectivity (ODBC) — интерфейс взаимодействия приложений с СУБД. Версия SQL Server 2005 обеспечивает возможность подключения пользователей через веб-сервисы, использующие протокол SOAP. Это позволяет клиентским программам, не предназначенным для Windows, кроссплатформенно соединяться с SQL Server. Microsoft также выпустила сертифицированный драйвер JDBC, позволяющий приложениям под управлением Java (таким как BEA и IBM WebSphere) соединяться с Microsoft SQL Server 2000 и 2005.
SQL Server поддерживает зеркалирование и кластеризацию баз данных [23]. Кластер сервера SQL — это совокупность одинаково конфигурированных серверов; такая схема помогает распределить рабочую нагрузку между несколькими серверами. Все сервера имеют одно виртуальное имя, и данные распределяются по IP-адресам машин кластера в течение рабочего цикла. Также в случае отказа или сбоя на одном из серверов кластера доступен автоматический перенос нагрузки на другой сервер.
SQL Server поддерживает избыточное дублирование данных по трем сценариям:
В SQL Server 2005 встроена поддержка .NET Framework [24]. Благодаря этому, хранимые процедуры БД могут быть написаны на любом языке платформы .NET, используя полный набор библиотек, доступных для .NET Framework, включая Common Type System (система обращения с типами данных в Microsoft .NET Framework) [25]. Однако, в отличие от других процессов, .NET Framework, будучи базисной системой для SQL Server 2005, выделяет дополнительную память и выстраивает средства управления SQL Server вместо того, чтобы использовать встроенные средства Windows. Это повышает производительность в сравнении с общими алгоритмами Windows, так как алгоритмы распределения ресурсов специально настроены для использования в структурах SQL Server.
Ниже приведено сравнение MS SQL с MySQL и Oracle по производительности, цене и качеству.
MSSQL и Oracle
Сравнение этих СУБД приведено на основе данных независимого издания Transaction Processing Performance Council. В таблице 3.6 приведены сравнительные характеристики этих двух СУБД. Клиентские места при этом могут функционировать практически на любой платформе.
Таблица 3.6 - Сравнительные характеристики СУБД Oracle 9i и MS SQL Server 2005
Сравнительные характеристики |
Microsoft SQL Server |
Oracle |
Административное управление |
Хорошо |
Отлично |
Графические инструменты |
Отлично |
Хорошо |
Простота обслуживания |
Отлично |
Отлично |
Механизм данных |
Хорошо |
Отлично |
Работа с несколькими ЦП |
Приемлемо |
Отлично |
Функция соединения и выбор индексов |
Отлично |
Отлично |
Одновременный доступ нескольких пользователей |
Хорошо |
Отлично |
Продолжение таблицы 3.6 | ||
Сравнительные характеристики |
Microsoft SQL Server |
Oracle |
Обработка мультимедиа-даных |
Плохо |
Отлично |
Подключение к Web |
Приемлемо |
Отлично |
Обработка аудио, видео, изображений |
Плохо |
Отлично |
Поиск по всему тексту |
Хорошо |
Отлично |
Функциональная совместимость |
Хорошо |
Хорошо |
Сопряжение с другими БД |
Хорошо |
Хорошо |
Единая регистрация |
Хорошо |
Хорошо |
Хранимые процедуры и триггеры |
Хорошо |
Отлично |
Построение баз данных |
Хорошо |
Отлично |
Язык SQL |
Отлично |
Отлично |
Объектно-ориентированные системы |
Приемлемо |
Отлично |
Работа с филиалами |
Отлично |
Отлично |
Тиражирование |
Отлично |
Отлично |
Распределенная обработка |
Отлично |
Отлично |
Дистанционное администрирование |
Хорошо |
Отлично |
Организация хранилищ данных и подготовка отчетов |
Отлично |
Отлично |
Средства загрузки |
Отлично |
Отлично |
Средства анализа |
Отлично |
Отлично |
Microsoft SQL Server и Oracle относятся к классу многпользовательских систем [26]. Они развиваются и совершенствуются уже в течение многих лет и реализуются как коммерческие программные продукты. Эти СУБД можно характеризовать как основу для промышленных решений в области обработки данных. На российском рынке представлены практически все производители и поставщики промышленных СУБД, в том числе Adabas (Software AG), DB2 (IBM), Informix (Informix Software), Microsoft (Microsoft SQL Server), Oracle (Oracle Corporation), Sybase (Sybase).
Наиболее существенным
критерием для сравнения СУБД
являются эксплуатационные характеристики,
такие как надежность, высокая готовность,
производительность, масштабируемость [27]. В таблице 3.7 приводится сравнительный анализ основных СУБД по этим показателям, выполненный на основе экспертных оценок. Каждому показателю была дана оценка по 10-бальной шкале, максимальная оценка 10 баллов.
Таблица 3.7 - Экспертная оценка MS SQL Server и Oracle
СУБД |
Производительность |
Конкурентный. доступ |
По числу пользов. |
Большие БД |
Готовность |
Microsoft SQL Server |
6 |
7 |
5 |
5 |
7 |
Oracle |
6 |
9 |
8 |
8 |
8 |
Обе системы отвечают всем необходимым требованиям, предъявляемыми заказчиками. Основные требования заказчиков СУБД представлены в таблице 3.8.
Таблица 3.8 - Основные требования заказчика к СУБД
Необходимые требования |
MS SQL Server 2005 |
Oracle 9i |
локализация интерфейса пользователя, возможность построения и сортировки полей баз данных, содержащих символы кириллицы |
+ |
+ |
поддержка структуры относительных данных |
+ |
+ |
поддержка технологий пользователя/сервера |
+ |
+ |
поддержка многопроцессорной архитектуры |
+ |
+ |
поддержка кластерной архитектуры |
+ |
+ |
наличие средств для создания индексов и кластеров данных для повышения скорости обработки |
+ |
+ |
восстановление баз данных с использованием журнала транзакций |
+ |
+ |
механизм блокировки транзакций при записи или на уровне страницы |
+ |
+ |
поддержка ANSI SQL |
+ |
+ |
поддержка стандарта SQL-3 (новое название – SQL99) |
+ - |
+ |
поддержка ODBC |
+ |
+ |
контроль целостности базы данных |
+ |
+ |
импорт и экспорт таблиц баз данных |
+ |
+ |
совместимость с предлагаемой операционной системой модулей как пользователя, так и сервера |
+ |
+ |
Продолжение таблицы 3.8 | ||
Необходимые требования |
MS SQL Server 2005 |
Oracle 9i |
поддержка сетевых протоколов, используемых
предлагаемыми операционными |
+ |
+ |
наличие графического интерфейса пользователя для управления базой данных |
+ |
+ |
контроль доступа к данным. Опознавание с использованием средств СУБД |
+ |
+ |
централизованное управление пользователями |
+ |
+ |
наличие оптимизатора запросов для оптимизации пути прохождения данных |
+ |
+ |
поддержка больших двоичных объектов (BLOB) |
+ |
+ |
поддержка OLAP-технологий в т.ч. специализированных средств OLAP-анализа |
+ |
+ |
отлаженный механизм репликации данных |
+ |
+ |
Из приведённых выше результатов сравнения видно, что СУБД Oracle в целом выигрывает у MS SQL Server по ряду показателей. Но обе системы отвечают всем необходимым требованиям предъявляемым разрабатываемой системой (таблица 3.8). Следовательно, для автоматизированной системы подойдут обе системы. Но по цене лицензий (таблица 3.9) MS SQL Server значительно дешевле Oracle. Поэтому, из этих двух СУБД целесообразнее выбрать MS SQL Server [28].
Таблица 3.9 - Стоимость лицензий на 30 и более пользователей
Название СУБД |
Цена, $ |
Количество |
Стоимость, $ |
SQL Server 2005 Enterprise Edition English OpenLicensePack B |
6643,97 |
1 |
6643,97 |
SQL Server 2005 ClientAccessLicense English OpenLicensePack B |
151,94 |
30 |
4558,2 |
Всего на использование SQL Server 2000 |
11202,17 | ||
Oracle Database Enterprise Edition |
34675 |
Неограниченное число |
34675 |
MS SQL Server и MySQL Server
MySQL является свободно-распространяемой СУБД. Следовательно, стоимость этой СУБД значительно ниже стоимости MS SQL Server. Основной критерий выбора MS SQL – это скорость работы и производительность. Сравнение этих двух СУБД приведено ниже.
MySQL, в отличии от Microsoft SQL Server, не поддерживает ни триггеры, ни хранимые процедуры, что значительно усложняет ее использование, т.к. в приложениях системы большую часть необходимых проверок введенных данных и всевозможных блокировок, а также обеспечение целостности базы данных приходится выполнять на уровне клиентского приложения, что очень усложняет процесс создания и эксплуатации. В таблице 10 показаны особенности разработки приложений в рассматриваемых СУБД. Из таблицы видно, что и здесь MySQL проигрывает.
Таблица 3.10 - Особенности разработки приложений
Показатель |
MS SQL Server |
MySQL |
Визуальные средства проектирования |
+ |
+ |
Многоязыковая поддержка |
+ |
+ |
Возможности разработки web -приложений |
+ |
+ |
Поддержка JAVA |
+ |
|
Встроенный язык программирования |
+ |
|
Data Mining |
+ |
По стоимости эксплуатации
обе системы предъявляют
Таблица 3.11 - Минимальные требования к серверу.
Показатель |
ОС |
MS SQL Server |
Pentium II 350 MHz , ОЗУ – 128 Мбайт, HDD - 250 Мбайт |
MySQL |
Pentium 100 MHz , ОЗУ - 64 Мбайт (минимум), 100 Мбайт свободного места на диске |
Одним из основных показателей сравнения является производительность систем. По результатам тестирования данных СУБД независимыми экспертными компаниями, можно сказать, что MySQL значительно уступает по производительности MS SQL [29].
Следовательно, по результатам
сравнения СУБД по соотношению цена/
3.2 Описание реализации клиентской части ЭИС
3.2.1 Дерево функций и сценарий диалога
Диалог пользователя
и системы организован с
На этом рисунке представлено дерево вызова функций системы общее для всех модулей. В автоматизированной системе имеется ряд модулей по работе со справочной информацией, для которой выполняются одинаковые функции. К ним можно отнести следующие:
Функции для вывода информации представляют
собой запросы в базу данных (оператор
select). К изменению информации относятся
функции, основным оператором которых
является оператор update. Некоторые данные
могут изменяться
только администратором системы (или пользователем с соответствующими правами), например изменение логина и пароля пользователя.
Рисунок 3.1 – Дерево функций
Для остальных пользователей
редактирование базы данных