Схема звезды


В вычислительной технике звездообразная схема или звездообразная модель — это самый простой стиль витрины данных схемы и подход, наиболее широко используемый для разработки хранилищ данных и многомерных витрин данных. [1] Звездообразная схема состоит из одной или нескольких таблиц фактов, ссылающихся на любое количество таблиц измерений . Схема «звезда» является важным частным случаем схемы «снежинка» и более эффективна для обработки более простых запросов. [2]
Звездная схема получила свое название от физической модели. [3] сходство с формой звезды с таблицей фактов в центре и окружающими ее таблицами измерений, представляющими точки звезды.
Модель [ править ]
Звездообразная схема разделяет данные бизнес-процессов на факты, которые содержат измеримые количественные данные о бизнесе, и измерения, которые являются описательными атрибутами, связанными с фактическими данными. Примеры фактических данных включают цену продажи, объем продажи, а также измерения времени, расстояния, скорости и веса. Примеры атрибутов связанных измерений включают модели продуктов, цвета продуктов, размеры продуктов, географическое расположение и имена продавцов.
Звездчатую схему, имеющую много измерений, иногда называют схемой-сороконожкой . [4] Наличие измерений всего лишь с несколькими атрибутами, хотя и проще в обслуживании, приводит к запросам со многими соединениями таблиц и делает звездообразную схему менее простой в использовании.
Таблицы фактов [ править ]
Таблицы фактов записывают измерения или показатели для конкретного события. Таблицы фактов обычно состоят из числовых значений и внешних ключей к многомерным данным, в которых хранится описательная информация. [4] Таблицы фактов разработаны с низким уровнем однородной детализации (называемой «детализацией» или « зернистостью »), что означает, что факты могут записывать события на очень атомарном уровне. Это может привести к накоплению большого количества записей в таблице фактов с течением времени. Таблицы фактов относятся к одному из трех типов:
- Таблицы фактов транзакций записывают факты о конкретном событии (например, о продажах).
- Таблицы фактов моментальных снимков записывают факты на определенный момент времени (например, сведения об учетной записи на конец месяца).
- Таблицы с накопительными моментальными снимками записывают совокупные факты в определенный момент времени (например, общий объем продаж продукта за месяц с начала года).
Таблицам фактов обычно присваивается суррогатный ключ , чтобы обеспечить уникальную идентификацию каждой строки. Этот ключ является простым первичным ключом.
Таблицы размеров [ править ]
Таблицы измерений обычно содержат относительно небольшое количество записей по сравнению с таблицами фактов, но каждая запись может иметь очень большое количество атрибутов для описания данных фактов. Измерения могут определять самые разные характеристики, но некоторые из наиболее распространенных атрибутов, определяемых таблицами измерений, включают:
- Таблицы измерений времени описывают время на самом низком уровне детализации времени, для которого события записываются в звездообразной схеме.
- Таблицы географических измерений описывают данные о местоположении, например страну, штат или город.
- Таблицы размеров продукта описывают продукты
- Таблицы измерений сотрудников описывают сотрудников, например продавцов.
- Таблицы измерений диапазона описывают диапазоны времени, долларовых значений или других измеримых величин для упрощения отчетности.
Таблицам измерений обычно назначается суррогатный первичный ключ , обычно это целочисленный тип данных с одним столбцом, сопоставленный с комбинацией атрибутов измерения, которые образуют естественный ключ.
Преимущества [ править ]
Звездообразные схемы денормализованы , что означает, что типичные правила нормализации, применяемые к транзакционным реляционным базам данных, смягчаются во время проектирования и реализации звездообразной схемы. Преимущества денормализации звездообразной схемы:
- Более простые запросы — логика соединения звездообразной схемы обычно проще, чем логика соединения, необходимая для получения данных из высоконормализованной транзакционной схемы.
- Упрощенная логика бизнес-отчетности. По сравнению со схемами с высокой степенью нормализации звездообразная схема упрощает общую логику бизнес-отчетности, например, отчетность за период и отчетность по состоянию.
- Повышение производительности запросов — звездообразные схемы могут обеспечить повышение производительности для приложений отчетности только для чтения по сравнению со схемами с высокой степенью нормализации .
- Быстрая агрегация. Более простые запросы к звездообразной схеме могут привести к повышению производительности операций агрегации.
- Подача кубов — звездообразные схемы используются всеми системами OLAP создания собственных кубов OLAP для эффективного ; Фактически, большинство основных OLAP-систем предоставляют режим работы ROLAP , который может использовать звездообразную схему непосредственно в качестве источника без создания собственной структуры куба.
Пример [ править ]

Рассмотрим базу данных продаж, возможно, из сети магазинов, классифицированную по дате, магазину и продукту. Изображение схемы справа — это версия схемы «звезда» образца схемы, представленного в статье о схеме «снежинка» .
Fact_Sales
это таблица фактов и есть три таблицы измерений Dim_Date
, Dim_Store
и Dim_Product
.
Каждая таблица измерений имеет первичный ключ. Id
столбец, относящийся к одному из столбцов (в примере схемы представленных как строки) Fact_Sales
трехстолбцовый (составной) первичный ключ таблицы ( Date_Id
, Store_Id
, Product_Id
). Непервичный ключ Units_Sold
Столбец таблицы фактов в этом примере представляет собой меру или показатель, который можно использовать в вычислениях и анализе. Столбцы непервичных ключей таблиц измерений представляют дополнительные атрибуты измерений (например, Year
принадлежащий Dim_Date
измерение).
Например, следующий запрос дает ответ на то, сколько телевизоров было продано для каждой марки и страны в 1997 году:
SELECT
P.Brand,
S.Country AS Countries,
SUM(F.Units_Sold)
FROM Fact_Sales F
INNER JOIN Dim_Date D ON (F.Date_Id = D.Id)
INNER JOIN Dim_Store S ON (F.Store_Id = S.Id)
INNER JOIN Dim_Product P ON (F.Product_Id = P.Id)
WHERE D.Year = 1997 AND P.Product_Category = 'tv'
GROUP BY
P.Brand,
S.Country
См. также [ править ]
- Хранилище данных
- Созвездие фактов
- Аналитическая обработка онлайн
- Схема обратной звезды
- Схема снежинки
Ссылки [ править ]
- ^ Дедич Н. и Станье К., 2016 г., «Оценка проблем многоязычия при разработке хранилищ данных» на 18-й Международной конференции по корпоративным информационным системам - ICEIS 2016, стр. 196.
- ^ Схемы DWH , 2009 г., заархивировано из оригинала 16 июля 2010 г.
- ^ », стр. 708
- ^ Jump up to: Перейти обратно: а б Ральф Кимбалл и Марджи Росс, Набор инструментов для хранилищ данных: Полное руководство по многомерному моделированию (второе издание) , стр. 393