Общая характеристика проблемы выбора субд
Выбор СУБД является чрезвычайно сложной проблемой, как в научно-методическом, так и в практическом плане. Осуществить строго формализованный выбор СУБД практически невозможно.
Факторы, влияющие на выбор СУБД, можно разделить на ряд групп. Прежде всего можно выделить факторы, характеризующие саму СУБД и программные средства ее окружения. Другая группа факторов связана с инфраструктурой, сложившейся вокруг каждого из программных продуктов. Третья группа связана с особенностями предполагаемого использования СУБД.
Системы управления базами данных являются сложными языково-программными продуктами. Для их характеристики используется большое число разнообразных качественных и количественных параметров. Причем число и конкретный перечень параметров будут зависеть от класса СУБД (так, например, перечень параметров для характеристики клиент-серверных и настольных систем будет различным). Каждый из классификационных признаков БД, рассмотренных выше, оказывает влияние на выбор СУБД.
Возможны разные подходы к выбору СУБД. Часто используется упрощенный подход, заключающийся в том, что определяется класс требуемой СУБД, а затем выбирается наиболее популярная на данный момент система данного класса.
Для более обоснованного выбора СУБД необходимо иметь список СУБД-претендентов с описанием их параметров. Желательно, чтобы начальный список был достаточно полным.
Характеристики СУБД рассматриваются с разной степенью детализации в зависимости от стоящих перед проектировщиком задач.
Необходимо определить набор свойств, которым обязательно должна соответствовать выбираемая СУБД (например, обеспечивать должный уровень безопасности, функционировать в определенной операционной среде, поддерживать заданные информационные технологии и др.). Чем более широким и конкретным будет этот список требований, тем уже будет круг выделенных СУБД-претендентов для дальнейшего выбора. Но, с другой стороны, априорное определение такого набора требований может быть не совсем обоснованным.
Обычно сначала осуществляется предварительный отбор СУБД-претендентов по качественным параметрам, а только потом - по количественным. Когда говорят о количественных показателях, чаще всего речь идет о времени выполнения тех или иных операций обработки данных, хотя количественные характеристики этим не ограничиваются.
Среди количественных характеристик можно указать и требуемый объем памяти как для программного обеспечения, так и для собственно БД, и ограничения, налагаемые СУБД на максимальный объем БД, и максимальное число одновременно поддерживаемых транзакций и др. Часто используются и сложные показатели, такие, как стоимость хранения единицы информации, стоимость выполнения приведенной операции или стоимость «владения» информацией.
Количественные показатели можно определять как расчетным, так и экспериментальным путем.
При определении временных характеристик СУБД чаще всего речь идет о тестах на быстродействие. Формальное тестирование заключается в том, что на некотором заданном наборе данных выполняются некоторые операции или наборы операций. Эти операции задаются в терминах СУБД (индексация, чтение с произвольным поиском, удаление и т.п.). Чаще всего такое тестирование проводится либо самими разработчиками СУБД, либо, что лучше, независимыми тестовыми лабораториями. Опубликованные результаты такого тестирования могут помочь в выборе СУБД большому числу потенциальных пользователей.
Функциональное тестирование [37] состоит в том, что исследуются характеристики СУБД при решении определенной прикладной задачи, для реализации которой и выполняется выбор СУБД. При этом требуется реализовать заданные функции. Этот подход дает более точные результаты, однако он очень трудоемкий, что осложняет его практическое использование.
