Выбор реляционной СУБД

 

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

При появлении персональных компьютеров начался бурный рост популярности настольных реляционных СУБД (dBase, FoxPro, Paradox), а затем их сетевых многопользовательских версий, позволяющих обрабатывать данные, находящиеся в общедоступном месте в сети. В многопользовательских настольных СУБД появились механизмы блокировок частей данных, что позволило реализовать обращение к одним и тем же данным нескольких пользователей одновременно. Их недостатки (низкая производительность и степень защиты данных, ограниченное число пользователей) отсутствуют в СУБД, появившихся на следующих этапах развития данного программного продукта. Это, так называемые, серверные СУБД.

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

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

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

Решить эту задачу непросто:

— во—первых, требования к СУБД, по мере освоения пользователями её функциональных особенностей, меняются – требуются новые возможности. Так, например, сначала была реализована локальная версия БД, затем потребовалась сетевая. Либо потребовалось увеличение скорости обработки данных, наиболее полная поддержка ограничения целостности данных, определяемых предметной областью и т.п.;

— во—вторых, СУБД имеют большое число параметров, их трудно сравнивать;

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

Каждый программный продукт, и СУБД в частности, может сопровождать информация следующего вида:

— сведения разработчиков и рекламная информация продавцов;

— информация, предоставляемая на различных форумах конечными пользователями, разработчиками программного обеспечения для БД, администраторами, имеющих опыт работы с БД;

— информация профессиональных аналитиков и экспертов.

Выбор СУБД удобно проводить в 3 этапа.

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

2 Этап оценки технических характеристик выбранных систем более детально.

3 Этап оценки производительности оставшихся продуктов по различным критериям для принятия окончательного решения.

К показателям пригодности относятся следующие характеристики СУБД:

— полнота функциональности СУБД (развитый интерфейс пользователя, позволяющий осуществлять различные операции с БД: создание БД; создание и модификация объектов БД; ввод, обновление информации; реализация запросов и вывод результатов на печать);

— возможность реализации сервера БД;

— наличие встроенных средств разработки программ для работы с БД (клиентских приложений);

— поддержка объектов БД, позволяющих хранить логику предметной области и логику обработки данных;

— требования к квалификации пользователей;

— удобство и простота использования;

— сложность процедуры установки;

— сложность интерфейса пользователя;

— простота выполнения обычных операций с БД;

— наличие подсказок помощи;

— модель представления данных;

— возможность обеспечения целостности данных на уровне СУБД;

— автоматическая генерация кода пользовательского приложения, разрабатываемого в среде СУБД визуально;

— наличие средств автоматизации проектирования БД;

— качество средств защиты и контроля данных (поддержка внутренних ограничений модели данных и ограничений предметной области; средства для реализации функций резервного копирования и восстановления БД);

— поддержка сетевых протоколов, обеспечивающих работу СУБД в различных сетях;

— наличие средств разграничения прав пользователя;

— поддержка стандартных интерфейсов: ODBC, SQL и др.;

— фирма – разработчик;

— наличие документации или книг на рынке;

— высокая уверенность в появлении новой версии;

— стоимость.

К техническим характеристикам СУБД относятся:

— операционная система, под управлением которой работает СУБД;

— потребность в оперативной памяти

— ограничение на максимальный объем БД;

— перечень объектов БД, поддерживаемых СУБД;

— ограничение на количество одновременных подключений пользователей;

— ограничения на операции над данными;

— максимальные размеры поля таблицы, числа полей в таблице, размер строки, количества строк в таблице; число таблиц, которые можно обрабатывать одновременно;

— средства поддержки ограничений целостности БД;

— возможности средств формулировки и выполнения запросов (навигационная обработка, работа с языками запросов QBE, SQL);

— возможность сохранения запросов в БД;

— поддержка многопользовательской работы с БД (виды блокировок, средства обработки транзакций);

— наличие различных генераторов (интерфейса, отчетов, выполняемых модулей);

— наличие средств импорта и экспорт данных, в частности в web—формат.

Задача определения производительности СУБД является достаточно сложной. Решить её могут только высокопрофессиональные специалисты, владеющие методиками измерения производительности программных продуктов. Одна из методик – это использование тестов TPC, разработанных Transaction processing Performance Council — Советом по производительности систем обработки транзакций; тесты, не относящиеся к семейству TCP — Wisconsin Benchmark и AS3AP.

Производительность СУБД оценивается следующими характеристиками:

— временем выполнения запросов;

— скоростью поиска информации в неиндексированных полях;

— временем выполнения операций импортирования базы данных из других форматов;

— скоростью создания индексов и выполнения таких массовых операций, как обновление, вставка, удаление данных;

— максимальным числом параллельных обращений к данным в многопользовательском режиме;

— временем генерации отчета.

На производительность СУБД также оказывает большое влияние качество проекта БД.

Сведения о некоторых наиболее популярных СУБД приведены в таблице 25.

 

Таблица 25 – Современные СУБД

Продукт Фирма производитель URL
Настольные, для создания локальных БД
Visual dBase dBase, Inc. http://www.dbase2000.com
Paradox Corel http://www.corel.com
Microsoft Access Microsoft http://www.microsoft.com
Microsoft FoxPro
Microsoft Visual FoxPro
Серверные СУБД
Oracle Oracle Corp http://www.oracle.com
Microsoft SQL Server Microsoft http://www.microsoft.com
Informix Informix http://www.informix.com
Sybase Sybase http://www.sybase.com
IBM DB2 IBM http://www—4.ibm.com