Тема13. Физическая модель хранилища данных: учетвлияния транзакций, денормализация таблиц

Аннотация. В настоящей лекции рассматриваются вопросы учета влияния транзакции при проектировании физической структуры хранилища данных и принципы денормализации на уровне моделирования логической и физической моделей данных.

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

Цель лекции

Изучив материал настоящей лекции, обучающийся будет знать:

И научится:

Литература: [37], [48], [54].

В настоящей лекции мы рассмотрели процесс денормализации таблиц физической БД на уровне моделирования физической модели данных, как для БД, так и для ХД. Денормализация представляет собой набор методов настройки физической модели БД, используемой для реализации ХД, с целью удовлетворения требований к производительности ХД. Эти методы представляют собой набор рекомендаций и эвристических правил по изменению физической структуры БД, которая была получена в результате первой итерации создания физической модели данных ХД. Применение этих методик носит рекомендательный характер. В этой лекции были описаны различные типы денормализации и методы ее реализации. Кроме того, было рассмотрено, как при денормализации обеспечить целостность данных, не прибегая к созданию дополнительного кода. Таким образом, под денормализацией понимают процесс достижения компромиссов в нормализованных таблицах посредством намеренного введения избыточности в целях увеличения производительности. В большинстве случаев необходимость денормализации становится очевидной лишь на этапе проектирования приложений ХД или его эксплуатации. Другими словами, нельзя принять решение о денормализации на основании одной только модели данных. Обычно стараются найти в приложениях ХД критичные процессы и принимать решения о денормализации в основном в пользу этих процессов. Критичные процессы, как правило, определяют по высокой частоте, большому объему, высокой изменчивости или явному приоритету. Качественное описание транзакций БД позволяет определить наличие таких критических процессов.

Контрольные вопросы:

  1. Что понимается под транзакцией базой данных?
  2. Как можно описать транзакции базы данных?
  3. Основные типы денормализации таблиц базы данных?