ETL сервисы и таски для Такси, Еды и Лавки. Как мы разрабатываем платформу управления данными BigData и машинное обучение

Программный комитет ещё не принял решения по этому докладу
Владимир Верстов
Яндекс. Такси

Руководитель группы разработки ядра платформы управления данными в Такси, Еде и Лавке

Более 10 лет опыта работы в IT. В университете занимался параллельными и распределенными вычислениями, разрабатывал свой САПР, защитил кандидатскую по двум специальностям. 5 лет занимался enterprise разработкой в консалтинге, прошел путь от системного аналитика до Team & Tech Lead. Последние последние 4 года занимаюсь инженерией данных в Яндекс. Такси.

Тезисы

Такси, Еда и Лавка - компания с устойчивой Data Driven культурой, где все решения анализируются и проверяются с оглядкой на данные, а скрипт на Python или SQL может написать любой. Мы начали строить централизованное Хранилище Данных (Data Warehouse, DWH) в Такси порядка 4-х лет назад. Год назад провели масштабный ребрендинг и стали себя гордо именовать DMP, Data Managment Platform. На текущий момент у нас порядка 5 сотен бизнес-пользователей, пара сотен продвинутых потребителей данных - аналитиков, data scientist'ов и бекенд разработчиков из смежных команд. Объем Data Lake на YT (in-house аналог Hadoop, https://habr.com/ru/company/yandex/blog/311104/) более 1ПБ и ежемесячный прирост по 100ТБ. Целевое эффективное пространство в DWH на Greenplum 0.5ПБ. Каждый день в нашей инфраструктуре запускается сотни тысяч ETL процессов. Мы поддерживаем ETL на MapReduce, Spark, 3-х диалектах SQL и голом Python. Мы выстроили свои процессы и инфраструктуру таким образом, что к нам могут контрибьютить аналитики данных и бекенд разработчики.

В своем докладе я расскажу:

1. Немного деталей про DMP в Яндекс.Такси, Еде и Лавке: какие данные хранятся в Data Lake и в каком формате, какие слои и потоки данных есть в DWH: как мы несем данные от десятков различных источников до дашбордов в Tableau и OLAP кубов в MS SSAS.
2. Почему мы решили вместо готового ETL инструмента написать свой, и как он работает с такими вычислительными системами, как Spark, Greenplum, ClickHouse и YT.
3. Как устроена наша монорепа из ETL сервисов и процесс разработки, отладки и деплоя.
4. Технические подробности: запуск ETL процессов в 2-х дата центрах, организация тяжелых потоков данных между большими хранилищами, мониторинг наших процессов, проверки качества данных и многое другое.
5. Про взаимодействие между дата инженерами и бекенд-разработчиками и аналитиками данных на уровне кода.

Другие доклады секции BigData и машинное обучение