Data Lake против Data Warehouse или как посчитать то, о чем забыли написать в ТЗ…
Конспект доклада Ивана Никитина на конференции Merge в Иннополисе 2021.
Краткое введение
Аналитика – весьма обширный термин, который может обозначать совершенно разные аспекты. В этом докладе мы будем рассматривать:
- Веб-аналитику
- Сквозную аналитику
- Бизнес-аналитику
Существует ряд инструментов, которые традиционно используются в каждом из этих случаев.
Веб-аналитика
Веб-аналитика – это изучение активности пользователей веб-ресурсов или мобильных приложений. Как правило основные задачи, которые решает веб-аналитика это:
- Анализ аудитории онлайн-ресурса (веб-сайта, приложения).
- Анализ эффективности привлечения новых посетителей и эффективности маркетинговых каналов.
- Анализ процессов, проходящих на ресурсе, например, процесса покупки товара, путь пользователя по разделам и т. п.
Традиционно используются следующие инструменты:
- Google Analytics (Universal и GA4).
- Яндекс.Метрика.
- Другие счетчики.
Сквозная аналитика
В отличие от веб-аналитики сквозная аналитика сводит воедино различные каналы взаимодействия с пользователем, например, веб-сайт, коммуникации через WhatsApp или другие месенджеры, телефонные звонки, офлайн взаимодействия, например посещения пользователей магазинов или салонов продаж. Можно заметить, что сквозная аналитика учитывает намного больше факторов и точек взаимодействия с пользователем и дает намного более четкую картину. Хотя задачи, которые обычно решает сквозная аналитика, практически те же, что и задачи веб-аналитики.
Обычно для реализации сквозной аналитики используют следующие инструменты:
- ROIStat.
- Решения OWOX.
- Индивидуальные решения.
Бизнес-аналитика
Бизнес-аналитика, это прежде всего, работа с внутренними данными компании, уже отражающими те или иные бизнес-процессы, либо построение такой системы и дальнейшая максимальная автоматизация представления этих данных для бизнеса.
Существует масса инструментов для анализа и/или визуализации бизнес-данных:
- Tableau
- QlikView
- Microsoft Power BI
- Google Cloud Platform
- BigQuery
- Data Studio
Проблемы среды и инструментария
Однако при использовании подобных инструментов мы часто сталкиваемся с рядом проблем:
- Мы зачастую ограничены функциональными возможностями инструмента и вынуждены строить систему только исходя из этих ограничений. Например, если в Метрике и в GA нет ретроспективы целей, то вы никогда её и не получите (стандартными средствами).
- Достоверность данных. Мы не уверены в достоверности собираемых данных.
- Семплирование данных в большинстве инструментов может приводить к заведомо высокой погрешности, а в ряде случаев к совершено парадоксальным результатам.
- Объемы обрабатываемых данных и требуемые ресурсы для их обработки могут быть велики.
Тем не менее есть способы решить эти проблемы.
Разные модели сбора, хранения и обработки данных
Есть несколько моделей сбора и обработки данных:
- ETL – Extract, Transform, Load – есть, получение данных, преобразование данных и загрузка данных в хранилище. Важно, что все входные данные приводятся к общей модели, общей структуре их хранения и дальнейшей обработки.
- ELT – Extract, Load, Transform – есть, получение данных, загрузка данных в хранилище и только потом их преобразование к требуемому виду. Важно, что все входные данные хранятся в том виде, в котором они были изначально получены, а преобразование к требуемому виду или структуре происходит по требованию. Такой способ хранения часто называют сбором и хранением сырых данных (raw data).
Есть два достаточно устоявшегося термина, описывающих как хранятся и обрабатываются данные:
- Data Warehouse (DWH) – сбор и хранение структурированных данных.
- Data Lake – сбор и хранение сырых данных.
У каждой модели есть свои плюсы и минусы. Рассмотрим их подробнее.
ETL
Плюсы
- Понятная и прозрачная схема (еще бы, ведь мы её сами создавали!).
- Легкость (на самом деле обманчивая легкость) в добавлении нового источника данных.
- Компактность данных.
- Простота в обработке и построении отчетов.
Минусы
- Монолитность решения.
- Изменение схемы данных ведет к изменению всего.
- Невозможность «вытащить» то, что не предусмотрено схемой хранимых данных.
- Безвозвратная потеря данных при трансформации.
ELT
Плюсы
- Подключение новых источников данных — рядовая операция.
- Произвольные выборки данных.
- Произвольные расчёты и манипуляции с данными.
Минусы
- Очень высокие требования к объемам хранения и мощности обработки.
- Алгоритмы обработки могут быть весьма запутаны и сложны
Как мы видим сохранение, и дальнейшая обработка сырых данных дает намного больше возможностей для дальнейшего анализа, однако она более требовательна к ресурсам.
Облачные хранилища
Сегодня доступны способы использования облачных сервисов для хранения и обработки данных. Речь идет прежде всего о Google BigQuery и Яндекс ClickHouse (на момент этого доклада облачная версия ClickHouse еще недоступна).
Использование облавных сервисов хранения и обработки снимает большой ряд проблем, а именно, не нужно содержать дорогостоящую серверную инфраструктуру в компании, плюс очень высокая степень надежности хранения таких данных. Однако есть и минус – данные хранятся за пределами компании.
Какие данные собираются и как они обрабатываются
Прежде всего, это Поведение пользователя в онлайн (сайт, приложения), активности в CRM и других бизнес-системах, рекламные данные, особенно расходы, бизнес-данные (справочники, внутренние системы и т. п.).
Анализ этих данных дает нам:
- Анализ клиентской аудитории.
- Анализ эффективности маркетинговых операций.
- Анализ рентабельности инвестиций.
- Управленческие решения.
- Возможное построение интеллектуальных систем, оптимизирующих привлечение клиентов.
Event-Driven Analytics
Аналитика, базирующаяся на событиях – это фактографическая система регистрации событий и анализ их взаимоотношения друг с другом.
Привычная сессионная аналитика не всегда решает задачи, которые могут возникать, но вообще-то ее никто не отменял. Более того, посчитать сессии пользователей на базе событий того же Google Analytics 4 – это типовая и чуть ли не первая задача, которую мы решаем.
Но событийная аналитика позволяет анализировать поведение пользователей как бы «над сессиями», не привязываясь к сессии, более того, при ряде ухищрений и не привязываясь к устройству пользователя.
Сейчас набирает тренд анализ так называемых циклов принятия решений, или customer journey stages, как иногда можно встретить термин в англоязычной литературе.
Стоимость решений Data Lake и ELT
Зачастую компании не предпринимают попытки внедрения аналитических решений, потому что не сразу видят их необходимость в управлении бизнесом и опасаются высоких расходов на внедрение и содержание подобных систем.
Однако обычные расходы на хранение и обработку данных для типового интернет-магазина с трафиком несколько тысяч визитов в день в Google BigQuery обычно не превышает стоимости пары чашек хорошего кофе в месяц. Конечно же, сюда не включена работа аналитика, работы по созданию, настройке и дальнейшей поддержки решения, только стоимость облачного хранилища. Конечно же, при объемах обработки в 100–150 терабайт в месяц стоимость такой системы может составлять несколько сот долларов США в месяц.
Выводы
- Событийная аналитика и Data Lake решают намного больше задач, чем «традиционный» подход.
- Облачные хранилища снимают проблему нехватки ресурсов при всевозрастающей нагрузке.
- Но растет и сложность получения данных и их визуализации.
- Дорогу осилит идущий!
Презентация выступления доступна по ссылке:
https://1drv.ms/p/s!Aupuek-zOt-ix8Jl5fla1mdpviHJjQ?e=fdwFJp