Пример построения гибридных систем с выносом аналитики в облако
Сергей Кравченко, Старший аналитик данных, Beltel Datanomics
Аналитическая платформа – одна из неотъемлемых частей IT инфраструктуры большинства компаний. Её задача объединять данные из разных источников, предоставлять инструменты быстрой обработки данных, построения отчетов в реальном времени.
Ядром аналитической платформы является база данных, позволяющая накапливать данные, хранить и обрабатывать запросы. В настоящее время существует широкий выбор баз данных, однако он может быть затруднен их большой представленностью.
Что такое OLAP и OLTP?
При выборе базы необходимо понимать, для каких целей она будет применяться. Разделяют два типа систем обработки данных: OLAP (online analytical processing) и OLTP (online transaction processing). Первая используется для выполнения аналитических запросов, вторая – для транзакционных.
Ключевым отличием аналитических и транзакционных запросов является объем и количество обращений в единицу времени. Аналитические запросы, как правило, требуют результат обработки большого объема данных, при этом количество таких запросов на несколько порядков меньше, чем у транзакционных. Транзакционные запросы, наоборот, оперируют малым объемом данных, однако количество таких запросов могут достигать десятка или сотен тысяч в секунду.
Считается, что не существует универсальной СУБД, которая бы одинаково хорошо решала аналитические и транзакционные запросы, поэтому распространена практика хранения данных в двух системах одновременно – аналитической и транзакционной.
Пример построения двухкомпонентной OLAP & OLTP гибридной системы
В этой схеме источником поступающих данных в аналитику является транзакционная БД, примерная структура построения двухкомпонентной СХД может быть представлена несколькими компонентами:
- База данных, предназначенная для обработки транзакционных запросов, она же является источником данных, поступающих в аналитическую базу.
- CDC-коннектор для отслеживания изменения данных в базе-источнике.
- Очередь, временно хранящая изменения для передачи их в аналитическую БД.
- Аналитическая БД для обработки аналитических запросов.
- Визуализация данных.
Рисунок 1. Пример построения гибридной системы обработки данных
В схеме, представленной выше, транзакционная БД является on-prem решением, остальные компоненты реализованы на сервисах облачного провайдера Yandex Cloud. Такой подход применяют для выноса аналитики в облако, чтобы разгрузить собственные серверные мощности.
Заключение
Команда Beltel Datanomics предлагает гибридный подход для существующих on-prem решений с выносом компонент, ответственных за обработку аналитических запросов в облако. В качестве OLAP системы мы предлагаем использовать ClickHouse, который отлично подходит для выполнения сложных аналитических запросов, требующих быстрой обработки по запросу больших данных. Помимо скорости обработки данных одним из преимуществ ClickHouse – открытый исходный код. Развернув ClickHouse в облаке или на земле, нет необходимости платить за лицензию.
Облачное решение позволяет производить масштабирование БД по мере необходимости, разгружает локальные сервера, не требует ресурсов для администрирования.
Дополнительно
Построение аналитической платформы в облаке Yandex Cloud (datanomics.ru)
Облачная аналитика для промышленности. Как внедрять ИИ уже сегодня (datanomics.ru)
Построение дашборда в Yandex DataLens на примере прогнозирования спроса в ритейле (datanomics.ru)