1.1 Архитектура DWH Flashcards

1
Q

DWH

A

data warehouse - хранилище данных
Хранилище данных — предметно-ориентированный, интегрированный, неизменчивый, поддерживающий хронологию набор данных, организованный для целей поддержки принятия решений.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

OLTP-системы

A

OLTP (Online Transaction Processing) - система оперативной обработки информации (транзакций).

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

Главное требование к OLTP-системам
Быстрое обслуживание относительно простых запросов большого числа пользователей, при этом время выполнение запроса не должно превышать (микро-,милли-)секунд

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Система поддержки принятия решений

A

Система поддержки принятия решений (СППР) (англ. Decision Support System, DSS) — компьютерная автоматизированная система, целью которой является помощь людям, принимающим решение в сложных условиях для полного и объективного анализа предметной деятельности.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

OLAP-системы

A

При создании систем поддержки принятия решений специалисты столкнулись с проблемами при использовании OLTP-систем. Это привело к появлению OLAP-систем.

OLAP (online analytical processing) имеет дело с историческими или архивными данными. OLAP характеризуется относительно низким объемом отдельных запросов.

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Разница между OLTP и OLAP системами

A

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

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Характеристики (свойства) DWH

A

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

> Интегрированность (целостность и внутренняя взаимосвязь)
Устранение несоответствий внутри данных.

> Временная привязка
Оперативные системы охватывают небольшой интервал времени, что достигается за счет периодического архивирования данных. Хранилище данных содержит данные, накопленные за большой интервал времени (от пяти-семи до десятков лет).

> Неразрушаемая совокупность данных
Модификация данных не производится, поскольку может привести к нарушению их целостности.

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Слои данных

A

Уровневая архитектура – это средство борьбы со сложностью системы. Каждый последующий уровень абстрагирован от сложностей внутренней реализации предыдущего.

> Операционный слой первичных данных (Primary Data Layer, raw или staging)

> Ядро хранилища (Core Data Layer)

> Слой аналитических витрин (Data Mart Layer)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Первичный слой данных

A

Операционный слой первичных данных (Primary Data Layer, raw или staging), на котором выполняется загрузка информации из систем-источников в исходном качестве и сохранением полной истории изменений.

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Центральный слой данных

A

Ядро хранилища (Core Data Layer)– центральный слой, в котором происходит консолидация данных из разных источников, приводя их к единым структурам и ключам.

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Слой витрин данных

A

Слой аналитических витрин (Data Mart Layer), где данные преобразуются к структурам, удобным для анализа и использования в BI-дэшбордах или других системах-потребителях.

Витрина данных (Data Mart) представляет собой срез хранилища данных в виде массива тематической, узконаправленной информации, ориентированного, например, на пользователей одной рабочей группы или департамента

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Подходы к проектированию DWH

A

В зависимости от наличия центрального слоя существует два основополагающих подхода

> DWH по Инмону

> DWH по Кимбаллу

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

DWH по Инмону

A

DWH – это корпоративное централизованное хранилище данных

> Проектирование ХД модели “сверху вниз”.

> Тщательный анализ бизнеса в целом

> Выявляются бизнес-области

> В них - ключевые бизнес-сущности

> Затем - их характеристики (атрибуты) и связи между ними.

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

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

Недостатки:
Сложная в проектировании, нужна высококлассная команда
Долгая в реализации на первоначальном этапе анализа бизнеса

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

DWH по Кимбаллу

A

DWH по Кимбаллу - копия транзакционных данных, специально структурированных для запроса и анализа в виде витрин данных.

Хранилище по Кимбаллу можно назвать коллекцией витрин данных (отчетов).

Проектирование снизу вверх:
> Анализ потребностей – узнаем, какие отчеты нужны

> Анализ источников – узнаем, в каких источниках есть данные

> Проектируем витрину под конкретного потребителя

> Первичные данные из источников преобразуются в витрины

Преимущества:
Быстрый эффект
Достаточно поэтапного анализа бизнес-областей
Не требует высококвалифицированных специалистов (на старте)
Недостатки:

Высокая стоимость поддержки новых источников
Отсутствие стандартизации показателей (в каждой витрине может быть свой алгоритм)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Озеро данных

A

Озеро данных (Data Lake) - хранилище большого объема неструктурированных данных, собранных или генерированных одной компанией.

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

Например, видеозаписи с беспилотников и камер наружного наблюдения, транспортная телеметрия, фотографии, логи пользовательского поведения, метрики сайтов, показатели нагрузки информационных систем и пр. Такие данные пока непригодны для типового использования в ежедневной аналитике в рамках BI-систем, но могут использоваться для быстрой отработки новых бизнес-гипотез с помощью ML-алгоритмов.

Можно выделить основные особенности использования данного подхода:

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Преимущества и недостатки DataLake

A

Преимущества озера данных
> Масштабируемость – распределенная файловая система позволяет по мере необходимости подключить новые машины или узлы без изменения структуры хранилища или сложной перенастройки
> Экономичность – Data Lake можно построить на базе свободного ПО Apache Hadoop, без дорогостоящих лицензий и дорогих серверов, масштабируя систему под свои затраты
> Универсальность – большие объемы разнородных данных могут использоваться практически для любой исследовательской задачи – от прогнозирования спроса до выявления пользовательских предпочтений или влияния погоды на качество продукции
> Быстрота запуска– накопленные объемы Data Lake позволяют быстро проверить очередную модель, не тратя время и инженерные ресурсы на сбор информации из разных источников

Болото данных
У подхода Data Lake есть обратная сторона - болото данных, когда данные собираются, хранятся и не используются.
Для этого существует несколько причин:
> Низкое качество данных ввиду отсутствия контроля при их загрузке, а также простоты этого процесса и дешевизны хранения информации;

> Сложность определения ценности данных - с одной стороны, философия Big Data предполагает важность любой информации. Но, с другой стороны, если бизнесу быстро нужны какие-то данные, об этом, как правило, известно заранее. А потому такую информацию логично сразу загружать в DWH или витрину BI-системы.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Batch-обработка данных

A

Пакетная обработка
ETL процесс может быть разным в зависимости от типа данных, которые в него передаются.

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

Пакетная обработка - классический подход в построении DWH. Обычно хранилище данных строится за t−1, то есть данные в хранилище актуальны за вчерашний день. Пакетная обработка может быть и за последний час, и за предыдущие полчаса, это зависит от частоты жизни хранилища данных.

17
Q

Потоковая обработка

A

Потоковая обработка - сервис обрабатывает и загружает весь поток информации, результат получается в режиме реального времени. Потоковая обработка сложнее в разработке и тестировании (относительно), чем пакетная. Для нее характерны низкая эффективность для OLAP-систем и равномерная нагрузка на железо.

18
Q
A
19
Q

Lambda - архитектура

A

Если мы объединим потоковую и пакетную обработку, то получим Lambda - архитектуру. У Lambda - архитектуры очень простой подход, мы делим общий поток данных на два потока, первый поток это пакетная обработка (Batch layer), а второй поток это потоковая обработка (Real-time layer). В Batch layer представлены Primary data layer и Core layer из классического DWH. Затем данные из Batch layer попадают в Serving layer, где находится витрина данных. В Real-time layer появляются представления Real-time View, которые попадают в Serving layer и которым могут обращаться аналитики.

У Lambda - архитектуры есть свой минус. Нам необходимо дублировать логику в оба потока обработки данных. Если нам не нужна пакетная обработка, мы можем ее убрать из архитектуры.

20
Q

Kappa - архитектура

A

Kappa - архитектура - это архитектура только потоковой обработки данных. При этом есть возможность сохранять данные из Serving layer в долговременное хранилище.

21
Q

Data Mesh

A

Data Mesh - современный подход к проектированию DWH. Сегодня можно выделить тенденцию перехода в back-end разработке от монолитной архитектуры к микросервисной архитектуре.

Data Mesh - это подход использования микросервисной архитектуры в хранилище данных.