Собесов

WoWS Data Engineer — fact-таблица для дашборда метрик кораблей

SQLВитрины и денормализацияСложнаяMiddle

Условие

В корабельном балансе много параметров, которые тюнятся ежедневно. Хотим дашборд для мониторинга core-метрик кораблей в Tableau / Power BI. Использовать сырые таблицы боёв — слишком тяжело.

Дано 4 SQLite-таблицы:

  • arenas — данные боёв (режим, карта, длительность, winner_team_id).
  • arena_members — участники боёв (id игрока, корабль, урон, фраги, выживание).
  • glossary_ships — справочник кораблей (страна, класс, уровень).
  • catalog_items — справочник идентификаторов (team_build_type, arena_type).

Напишите SQL для агрегационной fact-таблицы, удовлетворяющей требованиям:

  • Гранулярность: день.
  • Только реальные игроки (без ботов).
  • Исключить CUSTOM и TUTORIAL игры.
  • Объединить PVE и PVE_PREMADE в единое значение PVE.
  • Возможность фильтрации по: team_build_type, ship, ship_class, ship_level, map.
  • Метрики:
    • Win rate
    • Survivability
    • Avg damage per battle
    • Frags-to-deaths ratio
    • Avg credits income
    • Avg experience income
  • Метрики должны считаться на уровне дня + корабля (или класса).

Хочешь увидеть разбор?

Зарегистрируйся бесплатно — откроется развёрнутое решение этой задачи и ещё 4 на выбор.

Зарегистрироваться и увидеть разбор
Уже есть аккаунт? Войти