stringtranslate.com

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

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

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

Модель

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

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

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

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

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

Таблицы размеров

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

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

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

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

Пример

Схема «звезда», используемая в примере запроса

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

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

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

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

ВЫБЕРИТЕ P. Бренд , S. Страна AS Страны , СУММА ( F. Проданные_единицы )  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 )                       ГДЕ D. Год = 1997 И P. Категория_продукта = ' тв '       ГРУППИРОВКА ПО P. Бренд , S. Страна 

Смотрите также

Ссылки

  1. ^ Дедич, Н. и Станиер К., 2016., «Оценка проблем многоязычия при разработке хранилищ данных» на 18-й Международной конференции по корпоративным информационным системам — ICEIS 2016, стр. 196.
  2. ^ DWH Schemas, 2009, архивировано из оригинала 16 июля 2010 г.
  3. ^ CJ Date, «Введение в системы баз данных (восьмое издание)», стр. 708
  4. ^ Ральф Кимбалл и Марджи Росс, Набор инструментов для хранилища данных: Полное руководство по многомерному моделированию (второе издание) , стр. 393

Внешние ссылки