Учебники

Хранилище данных — Обзор

Хранилище данных состоит из данных из нескольких разнородных источников данных и используется для аналитической отчетности и принятия решений. Хранилище данных — это центральное место, где хранятся данные из разных источников данных и приложений.

Термин «Хранилище данных» был впервые изобретен Биллом Инмом в 1990 году. Хранилище данных всегда хранится отдельно от оперативной базы данных.

Данные в системе DW загружаются из операционных операционных систем, таких как —

  • Продажи
  • маркетинг
  • HR
  • СКМ и др.

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

Хранилище данных используется для составления отчетов и анализа информации и хранит как исторические, так и текущие данные. Данные в системе DW используются для аналитической отчетности, которая впоследствии используется бизнес-аналитиками, менеджерами по продажам или сотрудниками отдела знаний для принятия решений.

Хранилище данных

На изображении выше видно, что данные поступают из нескольких разнородных источников данных в хранилище данных. Общие источники данных для хранилища данных включают в себя:

  • Оперативные базы данных
  • Приложения SAP и не-SAP
  • Плоские файлы (xls, csv, txt файлы)

Доступ к данным в хранилище данных осуществляется пользователями BI (Business Intelligence) для аналитической отчетности, интеллектуального анализа данных и анализа. Это используется для принятия решений бизнес-пользователями, менеджером по продажам, аналитиками для определения будущей стратегии.

Особенности хранилища данных

Это центральное хранилище данных, в котором данные хранятся из одного или нескольких разнородных источников данных. Система DW хранит как текущие, так и исторические данные. Обычно система DW хранит 5-10 лет исторических данных. Система DW всегда хранится отдельно от операционной системы транзакций.

Данные в системе DW используются для различных типов аналитической отчетности в диапазоне от квартального до годового сравнения.

Хранилище данных и оперативная база данных

Различия между хранилищем данных и оперативной базой данных заключаются в следующем:

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

  • Операционная система содержит текущие данные организации, а хранилище данных обычно содержит исторические данные.

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

  • Запрос Оперативной базы данных позволяет читать и изменять операции (вставка, удаление и обновление), в то время как для запроса OLAP требуется только доступ к хранимым данным только для чтения (оператор Select).

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

Операционная система содержит текущие данные организации, а хранилище данных обычно содержит исторические данные.

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

Запрос Оперативной базы данных позволяет читать и изменять операции (вставка, удаление и обновление), в то время как для запроса OLAP требуется только доступ к хранимым данным только для чтения (оператор Select).

Архитектура хранилища данных

Хранилище данных включает в себя очистку данных, интеграцию данных и консолидацию данных. Хранилище данных имеет трехуровневую архитектуру —

Уровень источника данных

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

Интеграционный слой

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

Уровень представления

Это используется для выполнения отчетов BI конечными пользователями. Данные в системе DW доступны пользователям BI и используются для составления отчетов и анализа.

На следующем рисунке показана общая архитектура системы хранилища данных.

Архитектура хранилища данных

Характеристики хранилища данных

Ниже приведены ключевые характеристики хранилища данных:

  • Предметно-ориентированный. В системе DW данные классифицируются и хранятся по бизнес-субъекту, а не по приложениям, таким как планы участия в капитале, акции, кредиты и т. Д.

  • Интегрировано — данные из нескольких источников данных интегрированы в хранилище данных.

  • Энергонезависимый — данные в хранилище данных энергонезависимы. Это означает, что когда данные загружаются в систему DW, они не изменяются.

  • Вариант времени — система DW содержит исторические данные по сравнению с транзакционной системой, которая содержит только текущие данные. В хранилище данных вы можете увидеть данные за 3 месяца, 6 месяцев, 1 год, 5 лет и т. Д.

Предметно-ориентированный. В системе DW данные классифицируются и хранятся по бизнес-субъекту, а не по приложениям, таким как планы участия в капитале, акции, кредиты и т. Д.

Интегрировано — данные из нескольких источников данных интегрированы в хранилище данных.

Энергонезависимый — данные в хранилище данных энергонезависимы. Это означает, что когда данные загружаются в систему DW, они не изменяются.

Вариант времени — система DW содержит исторические данные по сравнению с транзакционной системой, которая содержит только текущие данные. В хранилище данных вы можете увидеть данные за 3 месяца, 6 месяцев, 1 год, 5 лет и т. Д.

OLTP против OLAP

Во-первых, OLTP означает онлайн-обработку транзакций , а OLAP — онлайн-аналитическую обработку.

В системе OLTP существует большое количество коротких онлайн-транзакций, таких как INSERT, UPDATE и DELETE.

Принимая во внимание, что в системе OLTP эффективной мерой является время обработки коротких транзакций, и оно очень мало. Он контролирует целостность данных в средах с множественным доступом. Для системы OLTP количество транзакций в секунду измеряет эффективность. Система хранилища данных OLTP содержит текущие и подробные данные и поддерживается в схемах в модели объекта (3NF).

Например

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

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

Что такое агрегация?

Мы сохраняем таблицы с агрегированными данными, такими как годовой (1 строка), квартальный (4 строки), ежемесячный (12 строк) или около того. Если кто-то должен делать сравнение из года в год, будет обрабатываться только одна строка. Однако в неагрегированной таблице будут сравниваться все строки. Это называется агрегацией.

Существуют различные функции агрегирования, которые можно использовать в системе OLAP, такие как Sum, Avg, Max, Min и т. Д.

Например

SELECT Avg(salary)
FROM employee
WHERE title = 'Programmer';

Ключевые отличия

Это основные различия между OLAP и системой OLTP.

  • Индексы. В системе OLTP имеется всего несколько индексов, в то время как в системе OLAP существует множество индексов для оптимизации производительности.

  • Объединения. В системе OLTP большое количество объединений и данных нормализуется. Однако в системе OLAP меньше соединений и они не нормализованы.

  • Агрегация. В системе OLTP данные не агрегируются, тогда как в базе данных OLAP используется больше агрегаций.

  • Нормализация — система OLTP содержит нормализованные данные, однако данные не нормализуются в системе OLAP.

Индексы. В системе OLTP имеется всего несколько индексов, в то время как в системе OLAP существует множество индексов для оптимизации производительности.

Объединения. В системе OLTP большое количество объединений и данных нормализуется. Однако в системе OLAP меньше соединений и они не нормализованы.

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

Нормализация — система OLTP содержит нормализованные данные, однако данные не нормализуются в системе OLAP.

OLTP

Data Mart против хранилища данных

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

Data Mart против хранилища данных

На изображении выше вы можете увидеть разницу между хранилищем данных и витриной данных.

Факт против таблицы размеров

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

Например, каждая продажа — это факт.

Cust Id Prod Id Идентификатор времени Кол-во продано
1110 25 2 125
+1210 28 4 252

Таблица измерений представляет характеристики измерения. Измерение Customer может иметь Customer_Name, Phone_No, Sex и т. Д.