Files
clickstream-ch-kafka-supers…/data/DE-task.md
T
ddadmin de9d0429a2 fix(data): update dataset permissions for execution
Adjusting file modes on jsonl and markdown files to allow
execution within the ETL pipeline.
2026-02-07 21:36:55 +03:00

4.6 KiB
Executable File

Дашборд для e-commerce кликстрима

Представьте, что вы работаете в e-commerce проекте. Бизнес-юнит в процессе обсуждения, закупать ли вам кликстрим логов посещения некоторого портала другого магазина. Для первичного анализа вам предоставили данные, чтобы оценить применимость и выводы, которые можно сделать из них.

Вам нужно подготовить данные для первичного анализа и собрать несколько графиков в дашборд. Финальный результат вашей работы — развернутая инфраструктура и дашборд с графиками на которых "бизнес" может сделать выводы о данных. Вам дали полный карт-бланш на тему того, как эти данные можно обработать.

Вам нужно:

  • спроектировать хранилище в /PostgreSQL/Clickhouse/ со слоями и объектами, которые вы посчитаете нужными
  • написать все нужные расчёты и алгоритмы для создания витрин
  • реализовать расчёт с помощью какого-то регулярного процесса
  • сделать на основе этих данных дашборд который можно будет посмотреть в браузере

Какие инструменты выбрать

Пара вариантов:

  • Kafka + Clickhouse + Airflow + Superset/Power BI
  • Postgresql + dagster + Grafana
  • dlt + duckdb + Airflow + Panel
  • Clickhouse + Airflow + Redis + Streamlit
  • sqlitedb + скрипты питона + Flask + d3.js

Начните с маленького среза данных, чтобы ознакомиться, что за данные вам предоставляют:

  • browser_events.jsonl — данные с информацией о просмотрах браузера
  • device_events.jsonl — данные об устройствах, с которых пользователи пользовались сайтом
  • geo_events.jsonl — данные о локации пользователя
  • location_events.jsonl — вопреки названию, это данные не о локации пользователя, а непосредственно о положении пользователя на сайте и информации о том, откуда пользователь попал на страницу

Смысл задачи на своей ВМ развернуть инструменты и загрузить данные в Kafka и из нее прогнать их в Clickhouse /другая DB по слоям.

В Airflow взять данные из таблиц и преобразовать, потом выгрузить в Clickhouse / другая DB в агрегированном формате под дашборд.

Дашборд не оценивается, но будет плюсом, если получиться собрать удобный визуал.

Записать можно на видео и отправить контактному лицу или продемонстрировать на собеседовании

Можно использовать любые инструменты.

Данные могут быть(скорее всего) с ошибками и компания которая их предоставляем заранее об этом сообщила т.к. они не хотят делиться 100% качественными данными полноценно с продакшена.

ИНФРАСТРУКТУРА

  • инфраструктура клевая и работает = 18 баллов
  • инфраструктура работает, но есть баги = 12 баллов
  • инфраструктура почти есть, но не совсем = 6 баллов
  • инфраструктуры нет = 0 баллов

ДАШБОРДЫ

  • дашборды есть и удобные и работают = 12 баллов
  • дашборды работают, но неудобные = 8 баллов
  • дашборды почти работают = 4 балла
  • дашбордов нет = 0 баллов