Выводы.

В сводной таблице представлены сравнительные характеристики этих двух СУБД. Клиентские места при этом могут функционировать практически на любой платформе, средством доступа клиентов к СУБД является либо CGI (Perl) либо JAVA приложения.

Сравнительные характеристики Microsoft SQL Server Oracle
Административное управление Хорошо Отлично
Графические инструменты Отлично Хорошо
Простота обслуживания Отлично Отлично
Механизм данных Хорошо Отлично
Работа с несколькими ЦП Приемлемо Отлично
Функция соединения и выбор индексов Отлично Отлично
Одновременный доступ нескольких пользователей Хорошо Отлично
Обработка мультимедиа-даных Плохо Отлично
Подключение к Web Приемлемо Отлично
Обработка аудио, видео, изображений Плохо Отлично
Поиск по всему тексту Хорошо Отлично
Функциональная совместимость Хорошо Хорошо
Сопряжение с другими БД Хорошо Хорошо
Единая регистрация Хорошо Хорошо
Работа под управлением различных ОС Приемлемо Хорошо
Возможности программирования Приемлемо Отлично
Хранимые процедуры и триггеры Хорошо Отлично
Внутренний язык программирования Приемлемо Отлично
Построение баз данных Хорошо Отлично
Язык SQL Отлично Отлично
Объектно-ориентированные системы Приемлемо Отлично
Работа с филиалами Отлично Отлично
Тиражирование Отлично Отлично
Распределенная обработка транзакций Отлично Отлично
Дистанционное администрирование Хорошо Отлично
Организация хранилищ данных и подготовка отчетов Отлично Отлично
Средства загрузки Отлично Отлично
Средства анализа Отлично Отлично

 

Требования заказчика (см. таблицу ниже)

 

Необходимые требования MS SQLServer 2000 Oracle 9i
локализация интерфейса пользователя, возможность построения и сортировки полей баз данных, содержащих символы кириллицы + +
поддержка структуры относительных данных + +
поддержка технологий пользователя/сервера + +
поддержка многопроцессорной архитектуры + +
поддержка кластерной архитектуры + +
наличие средств для создания индексов и кластеров данных для повышения скорости обработки + +
восстановление баз данных с использованием журнала транзакций + +
механизм блокировки транзакций при записи или на уровне страницы + +
поддержка ANSI SQL + +
поддержка стандарта SQL-3 (новое название – SQL99) + - +
поддержка ODBC + +
контроль целостности базы данных + +
включение/выключение утилит резервирования баз данных + +
импорт и экспорт таблиц баз данных + +
совместимость с предлагаемой операционной системоймодулей как пользователя, так и сервера + +
поддержка сетевых протоколов, используемых предлагаемыми операционными системами + +
наличие графического интерфейса пользователя для управления базой данных + +
контроль доступа к данным. Опознавание с использованием средств СУБД + +
централизованное управление пользователями + +
наличие оптимизатора запросов для оптимизации пути прохождения данных + +
поддержка больших двоичных объектов (BLOB) + +
поддержка OLAP-технологий в т.ч. специализированных средств OLAP-анализа + +
поддержка протокола VI SAN (Virtual Interface System Area Network) + +
отлаженный механизм репликации данных + +
поддержка службы единого каталога + +

 

 

Microsoft SQL Server и Oracle относятся к классу многпользовательских систем. Они развиваются и совершенствуются уже в течение многих лет и реализуются как коммерческие программные продукты. Эти СУБД можно характеризовать как основу для промышленных решений в области обработки данных. На российском рынке представлены практически все производители и поставщики промышленных СУБД, в том числе Adabas (Software AG), DB2 (IBM), Informix (Informix Software), Microsoft (Microsoft SQL Server), Oracle (Oracle Corporation), Sybase (Sybase).

Для сравнительного анализа этих систем удобна модель (магические квадраты), предложенная аналитической компанией Gartner Group (приведена выше). Из нее следует, что лидерами на рынке СУБД в настоящий момент являются компании IBM, Microsoft и Oracle. Остальные компании характеризуются Gartner Group как “нишевые игроки”.

Наиболее существенным критерием для сравнения СУБД являются эксплуатационные

характеристики, такие как надежность, высокая готовность, производительность,

масштабируемость. В таблице приводится сравнительный анализ основных СУБД по этим показателям (см.табл.1), выполненный на основе экспертных оценок. Каждому показателю была дана оценка по 10-бальной шкале, макимальная оценка 10 баллов.

Табл.1. Экспертная оценка многопользовательских СУБД

СУБД Производ. Конкурентный. доступ   По числу пользов.   Большие БД   Готовность  
Microsoft SQL Server  
Oracle

 

 

2. Целевое назначение и функции различных СУБД

Задача длительного хранения и обработки информации появилась практически сразу с появлением первых компьютеров. Стремительное развитие вычислительной техники, изменение ее принципиальной роли в жизни общества, обрушившийся бум персональных ЭВМ и, наконец, появление мощных рабочих станций и сетей ЭВМ повлияло также и на развитие технологии баз данных. Можно выделить несколько этапов в развитии данного направления в обработке данных. Однако необходимо заметить, что все же нет жестких временных ограничений в этих этапах: они плавно переходят один в другой и даже сосуществуют параллельно, но, тем не менее, выделение этих этапов позволит более четко охарактеризовать отдельные стадии развития технологии баз данных, подчеркнуть особенности, специфичные для конкретного этапа.

Первый этап развития СУБД связан с организацией баз данных на больших машинах типа IBM 360/370, ЕС-ЭВМ и мини-ЭВМ типа PDP11 (фирмы Digital Equipment Corporation - DEC), разных моделях HP (фирмы Hewlett Packard). Особенности этого этапа развития выражаются в следующем:

Все СУБД базируются на мощных мультипрограммных операционных системах (MVS, SVM, RTE, OSRV, RSX, UNIX), поэтому в основном поддерживается работа с централизованной базой данных в режиме распределенного доступа.

Функции управления распределением ресурсов в основном осуществляются операционной системой (ОС).

Поддерживаются языки низкого уровня манипулирования данными, ориентированные на навигационные методы доступа к данным.

return false">ссылка скрыта

Значительная роль отводится администрированию данных.

Проводятся серьезные работы по обоснованию и формализации реляционной модели данных, и была создана первая система (System R), реализующая идеологию реляционной модели данных.

Проводятся теоретические работы по оптимизации запросов и управлению распределенным доступом к централизованной БД, было введено понятие транзакции.

Результаты научных исследований открыто обсуждаются в печати, идет мощный поток общедоступных публикаций, касающихся всех аспектов теории и практики баз данных, и результаты теоретических исследований активно внедряются в коммерческие СУБД.

Появляются первые языки высокого уровня для работы с реляционной моделью данных. Однако отсутствуют стандарты для этих первых языков.

Следующий этап это этап персонализации. Персональные компьютеры стремительно ворвались в нашу жизнь и буквально перевернули наше представление о месте и роли вычислительной техники в жизни общества. И, конечно, это сказалось и на работе с базами данных. На этом этапе появились программы, которые назывались системами управления базами данных и позволяли хранить значительные объемы информации, они имели удобный интерфейс для заполнения данных, встроенные средства для генерации различных отчетов. Эти программы позволяли автоматизировать многие учетные функции, которые раньше велись вручную.

Особенности этого этапа следующие:

Стандартизация высокоуровневых языков манипулирования данными (разработка и внедрение стандарта SQL92 во все СУБД).

СУБД были рассчитаны на создание БД в основном с монопольным доступом. Компьютер персональный, он не был подсоединен к сети, и база данных на нем создавалась для работы одного пользователя. В редких случаях предполагалась последовательная работа нескольких пользователей, например, сначала оператор, который вводил бухгалтерские документы, а потом главбух, который определял проводки, соответствующие первичным документам.

Большинство СУБД имели развитый и удобный пользовательский интерфейс. В большинстве существовал интерактивный режим работы с БД как в рамках описания БД, так и в рамках проектирования запросов. Кроме того, большинство СУБД предлагали развитый и удобный инструментарий для разработки готовых приложений без программирования.

В настольных СУБД поддерживался только внешний уровень представления реляционной модели, то есть только внешний табличный вид структур данных.

При наличии высокоуровневых языков манипулирования данными типа реляционной алгебры и SQL в настольных СУБД поддерживались низкоуровневые языки манипулирования данными на уровне отдельных строк таблиц.

В настольных СУБД отсутствовали средства поддержки ссылочной и структурной целостности базы данных. Эти функции должны были выполнять приложения, однако скудость средств разработки приложений иногда не позволяла это сделать, и в этом случае эти функции должны были выполняться пользователем, требуя от него дополнительного контроля при вводе и изменении информации, хранящейся в БД.

Сравнительно скромные требования к аппаратному обеспечению со стороны настольных СУБД. Вполне работоспособные приложения, разработанные, например, на Clipper, работали на PC 286. В принципе, их даже трудно назвать полноценными СУБД. Яркие представители этого семейства очень широко использовавшиеся до недавнего времени СУБД Dbase (DbaseIII+, DbaseIV), FoxPro, Clipper, Paradox.

Хорошо известно, что история развивается по спирали, поэтому после процесса "персонализации" начался обратный процесс - интеграция. Множится количество локальных сетей, все больше информации передается между компьютерами, остро встает задача согласованности данных, хранящихся и обрабатывающихся в разных местах, но логически друг с другом связанных,

возникают задачи, связанные с параллельной обработкой транзакций - последовательностей операций над БД, переводящих ее из одного непротиворечивого состояния в другое непротиворечивое состояние. Успешное

решение этих задач приводит к появлению распределенных баз данных, сохраняющих все преимущества настольных СУБД и в то же время позволяющих организовать параллельную обработку информации и поддержку целостности БД. Именно к этому этапу можно отнести начало работ, связанных с концепцией объектно-ориентированных БД.

нарушающие эту структуру.

Таким образом, любая СУБД должна обеспечивать следующее:

компактное хранение данных (без дублирования);

оптимизацию доступа к данным;

логическую целостность (согласованность) данных;

универсальный интерфейс (язык или протокол), позволяющий задавать структуру данных, изменять и извлекать их неизвестному заранее алгоритму.

Обеспечение этих требований к информационным системам на уровне СУБД позволяет избегать повторения одной и той же работы при разработке программ.

 

Системы управления базами данных обладают следующими функциями:

. Управление данными во внешней памяти

. Управление буферами оперативной памяти

. Управление транзакциями.

. Журнализация

. Поддержка языков БД

Для работы с базами данных используются специальные языки, в целом называемые языками баз данных. В ранних СУБД поддерживалось несколько специализированных по своим функциям языков. Чаще всего выделялись два языка: язык определения схемы БД (SDL - Schema Definition Language) и язык манипулирования данными (DML - Data Manipulation Language). SDL служил главным образом для определения логической структуры БД, т.е. той структуры БД, какой она представляется пользователям. DML содержал набор операторов манипулирования данными, т.е. операторов, позволяющих заносить данные в БД, удалять, модифицировать или выбирать существующие данные.

В современных СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД, начиная от ее создания, и обеспечивающий базовый пользовательский интерфейс с базами данных. Стандартным языком наиболее распространенных в настоящее время реляционных СУБД является язык SQL (Structured Query Language) .