Аналитики становятся лучшими инженерами по аналитике
Когда вы учились в школе, играли ли вы когда-нибудь в "Телефон"? Первый человек шепчет слово второму, тот шепчет его третьему, и так далее. В конце цепочки последний человек громко объявляет услышанное слово, и, увы! Оно превращается в совершенно непонятное слово, не имеющее ничего общего с оригиналом. Такова жизнь без инженера по аналитике в вашей команде.
Итак, у вас есть бизнес-вопрос, у вас есть сырые данные в вашем , и у вас настроен dbt. Вы в идеальной позиции, чтобы быстро завершить создание этого подготовленного набора данных! Или нет?
У вас есть три шага, которые отделяют вас от готового подготовленного набора данных. Если у вас нет инженера по аналитике, то работа может быть разделена следующим образом:
Первый шаг заключается в том, ч то ваш аналитик начнет исследовать запрос заинтересованной стороны и постарается свести его к вопросу с высоким влиянием, который будет двигать бизнес. Что они действительно хотят узнать? Например, ваш заинтересованный может обратиться к вам со следующим:
"Нам нужно отслеживать использование нашего продукта, и мы хотели бы иметь данные о Активных Пользователях."
Аналитики — эксперты в том, чтобы превращать общие заявления в конкретные задачи.
"Некоторые данные" могут означать:
- Один KPI с трендом во времени
- Панель управления, разбитая на различные категории
- Таблица, доступная для фильтрации и запросов для разовых анализов
"Активные Пользователи" могут означать:
- Пользователи, которые вошли в систему в течение фиксированного периода времени
- Пользователи с сессией, длившейся дольше определенного времени
- Пользователи, взаимодействовавшие с определенной функцией
После этого аналитик создаст начальную документацию и запишет, как он хочет, чтобы выглядел окончательный набор данных. Если ваш аналитик не обучен как инженер по аналитике, то на этом этапе ему придется передать проект инженеру по данным для создания модели.
Когда команда аналитиков и инженеров по данным впервые создает подготовленный набор данных, они часто ожидают, что этот процесс будет прямой линией к завершению. Ожидания таковы, что процесс будет выглядеть примерно так:
Быстро становится очевидным, что это стремление к линейному процессу часто приводит к созданию трех непредвиденных "циклов":
Цикл 1: Реакция на находки в сырых данных
Предположим, ваш аналитик определил бизнес-потребность как набор данных Активные Пользователи
с "Уникальными пользователями, которые входят в систему в течение данного дня". Аналитик постарается провести как можно больше исследовательской работы заранее, потому что трудно предсказать, что именно вы найдете в сырых данных. Когда инженер по данным застревает при написании модели, ему нужно обратиться к аналитику за дополнительной информацией. Когда аналитик, ставший инженером по аналитике, сталкивается с вопросом при написании модели, ему не нужно ждать, чтобы поговорить с кем-либо, и он может сразу начать исследование. Это приводит нас к первому пункту:
Аналитики уже знают, какие данные они хотят.
Если в сырых данных Login
ниже содержатся два разных поля даты (Login_Date
и Session_Date
), инженер по данным застрянет. Они не могут просто угадать, потому что использование неправильного поля даты создаст совершенно другую метрику! Поэтому они должны вернуться к аналитику, чтобы уточнить, какое поле использовать. Мы только что прошли полный цикл с двумя передачами, и инженер по данным даже не начал строить модель.
Login_Date | Session_Date | User_Id |
---|---|---|
2022-08-01 | 2022-08-01 | 123 |
2022-08-01 | 2022-08-03 | 123 |
2022-08-04 | 2022-08-04 | 975 |
2022-08-04 | 2022-08-04 | NULL |
В сравнении, ваш новый инженер по аналитике может быстро адаптироваться на основе находок в сырых данных. Они могут пропустить бесконечные циклы "исследования", потому что могут реагировать в моменте. Когда они видят два поля даты для Login_Date
и Session_Date
, они могут мгновенно применить свои знания о продукте, сравнить с примерами или обратиться к своим бизнес-контактам, чтобы диагностировать разницу и выбрать правильную дату для модели.
Если бизнес-потребность включает просмотр Активных Пользователей
п о Группам A, B и C
, то это добавляет дополнительный уровень сложности. Без инженера по аналитике вы увидите дополнительные циклы и передачи для окончательной настройки всей бизнес-логики, обработки NULL значений и даже просто окончательного формата.
Формат модели, возвращаемый инженерией данных
Date | Active Users Group A | Active Users Group B | Active Users Group C |
---|---|---|---|
2022-08-01 | 34 | 60 | 61 |
2022-08-02 | 77 | 86 | 37 |
2022-08-03 | 71 | 9 | 6 |
2022-08-04 | 63 | 87 | 10 |
Формат модели, необходимый для BI инструмента
Date | Group | Active Users |
---|---|---|
2022-08-01 | Group A | 34 |
2022-08-01 | Group B | 60 |
2022-08-01 | Group C | 61 |
2022-08-02 | Group A | 77 |
2022-08-02 | Group B | 86 |
2022-08-02 | Group C | 37 |