Когда модели данных типа «звезда» подходят для хранилища данных?
Автор публикации Bill Inmon
Дата публикации оригинала 2007-07-26
Перевод: Олег Кузьменко
Материал опубликован на сайте B-Eye Network
Из-за своей негибкости модели данных типа «звезда» в большинстве случаев не служат хорошим основанием для хранилища данных, но для этого правила есть исключения.
Модели данных типа «звезда» без сомнения хороши для витрин данных. Когда у вас есть группа людей, которые хотят иметь доступ к тем же самым (или очень схожим) данным тем же самым (или очень схожим) способом, тогда эти модели работают действительно хорошо. Они также работают хорошо в тех случаях, когда данные надо просуммировать или агрегировать, и когда требуется очень быстрый доступ к данным.
Но с моделями типа «звезда» есть одна проблема - они негибкие. Когда изменяются требования, эти модели должны быть также изменены. В некоторых случаях, они могут быть модифицированы, но в других случаях их приходится существенно перерабатывать и проектировать заново при изменении требований. Из-за своей негибкости модели данных типа «звезда» обычно не являются хорошим основанием для хранилища данных.
Тем не менее, в нескольких случаях схемы «звезда» могут быть реализованы в хранилище данных с небольшим количеством физического и морального устаревания в будущем.
Первая ситуация возникает тогда, когда модели типа «звезда» содержат исключительно семантически стабильные данные. Семантически стабильные данные появляются там, где они являются одними и теми же из года в год. Возьмите данные о продажах. Данные о продажах состоят из следующих основных элементов:
- Дата операции продажи
- Сумма продажи
- Единица проданного товара
- Покупатель
- Скидки
- Отгрузка и т.д.
Используя такие базовые элементы данных, мы могли бы говорить о торговле в 18-м веке в американских колониях или же о торговле в 2010 году. Мы могли бы говорить о продажах кабриолетов или продажах автомобилей Ferrari. Эта базовая информация носит практически фундаментальный характер. Можно с уверенностью поместить эти элементы данных в модель данных типа «звезда». Запросто.
Второй частный случай, при котором использование схемы «звезда» в хранилище данных может, что называется, сойти нам с рук, возникает тогда, когда мы можем легко и быстро перестроить хранилище данных - там, где мы можем взять исходную структуру хранилища и быстро и автоматически видоизменить ее. Инструменты для этого действительно существуют. Например, Kalido является наилучшим в этом классе средством. Когда у вас есть инструменты, которые разработаны для управления изменениями, тогда вы можете позволить себе использовать схему «звезда».
Существует и третий случай, когда может быть применена модель данных типа «звезда». Это когда схема «звезда» содержит данные на самом детальном уровне, и когда данные разделены согласно правилам нормализации. В таком случае, признается, что схема «звезда» имеет сильное (подозрительно сильное!) сходство с нормализованной структурой. По сути дела, в этом случае модель данных типа «звезда» была сведена к 3-й нормальной форме, и проектирование на основе схемы «звезда» равносильно проектированию с использованием реляционного подхода.
Для удобства отслеживания новых публикаций рекомендуем подписаться на рассылку или на канал RSS.