Диплом: Автоматизация обработки заявок в АО «ТЭК-Торг»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
56
• Firebird (FirebirdSQL) можно назвать компактной,
кроссплатформенной и свободной СУБД, работающей на Linux, Microsoft
Windows и различных Unix платформах;
• PostgreSQL является свободной объектно-реляционной СУБД;
• SQLite позиционируется как компактная встраиваемая реляционная
БД. Исходный код библиотеки является открытым.
Существует большое количество СУБД, написанных для различных ОС и
платформ, к ним можно отнести Oracle, MySQL, mSQL, PostgreSQL, IBM DB2,
SQL Server, Teradata, Interbase, Universe, GNU SQL Server, Sybase, Ingres,
Informix, Empress, LEAP RDBMS, FirstBase, Typhoon, SQL/DS, Daffodil DB,
Cloudscape, Compad Non-Stop SQL MX и SQL/MP, Ocelot, Progress, Linter
RDBMS SQL.
Использование той или иной СУБД часто становится субъективным и
зависит от различных параметров, одним из которых так или иначе становится
стоимость. Язык описания данных (ЯОД) характеризуется средствами описания
данных в БД и их связями друг с другом. При помощи средств языка
определяется структура БД, пароли, форматы записей, защищающие данные.
Язык манипулирования данными (ЯМД) является языком реализации операций
над данными, который также дает возможность изменять их строение.
Для разных СУБД создание этих уровней языков может быть различно. В
одних случаях ЯОД и ЯМД необходимо реализация пользователем программы
только “вручную”, в других (что характерно на сегодняшний день) в СУБД есть
инструменты полностью наглядной разработки программ. Для этого в
современных СУБД есть редакторы экранных форм, отчетов и т.п. Механизмами
(инструментами) таких редакторов становятся различные поля (ввода, вывода и
т.д.), процедуры обработки разных типов (запросы, таблицы, отчеты, формы).
Опираясь на созданные пользователем объекты программы генераторы создают
программный код на языке отдельной машины или на промежуточном языке.
Для примера возьмем три СУБД, среди которых имеются и бесплатные, и
платные: MS SQL Server, MySQL, Oracle. Опишем кратко каждую из трех
систем.
57
MS SQL Server. Исходный код MS SQL Server (до версии 7.0) базировался
на коде Sybase SQL Server, что дало возможность Microsoft выйти на рынок БД
для бизнеса, где конкурировали Oracle, IBM, и затем Sybase. Microsoft, Sybase и
Ashton-Tate сначала совместно создали и выпустили на рынок первую версию
программы, названной SQL Server 1.0 для OS/2 (около 1989 года), которая стала
почти аналогом Sybase SQL Server 3.0 для Unix, VMS и др. Microsoft SQL Server
4.2 был полностю готов в 1992 году и входил в состав ОС Microsoft OS/2 версии
1.3. Официально Microsoft SQL Server версии 4.21 для ОС Windows NT
представили одновременно с релизом самой Windows NT (версии 3.1). Microsoft
SQL Server 6.0 стал первой версией SQL Server, разработанной только для
архитектуры NT и без помощи в разработке самой Sybase.
Сервер БД Microsoft SQL Server использует в качестве языка запросов
версию языка SQL, названную Transact-SQL (сокращённо T-SQL). Язык
поддерживал дополнительный синтаксис для хранимых процедур и реализует
поддержку транзакций (непосредственное взаимодействие БД с управляющим
ПО).
В момент взаимодействия с сетью Microsoft SQL Server и Sybase ASE
применяется протокол уровня приложения, названный Tabular Data Stream (TDS,
протокол передачи табличных данных). Протокол TDS также был создан в
проекте FreeTDS для обеспечения некоторым приложениям стабильного
взаимодействия с БД Microsoft SQL Server и Sybase.
Для доступа к данным 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 также имеет возможность зеркалирования и кластеризации БД.
Кластер сервера SQL является некоторой совокупностью одинаково
58
составленных серверов; эта схема упрощает распределение рабочей нагрузки
между двумя и более серверами. Все сервера содержат одно виртуальное имя, и
данные отправляются по IP-адресам машин кластера во время рабочего цикла. В
случае отказа или сбоя на одном из серверов кластера имеется автоматический
перенос всего потока данных на рабочий сервер.
SQL Server поддерживает избыточное дублирование данных, описанное в
3 сценариях:
• Снимок: делается «снимок» БД, который сервер пересылает
получателям;
• Журнал изменений: все изменения БД всегда передаются
пользователям;
• Синхронизация с другими серверами: БД двух и более серверов
синхронизируются между собой. Изменения всех БД протекают независимо друг
от друга на всех серверах, в момент синхронизации идет сверка данных. Такой
тип дублирования поддерживает возможность разрешения противоречий между
БД;
В SQL Server 2005 имеет встроенную поддержку .NET Framework, что
позволяет написать хранимые процедуры БД на любом языке платформы.NET,
применяя весь набор библиотек, доступных для.NET Framework вместе с
Common Type System (система обращения с типами данных в Microsoft.NET
Framework). Но в отличии от других процессов, .NET Framework, выступающий
как базисная системой SQL Server 2005, требует дополнительную память и
выстраивает механизмы управления SQL Server и не использует встроенные
средства Windows. Такой подход дает дополнительную производительность в
сравнении с общими алгоритмами Windows, поскольку алгоритмы
распределения ресурсов точно настроены для использования в структурах SQL
Server.
MYSQL. MySQL появилась в виде попыткы применить mSQL к
собственным разработкам компании: таблицам, для которых применялись ISAM
- подпрограммы низкого уровня. В итоге был создан новый SQL-интерфейс, но
API-интерфейс остался прежний от mSQL.
59
MySQL стал решением для малых и средних приложений. Вошел в состав
серверов WAMP, LAMP и в компактные сборки серверов Денвер, XAMPP.
Зачастую MySQL применяется в качестве сервера, к которому имеют доступ
удаленные или локальные клиенты, но в дистрибутиве находится библиотека
внутреннего сервера, что дает возможность включать MySQL в автономные
программы.
Гибкость СУБД MySQL реализуется поддержкой огромного количества
типов таблиц: пользователи выбирают как таблицы типа MyISAM, имеющие
полнотекстовый поиск, так и таблицы InnoDB, имеющие транзакции на уровне
отдельных записей. Также СУБД MySQL уже включает специальный тип таблиц
EXAMPLE, которые показывают принципы разработки новых типов таблиц. А
открытая архитектура и GPL-лицензирование позволяют добавлять в СУБД
MySQL новые типы таблиц.
В 2008 году Sun Microsystems купила MySQL AB за 1 миллиард долларов.
В 2010 году Oracle Corporation купил Sun Microsystems и поставил MySQL
в собственную линейку СУБД.
Группой разработчиков MySQL реализованы разные ответвления кода,
такие как Drizzle, OurDelta, Percona Server, и MariaDB. Все они уже
существовали уже в тот момент, когда компании Sun и MySQL AB были
куплены Oracle.
Нынешние версии MYSQL включают в себя следующие возможности:
• Сегментирование - это возможность разделения одной большой
таблицы на несколько частей, помещенных в разные файловые системы,
руководствуясь определенной пользователем функции. При некоторых условиях
это может хорошо увеличить производительность и уменьшить
масштабирование таблиц;
• Изменение поведения ряда операторов для реализации большей
совместимости со стандартом SQL 2003;
• Построчная синхронизация, при которой в бинарный лог
записывается только информация о реально отредактированных строках
таблицы вместо оригинального (и чаще более медленного) текста запроса.
Построчную репликацию лучше применять только для определенных типов sql-
60
запросов, а говоря терминологией MySQL – реализовывать смешанную
репликацию;
• Встроенный планировщик периодически выполняемых работ. По
синтаксису добавление задачи схоже с добавлением триггера к таблице, по
идеологии - на crontab;
• Включенный набор функций для обработки XML, реализация
поддержки XPath;
• Удобные средства диагностики проблем и утилиты для подсчета
производительности. Увеличены возможности по управлению содержимым лог-
файлов, логи теперь сохраняются и в таблицах general_log и slow_log.
Инструмент mysqlslap дает возможность провести нагрузочное тестирование БД
и указать время реакции на каждый запрос;
• Встроенная утилита mysql_upgrade, которая перед обновлением
выполняет проверку всех существующих таблиц на возможность совместимости
с новой версией, и если нужно сделает все корректировки;
• MySQL Cluster теперь используется как отдельный продукт,
основанный на MySQL 5.1 и хранилище NDBCLUSTER;
• MySQL Cluster претерпело изменения в специфике работы, теперь
есть возможность хранения табличных данных на диске;
• Применение встроенной библиотеки libmysqld, отсутствовавшей в
MySQL 5.0;
• API для плагинов, позволяющее загружать сторонние модули,
увеличивающее функциональность (например, полнотекстовый поиск) без
перезагрузи сервера;
• Создание парсера полнотекстового поиска в виде plug-in;
Oracle. СУБД Oracle можно назвать ветераном рынка реляционных СУБД.
Создание этой системы началось в то же время, что и IBM DB2, и даже сейчас
эти системы остаются главными конкурентами.
Oracle имеет лидирующие позиции на рынке СУБД и главное, лидирует на
платформах Unix и Windows. В России это лидерство также ощутимо, особенно
в области крупномасштабных ИС. Фактически у нас СУБД Oracle стала
стандартом государственных ИС.
61
Причина такой распространенности Oracle заключается, во-первых, в
хороших эксплуатационных характеристиках СУБД, широком штате
подготовленных отечественных специалистов по Oracle, наличию всех
сторонней инфраструктуры - учебных центров, партнёрской сети Oracle,
различных технических курсах по Oracle в ВУЗах и т.д. Только в Москве
имеется более десятка учебных центров, которые предлагают широкий спектр
технических курсов практически по всем видам ПО Oracle. Партнерская сеть
нашей страны включает в себя более 160 организаций, что позволяет
реализовать поддержку ПО Oracle почти везде по стране. На русский язык уже
переведено и издано достаточно много качественных книг по СУБД Oracle.
Служба технической поддержки Oracle реализовано очень
профессиональна и сертифицирована в России по стандарту ISO 9000.
А многие ведущие компании - партнеры Oracle, такие как FORS, RDTex
открывают собственные центры технической поддержки.
Важным является и то, что совместно с СУБД, компания Oracle
предоставляет очень важный инфраструктурный продукт - Internet Application
Server - сервер приложений, работающий в среде Internet/Intranet, а также CASE-
средства, средств разработки ПО, средства построения хранилищ данных,
оперативного анализа информации, нахождения сложных зависимостей в
данных (Data Mining), что помогает поставлять не отдельные продукты, а уже
полноценные комплексные технологические решения для заказчиков.
С технической точки зрения является преимуществом то, что Oracle
работает практически на всех существующих компьютерных платформах, в том
числе и на ЭВМ (OS/390) и на еще на более-менее популярных системах Vax
VMS, а также Windows NT и некоторых разновидностях Unix, в том числе
Solaris, HP-UX, AIX, Linux, SCO Unix и т.д.
Важным аспектом является также поддержка Oracle всех возможных
вариантов архитектур, в том числе симметричных многопроцессорных систем,
систем с массовым параллелизмом, кластеров и т.д. Видна значимость этих
характеристик для нынешних масштабных организаций, где работает
одновременно множество компьютеров различных моделей и производителей.
При этом фактором успеха является максимальная типизация возможных
62
решений, ставящая своей целью значительное уменьшение стоимости владения
ПО. Единообразие СУБД является одним из наиболее значимых шагов на пути
достижения поставленной ценил.
Ядром СУБД Oracle становится сервер БД, поставляемый в одном из
четырех вариантов в зависимости от размеров ИС, в рамках которой он будет
использоваться. Для систем масштаба крупной организации имеется продукт
Oracle Database Enterprise Edition корпоративной версии, включающий целый
набор опций, архитектурно и функционально расширяющих функции сервера.
Именно Oracle Database Enterprise Edition работает на кластерах (с опцией
Parallel Server, по версию 8i включительно или RAC - Real Application Cluster,
начиная с версии 9i и старше), помогая реализовывать системы высокой
готовности. Продукт Oracle Database Standard Edition в стандартной редакции
рассчитан на организации среднего масштаба или подсистемы одной крупной
компании. Для использования персонально есть Oracle Database Personal Edition
в персональной версии.
Огромным преимуществом Oracle перед конкурентами (особенно перед
DB2) является высокая схожесть кода разных версий сервера БД Oracle для всех
платформ, что позволяет гарантировать стабильность и предсказуемость работы
Oracle на всех ПК, входящих в состав сети. Все варианты сервера Oracle в своей
основе содержат идентичный исходный программный код и сходи
функционально, исключение составляют некоторые опции, добавляемые к
Oracle Database Enterprise Edition и отсутствующие в Oracle Database Standard
Edition.
Поэтому для всех платформ существует единая СУБД в различных
версиях с одинаковым поведением и одинаковой функциональностью вне
зависимости от платформы, на которой на работает.
Жесткая технологическая схема разработки Oracle, основанная на
принципах идентичности исходного программного кода для разных версий и
платформ, отлична от схем других компаний. Например, СУБД DB/2 является
семейством продуктов, но никак не единым продуктом. Функционально версия
DB2 для IBM S/390 очень отличается от DB2 для платформ UNIX и NT, что
позволяет считать их вообще совершенно разными продуктами.
63
СУБД Oracle опускает детали реализации механизмов управления данным
на отдельной платформе, что позволяет судить о практически полном
единообразии созданных на одной платформе, на другие платформы без каких-
то значимых изменений как в структурах БД, так и коде предложения. При этом
базовым критерием, определяющим доступность переноса тех или иных
компонентов системы между платформами, становится полное отсутствие в них
машинно-зависимого кода.
Для оптимального функционирования базы данных необходимо будет
правильно определить логические взаимосвязи между таблицами. Таким
образом, на разработку самой базы данных и основы клиентского приложения
может быть затрачено значительное время.
Точно определив, какие именно данные нам нужны, каким образом они
будут храниться в памяти и какая должна быть система доступа к данным, мы
тем самым решили только вопрос управления данными. Кроме этого нужен еще
простой способ автоматизации решения предстоящих типовых задач.
Для выбора СУБД выделены несколько групп критериев:
Моделирование данных
Особенности архитектуры и функциональные возможности
Контроль работы системы
Особенности разработки приложений
Производительность
Надежность
Требования к рабочей среде
Смешанные критерии
Оценка производительности производится методом тестирования с
помощью эталонных тестов из набора AS3AP (ANSI SQL Standard Scalable and
Portable). В них контролируется широкий спектр часто встречающихся операций
БД и моделируются однопользовательские и многопользовательские среды.
В Таблице 1.12 приведена сравнительная таблица трех распространенных
систем управления базами данных, конкурирующих на рынке программного
обеспечения по основным показателям.
Таблица 1.12
Сравнение СУБД
64
Факторы
(показатели)
Microsoft
SQL
Server
vNext
MySQL
5.7
PostgreSQ
L 10.2 Вес каждого
фактора
Производительност
ь
0,8 0,6 0,5 0,33333333
Защищенность 0,7 0,8 0,6 0,26666667
Простота
использования
0,2 0,9 0,3 0,2
Наличие
графического
средства
проектирования
0,7 0,9 0,4 0,13333333
Поддержка ОС 0,2 0,9 0,5 0,06666667
Итого 2,6 4,1 2,3 1
Рассчитывая обобщенный показатель качества фактора, получаем
результаты выбора в таблице 1.13.
Таблица 1.13
Второй этап выбора СУБД
Факт
оры
(показат
ели)
Производи
тельность
Защищ
енность
Просто
та
использов
ания
Наличи
е
графическ
ого
средства
проектиро
вания
Под
держка
ОС
И
тог
о
MyS
QL 5.1
0,72 0,56 0,04 0,42 0,16
1
,9
Micro
soft SQL
Server
2008
0,56 0,04 0,42 0,16 0
1
,18
Postg
reSQL
8.4
0,04 0,42 0,16 0 0
0
,62
65
Таким образом, для проекта, описывающего разработку ИС регистрации
заявок, наиболее приемлема СУБД MySQL.
1.4.3 Обоснование проектных решений по техническому обеспечению
Техническое обеспечение — комплекс технических средств,
предназначенных для работы информационной системы, а также
соответствующая документация на эти средства и технологические процессы
[16].
Комплекс технических средств составляют:
• компьютеры любых моделей;
• устройства сбора, накопления, обработки, передачи информации;
• устройства вывода информации;
• устройства передачи данных и линий связи;
• оргтехника и устройства автоматического съема информации;
• эксплуатационные материалы и др.
Разрабатываемый программный продукт имеет клиент-серверную
архитектуру.
Архитектура клиент-сервер основана на распределении функций между
двумя типами независимых и автономных процессов: серверами и клиентами.
Сеть связывает воедино серверы и клиенты, предоставляя средства связи.
Если вся обработка данных происходит на стороне сервера, а клиент
выполняет только функции интерфейса с пользователем, то клиентское
приложение называют «тонким» клиентом. Если часть обработки данных
происходит на стороне клиента — то «толстым» клиентом.
Архитектура клиент-сервер включает в себя три основных компонента:
Клиенты. Клиент представляет собой любой процесс компьютера,
который запрашивает сервис от сервера. Клиент также называется
интерфейсным приложением. Клиентский процесс, базируется на графическом
интерфейсе пользователя.
Серверы. Сервер — это компьютерный процесс, предоставляющий сервис
клиентам. Сервер также называют серверным приложением. Серверный процесс

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

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