Диплом: Проектирование базы данных информационной системы учета данных телекоммуникационной компании ЗАО "Вокорд Телеком"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
22
категории;
2. прикладные программы, которые реализуют процедуры второй
категории;
3. программы доступа к информационным ресурсам, которые
реализуют процедуры третьей категории.
Согласно этому выделяют 3 модели реализации технологии «клиент-
сервер» [21,28]:
1. модель доступа к удаленным данным;
2. модель сервера базы данных;
3. модель сервера приложений.
Достоинства архитектуры клиент-сервер:
элементарная синхронизация данных;
небольшая цена аппаратного обеспечения (мощным может быть
исключительно сервер);
оперативность изменения структуры данных.
Недостатки архитектуры клиент-сервер:
низкая защита от несанкционированного доступа;
зависимость от компьютерной сети;
значительная цена.
Построение сетевого многопользовательского приложения
осуществляется по принципу файл-серверной архитектуры. Данные в виде
одного, либо ряда файлов, располагаются на файловом сервере [17].
Файловый сервер принимает запросы, которые поступают по сети от
компьютеров-клиентов и выполняет передачу им требуемых данных. Однако,
обрабатываются эти данные на компьютерах-клиентах. На всех компьютерах
выполняется запуск полной копии процедуры обработки данных. Любая
копия независимо управляет файлами базы данных, которые содержат
данные. Единственной связью между подобными независимыми действиями
считается файл блокировок, который в обязательном порядке формируется
23
для любого файла базы данных [24]. При этом каждая копия осуществляет
изменения индексов, работу с системными таблицами и остальные функции,
которые входят в компетенцию СУБД.
Архитектурой «клиент-сервер» предоставляется возможность
устранения всех указанных недостатков. Помимо этого, она позволяет
наилучшим образом распределять вычислительную нагрузку между сервером
и клиентом, что также оказывает влияние на многие характеристики
системы: поддержку, производительность, стоимость.
Архитектура «клиент-сервер» может быть как двухуровневой, так и
трехуровневой [3,29].
В двухуровневой архитектуре присутствуют два звена: это клиентская
ЭВМ и сервер СУБД (рисунок 7).
Рисунок 7 – Двухуровневая архитектура «клиент-сервер»
В свою очередь, двухуровневая архитектура может быть устроена по-
разному [24,29]:
По принципу «тонкий сервер» – «толстый клиент» (рисунок 8);
По принципу «толстый сервер» – «тонкий клиент» (рисунок 9).
Архитектура «толстый сервер» – «тонкий клиент» является наиболее
предпочтительной по ряду причин:
большее быстродействие и производительность системы за счет
того, что все операции манипулирования и выбора данных происходят на
сервере, а клиенту передается только результат запроса;
не происходит блокировок информации на период изменения её
24
одним из клиентов;
каналы передачи данных не перегружаются из-за необходимости
передачи всего объема данных для модификации на клиенте;
логику функционирования системы можно изменить на сервере без
перекомпиляции клиентского ПО, что особенно актуально в условиях
территориальной удаленности рабочих мест [21].
Рисунок 8 – Двухуровневая архитектура «тонкий сервер» – «толстый клиент»
Рисунок 9 – Двухуровневая архитектура «толстый сервер» – «тонкий клиент»
Отличительной особенностью трехуровневой архитектуры является
окончательное разделение функций хранения данных, их обработки и
представления пользователю [3,18].
Создание автоматизированной системы с применением трехуровневой
архитектуры «клиент-сервер» представлено на рисунке 10.
Доступ к данным выполняется при помощи промежуточного звена –
сервера приложений, что предоставляет существенные преимущества в
25
сравнении с двухуровневой архитектурой при построении
крупномасштабных ИС на разных аппаратных платформах в условиях
большого количества клиентов и их территориальной распределенности. В
частности, такая архитектура позволяет обеспечивать дополнительную
надежность и отказоустойчивость системы, неограниченно наращивать
мощность системы и количество клиентов за счет использования нескольких
серверов приложений. Также становится возможным перенос БД с одной
СУБД на другую и изменение логики изменения данных без необходимости
обновления клиентских программ [21,28]. Сервер приложений, помимо
реализации предметных задач, еще и существенно снижает нагрузку на
сервер БД.
Рисунок 10 – Трехуровневая архитектура «клиент-сервер»
Наиболее целесообразным для решения поставленной задачи является
выбор двухуровневой архитектуры «толстый сервер» – «тонкий клиент», так
как преимущества трехуровневой архитектуры являются избыточными для
текущей задачи, а стоимость и сложность организации существенно выше. К
тому же, существующая информационная инфраструктура отлично подходит
именно для двухуровневой архитектуры.
Сервер приложений разработан при помощи технологии Delphi XE2
DataSnap. Передача данных между сервером и клиентом осуществляется
через протокол TCP. Сервер приложений взаимодействует с базой данных
через СУБД MS Access [11]. Подключение к БД выполняется через
технологию ADO.
26
В структуре сервера можно выделить две основные части: модуль
управления сервером (TdmServer) и модуль предоставления данных
(TdssmRemoteData). Описание модулей приводится в таблице 1.
Таблица 1 – Структура сервера приложений
№
Название модуля
Описание
Функции
1
TdmServer
Содержит компоненты для
подключения к системе
управления базами данных
(через ADO) и компоненты
для организации сервера
приложений (передача
данных выполняется через
протокол TCP).
Подключение к СУБД.
Управление сервером приложений
(установка соединений с
клиентскими приложениями,
аутентификация пользователей,
передача данных клиентам).
2
TdssmRemoteData
Модуль системы, который
определяет доступные
клиенту данные и
функциональность системы.
Экземпляр данного модуля
создается для каждого
подключенного клиента.
Авторизация.
Предоставление данных.
Предоставление
функциональности.
Основой клиентской части является модуль TdmData. Модуль
выполняет следующие функции: соединение с сервером; управление
предоставленными сервером наборами данных; получение доступа к
функционалу сервера (создание проекции интерфейса взаимодействия
«TdssmRemoteData»).
2.2. Выбор модели и концепции базы данных
Для выполнения поставленных задач можно использовать любую
распространенную СУБД. Чтобы взаимодействие пользователя с системой
было удобным, необходимо скрупулезно обдумать интерфейс системы,
чтобы он был простым и одновременно функциональным.
На сегодняшний день существует большое количество СУБД. Невзирая
на то, что они способны работать по-разному с различными объектами и
предоставляют пользователю всевозможные средства и функции, основная
часть СУБД опирается на единую устоявшуюся совокупность основных
27
функций [31].
Требования к СУБД, могут изменяться в зависимости от обозначенных
целей. Впрочем, можно выделить следующие группы критериев:
функциональные возможности, структура данных, специфичность создания
приложений, производительность, запросы к рабочей среде.
Проанализируем 5-ть реляционных СУБД в соответствии с методом
анализа иерархий, который предложил Т. Саати, осуществляя попарное
сравнение СУБД по каждому из критериев, вследствие чего создадим пять
матриц попарных сравнений альтернатив [32].
В качестве альтернатив будем рассматривать СУБД: DB2, Oracle [19],
Microsoft SQL Server, Postgre SQL и MySQL [5].
Выполним сравнение выбранных СУБД согласно аспекту «Структура
данных».
Всеми вышеперечисленными альтернативами реализуется объектно-
реляционная модель данных (ОРСУБД) или реляционная модель данных
(РСУБД), следовательно, все эти системы подходят для сравнения и анализа.
Анализ рассматриваемых альтернатив будем проводить по предусмотренным
видам данных. Подведя итоги такого анализа возможно построение матриц
сравнений согласно первому критерию (таблица 2), определить главное
собственное значение, вектор приоритетов и другие показатели [32].
Таблица 2 – Матрица сравнений альтернатив согласно аспекту
«Структура данных»
DB2
Oracle
MySQL
MS SQL
Postgre SQL
DB2
1
1
1
1
1
Oracle
1
1
1/4
1/5
1/3
MySQL
1
4
1
1/2
2
MS SQL Server
1
5
2
1
2
Postgre SQL
1
3
1/2
1/2
1
Вектор приоритетов: ОД 8 0,08 0,24 0,33 0,17
Отношение согласованности (ОС): 0,07. Индекс согласованности (ИС):
0,084. Главное собственное значение: 5,34.
Видно, что ОС в границах нормы.
28
Выполним сравнение выбранных СУБД согласно аспекту
«Функциональные возможности».
Пунктом «Триггеры и хранимые процедуры» определяется
существование в некоторой СУБД класса функций, процедур.
Проанализируем альтернативы по этому пункту (таблица 3).
Таблица 3 – Анализ альтернатив согласно пункту
«Триггеры и хранимые процедуры»
Триггер
Функция
Процедура
DB2
+
+
+
Microsoft SQL Server
+
+
+
MySQL
+
+
+
Oracle
+
+
+
Postgre SQL
+
+
+
Пунктом «Масштабируемость» предусматриваются возможности
анализируемой СУБД по повышению объема данных со временем и при
необходимости [10]. Следует рассмотреть наибольший потенциальный объем
сохраняемых данных для любой альтернативы (таблица 4).
Таблица 4 – Анализ альтернатив согласно пункту «Масштабируемость»
Размер БД
Размер таблицы
Размер строки
DB2
512 Тб
512 Тб
32677 байт
Microsoft SQL Server
524258 Тб
524258 Тб
∞
MySQL
∞
256 Тб
64 Kб
Oracle
∞
4 Гб* Размер блока
8 Kб
Postgre SQL
∞
32 Тб
1,6 Тб
Таким образом, проанализированы рассматриваемые альтернативы
согласно пунктам аспекта «Функциональные возможности». По итогам
анализа возможно построение матрицы альтернатив согласно второму
критерию (таблица 5), рассчитать основные показатели и вектор
приоритетов.
Таблица 5 – Матрица сравнений альтернатив согласно аспекту
«Функциональные возможности»
DB2
Oracle
MySQL
MS SQL
Postgre SQL
DB2
1
1/4
2
1/7
1/5
Oracle
4
1
1
1/4
1/2
MySQL
1/2
1
1
1/4
1/2
MS SQL Server
7
4
4
1
3
Postgre SQL
5
2
2
1/3
1
29
Отношение согласованности (ОС): 0,09. Индекс согласованности (ИС):
ОД 11. Главное собственное значение: 5,45.
Вектор приоритетов: 0,07 0,13 0,09 0,49 0,22
Проанализируем аспект «Особенности разработки приложений». В
процессе рассмотрения данного критерия следует дать оценку трудозатратам
на администрирование БД. Главные задачи подобного администрирования:
запасное копирование/восстановление, текущее администрирование БД,
установка, а также конфигурирование БД [21].
Построим матрицу сравнений альтернатив согласно третьему критерию
(таблица 6), рассчитаем основные показатели и вектор приоритетов.
Таблица 6 – Матрица сравнений альтернатив согласно аспекту
«Особенности разработки приложений»
DB2
Oracle
MySQL
MS SQL
Postgre SQL
DB2
1
1
1
1/6
1
Oracle
1
1
1
1/4
1
MySQL
1
1
1
1/4
1
MS SQL Server
6
4
4
1
3
Postgre SQL
1
1
1
1/3
1
Отношение согласованности (ОС): 0,01. Индекс согласованности (ИС):
0,01. Главное собственное значение: 5,04.
Проведем сравнение выбранных СУБД согласно критерию
«Производительность».
Итоги теста производительности ТРС изображены в таблице 7.
Таблица 7 – Итоги теста TPC
Название
Количество
транзакций, tpmC
Стоимость транзакции,
долларов/tpmC
Монитор
транзакций
Microsoft SQL Server
2005 х64
661.475
1.16 USD
Microsoft COM+
Oracle Database
Standard
631.766
1.08 USD
Microsoft COM+
IBM DB2 9.5
1.200.011
1.99 USD
Microsoft COM+
Применяя имеющиеся данные, проведем оценку рассматриваемых
СУБД согласно критерию «Производительность», выстроим матрицу
сравнений альтернатив (таблица 8).
Вектор приоритетов: 0,47 0,15 0,07 0,24 0,07
30
Отношение согласованности (ОС): 0,03. Индекс согласованности (ИС):
0,036. Главное собственное значение: 5,14.
Таблица 8 – Матрица сравнений альтернатив согласно аспекту
«Производительность»
DB2
Oracle
MySQL
MS SQL
Postgre SQL
DB2
1
4
5
3
5
Oracle
1/4
1
3
1/2
3
MySQL
1/5
1/3
1
1/4
1
MS SQL Server
1/3
2
4
1
4
Postgre SQL
1/5
1/3
1
1/4
1
Проанализируем аспект «Требования к рабочей среде». В таблице 9
приведены итоги анализа альтернатив согласно аспекту «Поддерживаемые
операционные системы».
Таблица 9 – Поддерживаемые ОС анализируемых систем
DB2
MS SQL Server
MySQL
Oracle
Postgre SQL
Windows
+
+
+
+
+
Mac OS
+
+
+
+
+
Linux
+
+
+
+
+
BSD
-
+
+
-
+
UNIX
+
+
+
+
+
AmigaOS
-
+
+
-
-
Symbian
-
+
+
-
-
Дадим оценку рассматриваемых СУБД согласно аспекту «Требования к
рабочей среде», выстроим матрицу сравнений альтернатив (таблица 10).
Предположим, что производительность обладает максимальной
важностью в сравнении с остальными критериями, запросы к рабочей среде
также считаются важными, поскольку при выборе СУБД на начальных
этапах затрагивается вопрос о совместимости анализируемой системы с
имеющимися программными и аппаратными средствами [18].
Таблица 10 – Матрица сравнений альтернатив согласно аспекту
«Требования к рабочей среде»
DB2
Oracle
MySQL
MS SQL
Postgre SQL
DB2
1
1
1/4
1/4
1/3
Oracle
1
1
1/4
1/4
1/2
MySQL
4
4
1
1
3
MS SQL Server
4
4
1
1
3
Postgre SQL
3
2
1/3
1/3
1
Выстроим матрицу сравнений критериев (таблица 11), пронумеруем их
31
для удобства от 1 до 5.
Таблица 11 – Матрица сравнений критериев
1
2
3
4
5
1
1
1
1/2
1/6
1/4
2
1
1
1/2
1/6
1/3
3
2
2
1
1/5
1/2
4
6
6
5
1
2
5
4
3
2
1/2
1
Вектор приоритетов альтернатив: 0,07 0,07 0,12 0,49 0,25
Отношение согласованности (ОС): 0,01. Индекс согласованности (ИС):
0,01. Главное собственное значение: 5,03.
Следовательно, места анализируемых СУБД распределились
следующим образом: Postgre SQL (0.11), Oracle (0.13), MySQL (0.16), DB2
(0.28), Microsoft SQL Server (0.32). На основании данного сравнения
выбираем для использования СУБД Microsoft SQL Server.
С целью создания программ для Windows существует множество
интегрированных сред разработки. К ним относятся С++ Builder, Delphi,
Visual С++, Visual Basic [33].
С появлением средства быстрой разработки приложений (RAD – rapid
application development) стало возможным программирование при помощи
готовых шаблонов и компонентов [8]. Для выбора среды программирования
автоматизированной системы выполним сравнение C++ Builder и Delphi.
Компания Borland на базе языка Object Pascal разработала систему
визуального программирования Delphi, построенную на основе активно
развивавшейся в то время теории объектно-ориентированного
программирования. Значительным шагом можно считать объектно-
ориентированный подход по созданию компонент, что позволило работать с
объектами, заранее наделенными нужными свойствами, а не использовать
сложные процедуры и функции [22]. Благодаря нормальной компиляции,
которая обеспечивает получение наиболее производительных программ,
обеспечивалось дополнительное преимущество. Две первые версии Delphi

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран