Физическое проектирование

Оценить
(0 голоса)

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

Для демонстрации процесса денормализации рассмотрим следующий пример: в табл. 21.1 показаны две таблицы из базы данных sample - department и employee, которые являются нормализованными. (Более подробную информацию о нормализации данных.) Данные в этих двух таблицах могут быть представлены с использованием только одной таблицы dept_emp (табл. 21.2), которая показывает денормализованную форму данных, хранящихся В таблицах department и employee. В отличие от таблиц department и employee, которые не содержат никаких избыточных данных, таблица deptemp содержит много избыточности, потому что два столбца этой таблицы (dept_name и location) зависят от столбца dept_no.

Денормализация данных имеет два преимущества и два недостатка. Первое преимущество: если у вас есть столбец, который зависит от другого столбца таблицы (такой как столбец deptname в таблице deptemp, который зависит от столбца deptno) для данных, часто используемых в запросах, вы можете исключить операцию соединения таблиц, которая оказывает влияние на производительность приложений. Второе преимущество: денормализованные данные требуют меньшего количества таблиц, чем нормализованные данные.

 

Физическое проектирование

 

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

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


Database Engine и производительность
Блокировки для защиты одного пользователя от другого
Системные ресурсы и производительность
Дисковые операции ввода/вывода
Память

Добавить комментарий


Защитный код
Обновить

© 2018 www.serversql.ru. Все права защищены.