Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску
Пример звездообразной схемы ; Центральная таблица - это таблица фактов

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

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

Пример [ править ]

Если бизнес-процесс - это продажи, то соответствующая таблица фактов обычно будет содержать столбцы, представляющие как необработанные факты, так и агрегированные данные в таких строках, как:

  • 12 000 долларов США , это «продажи магазина в Нью-Йорке на 15 января 2005 года».
  • 34 000 долларов США , это «продажи магазина в Лос-Анджелесе за 15 января 2005 года».
  • 22 000 долларов США , это «продажи для магазина в Нью-Йорке на 16 января 2005 года».
  • 21 000 долларов , что соответствует «среднему дневному объему продаж магазина в Лос-Анджелесе в январе 2005 года».
  • 65 000 долларов , что соответствует «среднему дневному объему продаж магазина в Лос-Анджелесе в феврале 2005 года».
  • 33 000 долларов , что соответствует «среднему дневному объему продаж магазина в Лос-Анджелесе в 2005 году».

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

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

Типы мер [ править ]

  • Аддитивные - меры, которые могут быть добавлены по любому измерению.
  • Неаддитивные - меры, которые нельзя добавить ни по одному измерению.
  • Полусаддитивные - меры, которые могут быть добавлены по некоторым измерениям.

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

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

В реальном мире можно иметь таблицу фактов, не содержащую мер или фактов. Эти таблицы называются «таблицами фактов без фактов» или « таблицами соединений ».

В таблицах неподтвержденного факта могут быть использованы для моделирования многих ко многим отношений или для захвата временных меток событий. [1]

Типы таблиц фактов [ править ]

Все таблицы фактов характеризуют четыре основных события измерения. [2]

Транзакционный
Таблица транзакций - самая простая и фундаментальная. Степень зерна, связанная с таблицей фактов транзакции, обычно определяется как «одна строка на строку в транзакции», например, каждая строка в квитанции. Обычно таблица фактов транзакций содержит данные самого детализированного уровня, поэтому с ней связано большое количество измерений .
Периодические снимки
Периодический снимок, как следует из названия, представляет собой «картину момента», где моментом может быть любой определенный период времени, например, сводка результатов работы продавца за предыдущий месяц. Таблица периодических снимков зависит от таблицы транзакций, так как ей необходимы подробные данные, содержащиеся в таблице фактов транзакций, чтобы обеспечить выбранный результат производительности.
Накопление снимков
Этот тип таблицы фактов используется для отображения активности процесса с четко определенным началом и концом, например, обработка заказа. Заказ проходит через определенные этапы, пока не будет полностью обработан. По мере выполнения шагов по выполнению заказа соответствующая строка в таблице фактов обновляется. Накопленная таблица моментальных снимков часто имеет несколько столбцов с датами, каждый из которых представляет веху в процессе. Следовательно, важно иметь запись в связанном измерении даты, которая представляет неизвестную дату, поскольку многие даты этапов неизвестны на момент создания строки.
Временные снимки
Применяя теорию темпоральных баз данных и методы моделирования , таблица фактов временных снимков [3] позволяет иметь эквивалент ежедневных снимков, фактически не имея ежедневных снимков. Он вводит концепцию временных интервалов в таблицу фактов, позволяя сэкономить много места, оптимизировать производительность, позволяя конечному пользователю иметь логический эквивалент «картины момента», которая его интересует.

Этапы создания таблицы фактов [ править ]

  • Определите бизнес-процесс для анализа (например, продажи).
  • Определите показатели фактов (доллар продаж), задав такие вопросы, как «какое количество X имеет отношение к бизнес-процессу?», Заменяя X различными вариантами, которые имеют смысл в контексте бизнеса.
  • Определите измерения для фактов (измерение продукта, измерение местоположения, измерение времени, измерение организации), задавая вопросы, которые имеют смысл в контексте бизнеса, например, «анализировать по X», где X заменяется объектом тестирования.
  • Перечислите столбцы, описывающие каждое измерение (название региона, название филиала, название бизнес-единицы).
  • Определите самый низкий уровень (степень детализации) сводки в таблице фактов (например, в долларах продаж).

Альтернативный подход - это четырехэтапный процесс проектирования, описанный в Кимбалле [1]: выбор бизнес-процесса, декларирование структуры, определение размеров, идентификация фактов.

Ссылки [ править ]

  1. ^ a b c Кимбалл и Росс - Инструментарий хранилища данных, 2-е изд. [Wiley 2002]
  2. Перейти ↑ Kimball, Ralph (2008). Набор средств жизненного цикла хранилища данных, 2-е издание . Вайли. ISBN 978-0-470-14977-5.
  3. ^ Давиде, Маури. «Таблица фактов временного снимка» .