Схема «звезда»

редактировать

В вычислениях схема «звезда» - это самый простой стиль данных mart schema - подход, наиболее широко используемый для разработки хранилищ данных и размерных витрин данных. Схема «звезда» состоит из одной или нескольких таблиц фактов, ссылающихся на любое количество таблиц измерений. Схема «звезда» является важным частным случаем схемы снежинки и более эффективна для обработки более простых запросов.

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

Содержание
  • 1 Модель
    • 1.1 Таблицы фактов
    • 1.2 Таблицы размеров
  • 2 Преимущества
  • 3 Недостатки
  • 4 Пример
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Модель

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

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

Таблицы фактов

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

  • Таблицы фактов транзакций записывают факты о конкретном событии (например, событиях продаж)
  • Таблицы фактов моментальных снимков записывают факты в заданный момент времени (например, детали счета в конце месяца)
  • Накапливаемые таблицы моментальных снимков записывают совокупные факты в заданный момент времени (например, общие продажи продукта за месяц до текущей даты)

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

Таблицы измерений

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

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

Таблицам измерений обычно назначается суррогатный первичный ключ, обычно это целочисленный тип данных с одним столбцом, сопоставленный с комбинацией атрибуты измерения, образующие естественный ключ.

Преимущества

Звездообразные схемы денормализованы, что означает, что типичные правила нормализации, применяемые к транзакционным реляционным базам данных, смягчаются во время проектирования и реализации звездообразной схемы. Преимущества денормализации звездообразной схемы:

  • Упрощенные запросы - логика соединения звездообразной схемы обычно проще, чем логика соединения, необходимая для извлечения данных из сильно нормализованной схемы транзакций.
  • Упрощенная логика бизнес-отчетности - По сравнению с сильно нормализованными схемами звездная схема упрощает общую логику бизнес-отчетности, такую ​​как отчет за период и отчет по состоянию на дату.
  • Повышение производительности запросов - звездообразные схемы могут повысить производительность для отчетов только для чтения приложений по сравнению с сильно нормализованными схемами.
  • Быстрые агрегаты - более простые запросы к схеме типа "звезда" могут привести к повышению производительности операций агрегирования.
  • Кормление кубов - схемы типа "звезда" используются всеми системами OLAP для эффективного построения проприетарных кубов OLAP ; Фактически, большинство основных OLAP-систем предоставляют режим работы ROLAP, который может использовать звездообразную схему непосредственно в качестве источника без создания собственной структуры куба.
Недостатки

Главный недостаток звездная схема заключается в том, что она не так гибка с точки зрения аналитических потребностей, как нормализованная модель данных. Нормализованные модели позволяют выполнять любой аналитический запрос, если он следует бизнес-логике, определенной в модели. Звездообразные схемы, как правило, больше ориентированы на конкретное представление данных, что не позволяет проводить более сложную аналитику. Звездообразные схемы нелегко поддерживать отношения «многие ко многим» между бизнес-объектами. Обычно эти отношения упрощаются в звездообразной схеме, чтобы соответствовать простой размерной модели.

Другой недостаток заключается в том, что целостность данных не обеспечивается должным образом из-за его денормализованного состояния. Одноразовые вставки и обновления могут привести к аномалиям данных, которых призваны избежать нормализованные схемы. Вообще говоря, звездообразные схемы загружаются строго контролируемым образом с помощью пакетной обработки или почти реального времени "тонкой подачи", чтобы компенсировать отсутствие защиты, обеспечиваемой нормализацией.

Пример
Звездообразная схема, используемая в примере запрос.

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

Fact_Sales- это таблица фактов, и есть три таблицы измерений Dim_Date, Dim_Storeи Dim_Product.

Каждая таблица измерений имеет первичный ключ на своем Idстолбец, относящийся к одному из столбцов (рассматриваемых как строки в схеме примера) трехколоночного (составного) первичного ключа таблицы Fact_Sales(Date_Id, Store_Id, Product_Id). Столбец непервичного ключа Units_Soldтаблицы фактов в этом примере представляет меру или метрику, которые можно использовать в вычислениях и анализе. Столбцы непервичных ключей таблиц измерений представляют дополнительные атрибуты измерений (например, Годизмерения Dim_Date).

Например, следующий запрос отвечает, сколько телевизоров было продано для каждой марки и страны в 1997 г.:

SELECT P.Brand, S.Country AS, Страны, SUM (F.Units_Sold) FROM Fact_Sales F ВНУТРЕННЕЕ СОЕДИНЕНИЕ 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 И P.Product_Category = 'tv' GROUP BY P.Brand, S.Country
См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-09 08:25:11
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте