Это одна из самых сложных задач проектирования схемы базы данных, для решения которой привлекаются администраторы баз данных. Универсальных решений, которые подошли бы для любой СУБД, не существует, так каждый производитель СУБД создает свой способ хранения и доступа к данным, считает его лучшим и очень им гордится. На проектирование схемы базы данных влияют следующие параметры, общие для большинства СУБД:
- размер табличных пространств для хранения таблиц;
- размер табличных пространств для хранения индексов;
- размер табличных пространств для хранения BLOB;
- кластеры и их параметры;
- размер словаря данных, включая код всех хранимых процедур, функций, триггеров, пакетов, статического SQL (реализован только в DB2);
- управляющие файлы;
- файлы журнала;
- интенсивность потока запросов, модифицирующих данные и индексы;
- фалы временных табличных пространств (для хранения временных таблиц, которые строятся, например, при выполнении group by, а также других временных объектов);
- интенсивность потока запросов, инициирующих создание временных таблиц;
- потоки транзакций read-write, read-only, объем модифицируемых и считываемых ими данных, характеристики параллельной работы транзакций (какие и сколько их);
- количество приложений, работающих параллельно с базой данных;
- количество соединений с базой данных для каждого приложения;
- файлы параметров старта ядра СУБД;
- загрузочные модули ядра СУБД и утилиты СУБД;
- входные и выходные данные, генерируемые пользовательскими программами;
- скрипты управления СУБД.
Постарайтесь описать эти параметры хотя бы в общем виде, обсудите все вопросы с администратором баз данных и внимательно выслушайте его рекомендации. Если же его мнение может расходится с вашим представлением о том, как должна работать СУБД, попытайтесь понять его аргументы и запомните, с какими особенностями СУБД это связано. Все данные следует отразить в журнале проектирования. Следует иметь в виду, что многие нюансы размещения объектов данных и конфигурации сервера баз данных не могут быть учтены на этапе проектирования, так как требует полномасштабного тестирования. Конечно, избежать некоторых ошибок проектирования можно, но приготовьтесь к тому, что схема базы данных будет меняться и на этапе реализации, причем неоднократно.
Похожие записи
No user прокомментировали сообщение
Оставить комментарий