Тимлидское об аналитике – Telegram
Тимлидское об аналитике
1.68K subscribers
34 photos
1 video
62 links
Мысли, идеи, озарения и советы от тимлида дата-аналитики Яндекс.eLama.
Download Telegram
Источник: базы данных
Требуемые данные находятся в базах приложения/продукта компании, на которую мы работаем. Казалось бы, в чем проблема, это же наши данные!
Как бы да, но нет.

* Разработчики БД - не аналитики, это другая команда. Получить информацию от них о том, где что лежит и как с чем связаны разные сущности, дата-инженеру бывает весьма непросто. Потому что время программистов дорогое, и их часто ограждают от действий, не связанных с разработкой продукта непосредственно. В том числе от консультаций просителям данных (ведь программисту нужно понять вопрос и покопаться в БД, чтобы найти ответ, а это займёт время).

* Документация к БД традиционно либо неполна, либо не актуальна, либо отсутствует, либо представлена в виде, понятном только самим разработчикам.
Именно добыча точных сведений о данных (т.е. метаданных) обычно занимает большую часть времени на этапе сбора. А дальше-то дело пойдет - настроил стандартный пайплайн или даг Airflow и готово. Ну, еще на мониторинг качества поставить хорошо бы, но это тоже стандартизированный процесс.

* Данные в БД часто неконсистентны, содержат баги, несогласованность, пропуски. За качеством данных, по идее, должны бы следить владельцы (оунеры) БД, но это уж насколько компания созрела для такой "роскоши".
Вот пример проблемы: произведено руками срочное изменение в БД каких-то строк по заказу руководства, а дату обновления строки исправить забыли. Значит, эти строки не будут выбраны при сборе как изменившиеся, не обновятся в аналитическом хранилище и в отчетности не отразятся эти изменения! И никто даже не узнает об этом!

Продолжение следует...
🔥10👍71
А чорт. Только щас пришло в голову, что аналогия между котлетой и сырыми данными некорректна. Ведь котлета уже готовая!
😁23
Нюансы сбора данных (продолжение)
😁3🥰1
Приветствую любителей аналитики!

Источник: API внешнего сервиса

Когда требуется тащить что-то из чужого веб-инструмента, встаёт, прежде всего два вопроса:

* отдаёт ли API требуемые данные? Например API Google Analytics 4 не отдает сырые хитовые данные. Только сводные и хоть ты тресни (ну или используй BigQuery как коннектор)

* насколько адекватна и внятна документация поставщика API? К сожалению, часто приходится добывать нужное методом тыка или в тягомотной переписке с техподдержкой сервиса.

Источник: Файлы (например, Яндекс.Таблицы)
Используется, когда автоматизация невозможна или неоправданно сложна/долга.
Очевидные задачи сбора данных через файлы:

* Организация регулярной поставки новых файлов. За это может отвечать конкретный человек или несколько человек, если файл имеет долгий путь еще до того как попадет в поле внимания дата-инженера.

* Корректность заполнения файлов, а также неизменность формата данных. Ручной ввод и слабо поддающиеся стандартизации процессы формирования и передачи файлов могут принести изрядно хлопот.

Причины проблем, вытекающих из этих задач, тривиальны: люди ненадёжны)

Короче, задачи дата-инженера, зависящего от поставщиков данных, наполняют его жизнь безудержным весельем и часто удлинняют time to market витрины.
👍135
Мотивация - одна из наиболее интересных для меня тем.
Что движет людьми?
Почему они тратят драгоценные энергию и время на некие дела?
И как их замотивировать?

Последний вопрос мне особенно интересен как руководителю команды.

Наткнулся в своих архивах на короткую выписку из книги "Драйв: Что на самом деле нас мотивирует" Дэниэла Пинка. Убей бог, не помню, читал её или нет, но пунктики мне понравились. Кажется, я стараюсь их применять в работе (получается или нет - об этом пусть расскажут мои ребята, если захотят). Вот эти пунктики:
🔥31
Три компонента мотивации команды.

1. Автономность. Сотрудник должен понимать свою ответственность. Тимлид должен разрешить ему ошибаться в допустимых пределах.

2. Мотивирующая цель. Сотрудники должны понимать общую цель и осознавать, какой вклад они вносят в неё.

3. Мастерство. Должна быть возможность для людей проявить свои лучшие качества, узнать новое, в чём-то быть лучшим.

О мотивации мы ещё будем говорить.
А пока - приглашаю в коменты поделиться, как вы зажигаете команду, если она у вас есть, и каких действий в этом плане хотели бы от своего руководителя.
👍7🤔2🔥1
Разработка витрин данных

Под витриной данных мы понимаем таблицу с готовыми к анализу данными.

Витрина создаётся из сырых данных путём их преобразований. Бросим беглый взгляд на эту кухню.
👍53
Что реализуется в витринах
* очистка и починка данных
* бизнес-логика - процессы и алгоритмы и всяческие нюансы, описанные заказчиком
* расчет метрик
* организация данных удобным для анализа образом
* костыли для совсем частных случаев

(Пока не будем трогать всякое машинное обучение и прочий рокет-саенс)

Для решения этих задач используются различные операции:
* объединение данных из разных источников, для обогащения информации
* агрегация
* сегментация
* фильтрация
* вычисления
* "уплощение", т.е. преобразование полей с массивом к множеству строк
* сопоставление (мэппинг)
и другие.

В качестве инструментов используются обычно SQL и/или Python.

Обновление витрин - это операция дополнения их вновь появившимися данными, а также перерасчет имеющихся в случае их изменения.

Частота обновления зависит от требовний к аналитике. Мы вот обновляемся раз в сутки.

Обновление каждой витрины производится одним из способов:
* полный перерасчет и перезапись всей таблицы
* дополнение таблицы новыми строками - возможно, если старые строки точно не должны меняться
* перезапись последних N периодов (например, 30 дней) - когда данные в источнике могут меняться задним числом некоторое время. Например, расходы в рекламных системах могут корректироваться - возвращаются деньги за фрод-клики.

Когда создан запрос, реализующий витрину, необходимо проверить корректность данных. Как это сделать - отдельный большой вопрос, о нем в следующий раз.
👍121
Короче,
рыжий котик - это будет дата-инженер,
белый котик - дата-аналитик,
полосатый - занимается вопросами саморазвития
🥰4
Дайджест №3

Приветствую любителей аналитики!
Перед первыми майскими вспомним-ка, что там у нас было интересного в канале.
Чтобы было что почитать на досуге. Если, конечно, перед вами не стоят такие важные проекты как деплой на дачу или релиз шашлыков.

Прошлые вспоминалки
Дайджест №1
Дайджест №2

Аналитика для бизнеса
Техническое задание на витрину данных
Нюансы сбора данных Часть 1 и Часть 2
Разработка витрин данных

Аналитика для жизни
Напряжение или расслабление?
Три компонента мотивации команды
4👍1👀1
Ну что, коллеги, отдохнули?
Время управлять временем!
🥰2
Вторая маст-хэв книга наряду с "Потоком" Михая - это, конечно, знаменитый "Тайм-драйв" Глеба Архангельского. Если вы её еще не читали, найдите книжку сегодня же (она давно гуляет по интернету). А если читали - перечитайте еще раз и принимайте на вооружение!

Я внедрил в свою жизнь почти все советы из книги и постепенно буду их выдавать.

Первая глава про отдых, а значит, про энергию, а эту тему я раскрою отдельно.

Глава 2. Мотивация: как справляться с неприятными задачами.
Освойте методы настройки на выполнение неприятных мелких дел - "лягушек".

2.1. Используйте якоря для настройки.
Якоря = материальные привязки — музыка, цвета, ритуалы.

2.2. Применяйте метод швейцарского сыра:
выполнить задачу не в логическом порядке, а в произвольном, выгрызая самые приятные кусочки.

2.3. Награждайте себя за выпонение маленьких дел.

2.4. Ежедневно съедайте с утра "лягушку", т.е. выполняйте мелкое неприятное дело, чтобы они не копились.

2.5. Дробите "слонов" на "бифштексы", которые должны реально приближать к выполнению всего "слона". Декомпозиция крупной задачи помогает преодолеть страх перед ней.

PS. Конспекты многих книг уже есть в сети, либо можно попросить их сгенерить ИИ. Но бесплатные знания, к сож., хуже работают, т.к. меньше ценятся. Поэтому я бы порекомендовал конспектировать самостоятельно.

Но главное - внедряйте сразу!
🔥94
Давеча писал о разработке витрин, а оказалось, что эта привычная мне сущность вызывает вопросы у читателей.

На днях опубликовалась моя статья о разработке витрины данных для анализа эффективности рекламных кампаний.

Взято из реальной жизни, поэтому приглашаю заценить: https://vaiti.io/oczenivaem-reklamnye-kampanii-s-pomoshhyu-sql/
🔥9👍3👀2
Отгремели салюты в честь Великой Победы, отзвучали поздравления.
Но сегодня перед нашей страной стоят новые вызовы, к счастью, не такие страшные, как тогда.
И в том числе, в сфере айти, а значит, и дата-аналитики.

Многие вендоры ушли из России, забрав инструменты, на которых строились практически все этапы работы с данными.
Ушел Google с его колоночной СУБД BigQuery и всем Cloud-ом, ушел Amazon c его серверными мощностями, ушел Microsoft с его мощнейшим инструментом визуализации Power BI. Ушли Zapier, OWOX, Amplitude, Tableau и множество других полезных аналитику коммерческих продуктов.

Слава высшим силам, у нас была хоть какая-то своя альтернатива. За три минувших года российский бизнес перестроился на российский и/или опенсорсный стек.
Да, наши технологии во многом отстают от западных, проблем много, но это значит, нам есть чем заняться!

И российский инструментарий развивается, постепенно заполняя резко опустевшие ниши.

Яндекс развивает свои облачные сервисы и выкатывает свой Менеджер тэгов на замену Google Tag Manager, DIS Group представил Платформу по управлению данными IDP, CleverData совершенствует свою Платформу данных клиентов Join.

На конференциях по аналитике стало спокойней: спикеры делятся опытом решения текущих задач: атрибуция каналов, классификация обращений пользователей и т.д.
В 22-м осенью я был на Матемаркетинге, он сильно отличался от 24-го: тогда большинство взоров было направлено на срочную смену архитектуры, многие предлагали свои ещё сырые, но уже рабочие варианты.

Еламе тоже пришлось съехать с западного стека, в чем я принимал живейшее участие.
Мы заменили BigQuery на яндексовый Managed Clickhouse, Google Analytics на Метрику, Google Workspace на Яндекс.Диск, Power BI на Data Lense и поменяли множество других инструментов.

Это было непросто, нервно, но мы выстояли.
Можно воспринимать эту работу по-разному - как борьбу, как возможности развития и интересное поле для самореализации, или вовсе отказаться от неё, отправившись следом за ушедшими поставщиками.

Я никого не оцениваю и вообще почти никогда не смешиваю работу с политикой. Но свой выбор сделал.
🔥136💩3👍1👏1
Продолжим разбирать цикл жизни витрины данных и пришла пора разобраться, как отлаживать/тестировать витрину.

Этот этап занимает не меньше, а то и больше времени, чем разработка, т.к. ценность витрины - не в коде, а в результирующих данных.

Задачу на разработку или доработку витрины, в общем случае можно завершать следующими действиями:

Для проверки доработанной витрины:
* Проверяем ее на дубли подсчетом по уникальному составному ключу до группировки.
* Сравниваем старые поля новой версии с текущей с помощью EXCEPT DISTINCT.
* Новые поля проверяем так же, как при создании новой витрины.

Для проверки вновь создаваемой витрины:
* Проверяем ее на дубли.
* Находим лишние строки, фильтруя конечную витрину по «инвертированным» условиям ТЗ.
* Составляем на основе требований ТЗ примеры исходных данных и ожидаемых результатов для них — и убеждаемся, что запрос верно обрабатывает все варианты.

Читайте подробнее в моей статейке.
🔥10
И вновь приветствую, любители аналитики!

Я тут немного уходил по уши в ремонт, потом болел, поэтому на время пропал с радаров. Не обессудьте!
Но нынче наконец отпуск, надеюсь наверстать.

И возвращаюсь к темам о стрессе, напрягах и выгорании, которые для многих даже более актуальны, чем недостаток энергии (а зачастую, являются причинами этого недостатка).

Давно заметил за собой, что зациклен на результате.
Плохо это или хорошо? Ведь в каждом втором резюме или вакансии встречается фраза "ориентированность на результат", значит, это благодетель?
Вот какие заметки я нашел в своих анналах.

>> 2016-06-25
По мне, работа, сделанная на 90% - не сделанная работа. Ведь результат – законченная на 100% работа, и только она приносит мне удовлетворение.

Чем это плохо?
- Я постоянно недоволен и это заметно. Недовольство угнетает или напрягает окружающих.
- Это понижает самооценку
- Это отнимает силы, вдохновение, конструктивный настрой, снижает продуктивность
- Это может зацикливать на одной задаче.

Чем это хорошо?
+ Помогает доводить начатое до конца
+ Самокритичен, добиваюсь приемлемого качества.

Как нивелировать плохое?

1) Давать себе больше времени на решение задачи. Если не решается – отложить.

Почему я не даю себе времени?
* Осудят окружающие?
Решение: Объяснять, что задача потребует больше ресурсов. Я и так много сделал, больше чем другой бы.
* Хочется поскорее освободить себя от этого дела и перейти к более интересному.
Решение: по-возможности отложить дело, пока не восстановится готовность им заниматься.

2) Научиться радоваться промежуточным результатам. И других убеждать в ценности промежуточных результатов.

Что мешает?
* Страх, что дело не сдвинется дальше: не хватит сил, времени, способностей.
На чем он основан? Опыт фейлов запоминается лучше, чем опыт успехов. Гораздо лучше.

>> конец цитаты

Даже такой не очень глубокий самоанализ в блокноте помогает снизить свой стресс, взять себя в руки, принять решение, а также изменить своё поведение так, чтобы не вредить себе, а становиться продуктивнее и счастливее.
👍62
Заходите сегодня, коллеги! Пообщаемся о том, как у нас готовят данные
Forwarded from Simulative
📎 Витрины данных: как аналитики превращают сырые данные в удобные таблицы

Ребята, мы решили продолжать традицию контентных стримов без регистрации и смс.

Сегодня в 18:30 по МСК нас вновь навестит Павел Беляев — руководитель группы дата-аналитиков в компании Яндекс eLama и автор телеграм-канала «Тимлидское об аналитике».

💡 О чём поговорим?

Витрина данных — готовая таблица для анализа, где всё очищено, структурировано и подогнано под задачи. Но за кажущейся простотой скрывается целая жизнь: от рождения до «пенсии».

Разберём все этапы:

1️⃣ Выявление потребности и ТЗ
2️⃣ Сбор данных (иногда — охота за недостающими)
3️⃣ Разработка скрипта/запроса
4️⃣ Отладка и тестирование
5️⃣ Внедрение и использование
6️⃣ Доработки (куда без них?)
7️⃣ «Уход на покой» — когда витрина теряет актуальность

Павел поделится личным опытом, лайфхаками и подводными камнями, через которые прошёл сам и его команда.

💬 Будет много практики, примеров и ответов на ваши вопросы.

❗️Не пропустите! Ссылку на подключение к трансляции мы пришлем за 1 час до её начала.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93❤‍🔥1🤝1
Приветствую любителей аналитики!

Если следовать дальше по жизненному циклу витрины данных, то придем к шагу визуализации витрины.
Этой задачей занимаются BI-аналитики (сокращение от Business Intelligence, если что).
Я не застремался и взял интервью у нашего биайщика - Алины.

Получилось живенько, зацените!

https://vkvideo.ru/video897309_456239035

PS. Если вам зайдет, буду интервьюировать и других интересных специалистов.
10🔥7👍3
Кто пропустил стрим про витрины , ловите запись!
Forwarded from Simulative
❗️ Делимся записью эфира: 7 этапов создания витрин данных

Недавно мы в прямом эфире разбирали 7 этапов создания витрин данных — от сбора сырой информации до «пенсии» устаревших таблиц. Если пропустили — ловите запись:

Смотрите там, где удобно:
VK Video
YouTube

Павел Беляев (тимлид дата-аналитиков в Яндекс eLama) рассказал, с какими подводными камнями сталкивается команда, как правильно ставить ТЗ и почему даже идеальная витрина однажды устаревает.

А теперь важное 👇


Если после эфира вы подумали:
💭 «Хочу так же уверенно разбираться в данных»
💭 «Как бы потренироваться на реальных задачах?»

— у нас как раз стартовали два курса-симулятора, где вы сможете прокачать навыки в безопасной среде, но на реальных кейсах:

🟠 «Инженер данных» — учитесь строить надежные пайплайны и витрины.
🟠 «Fullstack-аналитик» — осваиваете и анализ, и инженерию, чтобы закрывать задачи комплексно.

Если сомневаетесь, какой курс выбрать, — пишите, поможем определиться! Главное — начать!

➡️ Узнать больше о курсах
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6