Далее мы начали делиться результатами с коллегами, а затем DataLens быстро освоили и другие члены команды.
Пользователей DataLens на «Платферрум» можно разделить на 3 типа:
- менеджеры, контент-менеджеры — пользуются готовой отчетностью,
-
аналитики — строят отчеты по запросу от бизнеса для общего пользования,
-
техподдержка, тестировщики, аналитики — самостоятельно строят отчеты
-
под свои запросы.
Данное решение помогло нам быстро выполнить первые задачи, но у такого решения есть свои недостатки — в DataLens нельзя работать с таблицами из разных источников на уровне датасета.
Имея такое ограничение, мы не могли решать новые задачи:
- внедрение сквозной аналитики: бизнесу нужны данные не только из мастер-системы, но и данные из CRM, чтобы строить различные воронки по клиентам;
-
мониторинг выполнения KPI по менеджерам в отделе продаж: данные по компании и ответственному менеджеру также хранятся в CRM;
-
анализ процессов разработки, построение таких метрик как TTM, LT и др.
Чтобы решить поставленные задачи мы решили создать хранилище, где будут собраны эти данные. Так, мы настроили передачу данных в
ClickHouse из нескольких источников:
- PostgreSQL: информация о заказах, товарах, покупателях и поставщиках;
- Yandex Tracker: данные о задачах и их истории передвижения по статусам;
- GitLab: данные о комитах;
- CRM: лиды, сделки, данные о сотрудниках отдела продаж для расчета KPI.
На текущий момент передача данных для PostgreSQL реализована с помощью сервиса Yandex Data Transfer:
- для каждой БД PostgreSQL поднят свой трансфер, который копирует таблицы из БД и переносит в базу ClickHouse с таким же названием;
-
трансферы работают в режиме периодического копирования и запускают передачу данных с прода раз в час;
-
Yandex Data трансферы создаются командой DevOps с помощью автоматизированной инфраструктуры.
Для получения данных
мы создали самописные трансферы:
- для данных Yandex Tracker и GitLab — трансферы на Python (получаем нужную информацию с помощью API);
-
для данных из Битрикс24 — трансфер, реализованный на Node.js.
После создания единого хранилища данных
мы начали создавать дашборды:
- собрали дашборд по выполнению KPI по данным из CRM и фактическим продажам;
- построили сквозную аналитику, объединив данные из CRM и данные платформы;
- построили дашборды команде разработки по деплоям из данных GitLab;
- построили дашборд с производственными метриками по данным Yandex Tracker.