title background

Статьи / Азбука хранилища данных

29.08.2018 г., перевод статьи Vincent Rainardi

В этой статье я хотел бы определить термины, используемые в концепции хранилищ данных. Это глоссарий по хранилищам данных, аналогичный тому, который я составил в моей статье об инвестировании. Я расскажу о терминах, относящихся только к хранилищам данных, не затрагивая понятий, используемых в бизнес-аналитике в целом. Термины, которые определены в этом глоссарии, будут выделены жирным шрифтом.

Глоссарий состоит из 2 уровней. На первом уровне термины расположены в алфавитном порядка, а на втором – нет. Таким образом, лучший способ использовать этот глоссарий – поиск по странице (Ctrl-F).

Людям свойственно ошибаться, так что я уверен, что в этой статье есть ошибки. Я был бы признателен, если бы вы в чем-то поправили меня, используя комментарии под публикацией или написав мне на vrainardi@gmail.com.

Что меня сподвигло к написанию этой статьи: я заметил, что многие люди, работающие с хранилищем данных, часто не понимают некоторую стандартную терминологию. Даже самый простой термин, такой как «измерение», может быть для них иностранным словом. Мое намерение состоит в том, чтобы обеспечить «быстрый поиск», позволяя им понять термин примерно за 15 секунд или около того.

Почему бы им не использовать интернет-поиск или Википедию? Зачем создавать еще что-то? Потому что:

  1. Для поиска информации в интернете требуется больше времени, особенно если вы новичок.
  2. Страницы результатов поиска могут быть технически неправильными.
  3. Иногда я придерживаюсь своего мнения или предпочитаю иначе расставлять акценты.

Archiving – Архивирование: подход, заключающийся в удалении старых данных из таблицы фактов и хранении их в другой таблице (обычно в другой базе данных). Довольно часто старые данные просто удаляются и больше нигде не хранятся. Правильный термин для последнего – purging (очистка).

Corporate Information Factory (CIF) – Корпоративная информационная фабрика: нисходящий подход к хранению данных/архитектуре, созданный Биллом Инмоном в 1999 году. Сначала данные собираются (сбор данных) из операционных систем в хранилище данных и оперативные базы данных. Затем данные доставляются (доставка данных) для исследований, витрин данных, а также глубинного анализа данных. Ниже приводится определение терминов, используемых в CIF (я цитирую информацию с веб-сайта CIF). В далеком 1999 году эти понятия были революционными, отсюда мое восхищение и уважение к их автору, Биллу Инмону.

  • Operational Systems – Операционные системы: внутренние и внешние основные системы, которые поддерживают повседневные бизнес-операции. Они доступны через интерфейсы прикладных программ (API) и являются источником данных для хранилища данных и хранилища оперативных данных. (Охватывает все операционные системы, включая ERP, реляционные и унаследованные.)
  • Data Acquisition – Сбор данных: совокупность процессов по сбору, интеграции, трансформации, очистке, преобразования и загрузке исходных данных в хранилище данных и оперативного хранения данных. Реинжиниринг данных – это процесс исследования, стандартизации и предоставления чистых консолидированных данных.
  • Data Warehouse – Хранилище данных: предметно-ориентированная, вариантная по времени, неразрушимая совокупность данных, предназначенная для поддержки управленческих решений. Это система, которая получает данные из используемых компанией баз данных и других источников данных, а затем трансформирует их в структуру, подходящую для выполнения бизнес-анализа. Хранилище данных содержит долгосрочный набор данных.
  • Operational Data Store – Оперативная база данных для интеграции данных детального уровня из различных источников, собранных за некоторый промежуток времени, без хранения истории их изменения или с хранением ограниченной истории (в противоположность хранилищу данных, в котором хранятся данные за длительные периоды, а также хранится история их изменений). Обычно ODS наполняется данными в режиме, приближенному к реальному времени. Назначение ODS – оперативная отчетность по актуальным данным, еще не загруженным в хранилище данных, или иное оперативное использование.
  • Data Delivery – Доставка данных: набор процессов, которые позволяют конечным пользователям управлять представлениями хранилища данных в их витринах данных. Он включает в себя трехэтапный процесс, состоящий из фильтрации, форматирования и доставки данных из хранилища данных на витрины данных.
  • Exploration Warehouse – Хранилище исследований: архитектурная структура DSS, целью которой является обеспечение безопасного убежища для поисковой и специальной обработки. В Exploration Warehouse используется сжатие данных для обеспечения быстрого времени отклика с возможностью доступа ко всей базе данных.
  • Data Mart – Витрина данных: проблемно-ориентированное подмножество данных из хранилища (или оперативной системы), проектируемое для удовлетворения потребностей определенной группы пользователей, работающих с определенным кругом задач, и требований безопасности доступа к данным. Витрины данных позволяют решить проблемы с производительностью, так как содержат меньший объем данных, агрегируют данные заранее и используются целевой аудиторией пользователей. Витрина данных предназначена для проведения анализа данных. Источником данных для витрины данных может быть хранилище данных (зависимая витрина данных) или оперативная система (независимая витрина данных).
  • Data Mining Warehouse – Хранилище глубинного анализа данных: среда, созданная для проверки аналитиками гипотез, утверждений и предположений, разработанных в хранилище исследования. Для выполнения этих задач используются специализированные средства интеллектуального анализа данных.
  • Metadata Management – Управление метаданными: процесс управления информацией, необходимый для повышения ясности, использования и администрирования данных. Содержание описано в терминах данных о данных, деятельности и знаниях.
  • Primary Storage Management – Управление основным хранилищем: процессы, управляющие данными в хранилище данных и оперативной базе данных, а также между ними. Включает в себя процессы резервного копирования и восстановления, секционирования, суммирования, агрегирования, архивирования и извлечения данных из альтернативного хранилища.
  • Alternative Storage – Альтернативное хранилище: набор устройств, используемых для экономичного хранения необходимых, но не часто используемых данных хранилища данных и хранилища исследований. Эти устройства дешевле дисков и при необходимости обеспечивают достаточную производительность.

Current Flag – Текущий флаг: столбец в таблице измерений, который указывает, что строка содержит текущие значения (во всех столбцах атрибутов). Также известен как Active Flag (активный флаг).

Data Lake – Озеро данных: хранилище данных, построенное в файловой системе Hadoop, способное хранить структурированные и неструктурированные данные. Имеет инструменты анализа и запросов, которые позволяют пользователям объединять различные типы данных в один выходной набор данных. Data Lake — место хранения, способ организации хранения больших данных и их обработки.

Data Mining – Глубинный анализ данных. Старое значение: подход для поиска шаблона в данных с использованием определенного алгоритма (например, кластеризации деревьев решений), а затем использования этого шаблона для прогнозирования будущих значений данных. См. также: Machine Learning (машинное обучение). Новое значение: совокупность методов обнаружения в данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах бизнеса. В основе большинства инструментов Data Mining лежат две технологии: машинное обучение и визуализация (визуальное представление информации). Качество визуализации определяется возможностями графического отображения значений данных. Варьирование графического представления путем изменения цветов, форм и других элементов упрощает выявление скрытых зависимостей.

Data Warehouse – Хранилище данных: предметно-ориентированная информационная база данных, которая периодически извлекает и консолидирует структурированные данные из исходной системы в размерное или нормализованное хранилище данных. Хранилище данных обычно используется для бизнес-аналитики и отчетности.

Data Warehouse vs Data Mart – Xранилище данных в сравнении с Витриной данных: хранилище данных содержит все для обеспечения работы по нескольким направлениям, в то время как витрина данных содержит одну область данных для одной цели. Например: sales mart, customer mart. Витрина данных всегда находится в размерной модели, тогда как хранилище данных может быть в размерной модели или нормализованной модели. По сути дела, витрина данных – это облегченный вариант хранилища данных, содержащий только тематически объединенные данные.

DW 2.0 – продолжение концепции корпоративной информационной фабрики (CIF), в которой хранятся неструктурированные и структурированные данные. Концепция DW 2.0 разработана Биллом Инмоном в 2008 году.

Dimensional modelling – Многомерное моделирование: подход к моделированию данных с использованием таблиц фактов и измерений. Размерная модель также называется размерной схемой. В трехмерном моделировании существует 2 подхода: схема звезды и схема снежинки:

  • Схема звезды: только один уровень измерения.
  • Схема снежинки: более одного уровня измерения.

Dimensional Data Warehouse – Многомерное хранилище данных: хранилище данных, состоящее из таблиц фактов и измерений. Первичный ключ таблицы измерений становится внешним ключом в таблице фактов. Многомерное хранилище данных может иметь схему звезды или схему снежинки.

  • Fact Table – Таблица фактов: таблица, содержащая бизнес-события или данные транзакций (чувствительные ко времени), такие как заказы и сальдо счетов. См. также: типы таблиц фактов.
  • Dimension Table – Таблица измерений: таблица в структуре многомерной базы данных, которая содержит атрибуты событий, сохраненных в таблице фактов. Атрибуты представляют собой текстовые или иные описания, логически объединенные в одно целое.
  • Bridge Table – Таблица-мост: является промежуточной таблицей, которая несет на себе функцию управления ситуацией, связанной с реализацией многозначных функциональных зависимостей в данных. Определяет отношение «многие ко многим» между двумя измерениями.
  • Measure – Мера: столбец в таблице фактов, содержащий числа, которые мы хотим проанализировать. Например: сумма продаж по городу. Сумма продаж является мерой.
  • Attribute – Атрибут: столбец в таблице измерений, который мы можем использовать для анализа чисел. Например: сумма продаж по городу. Город является атрибутом.
  • Surrogate Key – Суррогатный ключ: столбец первичного ключа таблицы измерения. Это будет столбец внешнего ключа в таблице фактов.
  • Business Key – Бизнес-ключ: первичный ключ таблицы-источника в системе транзакций. Этот ключ становится идентификатором в таблице измерений.

Enterprise Data Warehouse (EDW) – Корпоративное хранилище данных: нормализованная база данных, содержащая данные из нескольких отделов (более одного подразделения) и полученная из нескольких исходных систем. EDW хранит исторические транзакционные данные. EDW был впервые разработан Биллом Инмоном. См. также: Нормализованное хранилище данных.

ETL (Extract Load Transform) – загрузка данных из исходной системы в хранилище данных. Один из основных процессов в управлении хранилищами данных, который включает в себя:

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

Fact Table types – Типы таблиц фактов: существует 3 типа таблиц фактов:

  • Transaction Fact Table – Таблица фактов транзакций: таблица фактов, в которой хранится значение меры для каждого бизнес-события на момент его возникновения. В таблице фактов транзакций каждое бизнес-событие хранится только один раз в виде строки.
  • Periodic Snapshot Fact Table – Периодическая таблица фактов моментальных снимков: таблица фактов, содержащая значения каждой меры, выполненной с регулярным интервалом. В периодической таблице фактов моментальных снимков каждое бизнес-событие хранится несколько раз. Периодическая Таблица фактов моментальных снимков также называется таблицей фактов моментальных снимков. См. также: таблица фактов моментальных снимков (Snapshot Fact Table).
  • Accumulative Snapshot Fact Table – Сводная таблица фактов моментального снимка: таблица фактов, в которой время и состояние из разных точек во времени помещаются как разные столбцы в одной строке. Строка описывает одного конкретного клиента.

Machine Learning – Машинное обучение: подход для поиска закономерностей в данных с использованием определенных алгоритмов, а затем использование этого шаблона для прогнозирования будущих значений. На мой взгляд, машинное обучение – это новый термин для старого значения интеллектуального анализа данных (Data Mining).

MPP Server (Massively Parallel Processing) – MPP сервер (массовая параллельная обработка): тип сервера баз данных, где запрос разбивается на несколько потоков. Каждый поток выполняется параллельно в разных узлах. Выходные данные из нескольких потоков затем объединяются в один и передаются обратно пользователю. Эта архитектура также известна как архитектура Shared Nothing (Ничего не разделяется). Примерами сервера MPP являются Teradata, Netezza, Azure SQL Data Warehouse и Greenplum.

Normalized Data Warehouse – Нормализованное хранилище данных: хранилище данных, которое состоит из таблиц транзакций, основных таблиц, таблиц истории и вспомогательных таблиц в первой, второй или третьей нормальной форме.

  • Transaction table – Таблица транзакций: таблица, содержащая бизнес-события или данные транзакции (данные с учетом времени), такие как заказы и балансы счетов.
  • Master table – Главная таблица: таблица, содержащая «статические данные» (не зависящие от времени), такие как клиент и продукт.
  • History table – Таблица истории: таблица, содержащая «статические данные» (не зависящие от времени), такие как клиент и продукт.
  • Auxiliary table – Вспомогательная таблица: таблица, которая содержит данные, которые описывают коды в главной таблице. Например: тип клиента и код валюты.
  • Bridge table – Таблица-мост: таблица, которая реализует отношения «многие ко многим» между таблицей транзакций и главной таблицей или между двумя главными таблицами.

OLAP (Online Analytical Processing): интерактивный анализ данных – процесс опроса многомерной базы данных для изучения данных и поиска закономерностей. См. Раздел многомерная база данных (multidimensional database).

OLAP Cube – многомерный массив данных, как правило, разреженный и долговременно хранимый, используемый в OLAP. Может быть реализован на основе универсальных реляционных СУБД или специализированным программным обеспечением.

Operational Data Store (ODS) – Хранилище оперативных данных: нормализованная база данных, содержащая данные транзакций из нескольких исходных систем (точка интеграции). Он похож на Enterprise Data Warehouse (EDW), но содержит только текущие значения атрибутов.

Multidimensional Database – Многомерная база данных (цитируется из моей книги «Построение хранилища данных»): форма базы данных, где данные хранятся в ячейках, а положение каждой ячейки определяется рядом иерархий, называемых измерениями. Структура хранит агрегированные значения, а также базовые значения, как правило, в сжатом формате многомерного массива.

Slowly Changing Dimension (SCD) – Медленно меняющиеся измерения (SCD): способ сохранения исторических/старых значений атрибутов в таблицах измерений. Существует 5 типов SCD:

  • SCD Type 0: атрибут является статическим, и значения никогда не изменяются.
  • SCD Type 1: старые значения атрибутов не перезаписываются новым значением атрибута. Старые значения не сохраняются, сохраняется только самое последнее значение.
  • SCD Type 2: старые значения атрибутов хранятся в строке, отличной от нового значения атрибута. В таблице измерений каждая версия значения атрибута хранится в виде отдельной строки. Строка, содержащая последнее значение, помечается специальным знаком.
  • SCD Type 3: старые значения атрибутов хранятся в таблице измерений в столбце. Сохраняются только последние два-три значения. SCD Type 3 обычно используется, когда большинство строк в таблице измерений одновременно меняют свои значения.
  • SCD Type 4: (как определено в SQL 2016, ссылка) старые значения атрибутов хранятся в другой таблице, называемой таблицей истории. В таблице измерений хранится только последнее значение.

Snapshot Fact Table – Таблица фактов моментальных снимков: таблица фактов, которая содержит значения каждой меры в определенный момент времени. Например, баланс каждого счета в конце дня. Существуют две таблицы фактов моментальных снимков: периодические и накопительные, но когда говорят: «Таблица фактов моментальных снимков», то обычно это означает периодические. См. также: Типы таблиц фактов (Fact Table types).

Daily Snapshot – Ежедневный снимок: содержит значение каждой меры в конце каждого дня.

Weekly Snapshot – Недельный снимок: содержит значение каждой меры в конце каждой недели.

Monthly Snapshot – Ежемесячный снимок: содержит значение каждой меры в конце каждого месяца.

Staging table – Промежуточная таблица: таблица в хранилище данных, содержащая необработанные данные из исходной системы. Эти необработанные данные будут обработаны и загружены в таблицу фактов и таблицы измерений.