GH GambleHub

Data Mesh: федеративна модель даних

(Розділ: Технології та Інфраструктура)

Коротке резюме

Data Mesh - це організаційна і технічна модель, де дані розглядаються як продукти доменних команд, а центральна роль платформи - забезпечити самообслуговування, стандарти і комплаєнс. Для iGaming це означає: команда Payments володіє «Deposit Events» і «Net Deposits Mart», команда Risk - «Fraud Signals», Games - «Bet Events» і «Leaderboards», а центральна платформа дає каталог, схем-контракти, доступи, моніторинг якості, фінопс та інструменти стрімінгу/ELT.

1) Принципи Data Mesh

1. Доменна відповідальність: кожен домен (Payments, Risk, Games, KYC/Compliance, CRM, Affiliate) володіє своїми наборами даних і їх життєвим циклом.
2. Дані як продукт: у кожного набору є власник, опис, SLO, SLA доступу, документація, версія, зворотний зв'язок і дорожня карта.
3. Self-serve платформа: стандартні пайплайни ingest/transform/serve, шаблони, безпека за замовчуванням, каталог і спостережуваність.
4. Федеративне управління: загальні стандарти схем, метрик, PII/локалізації та якості - в центрі; реалізація та еволюція - в доменах.

2) Операційна модель і ролі

Domain Data Product Owner (DPO): пріоритизація, SLO, беклог поліпшень продукту даних.
Domain Data Engineer/Analytics Engineer: схеми, пайплайни, тести DQ, версіонування.
Domain Steward: семантика полів, відповідність словнику метрик і PII-класифікації.
Platform Team: каталог, IAM/RBAC, Policy-as-Code, табличні формати (Delta/Iceberg/Hudi), оркестрація, спостережуваність, фінопс.
Federated Governance Board: затверджує стандарти (схеми, метрики, безпека), вирішує крос-доменні суперечки.

3) «Data Product» - паспорт та артефакти

Мінімальний склад продукту даних:
  • Contract (схема, типи, еволюція, сумісність).
  • API доступу (SQL/таблиця, topic/stream, файл/шер).
  • SLA/SLO (свіжість, доступність, якість).
  • DQ-тести (унікальність, діапазони, посилальна цілісність).
  • Документація (опис полів, приклади запитів, owner, контакт).
  • Версіонування (semantic versioning схеми, політика депрекейту).
  • Політики (PII, локалізація, retention/TTL, права).

Шаблон паспорта (YAML, приклад)

yaml name: bets. events. v1 domain: games owner: games-data@company interface:
sql: lakehouse. silver. bets_events stream: kafka://bets. events. v1 share: read-only (EU only)
schema_version: 1. 3. 0 slo:
freshness: "<= 5 min (p95)"
availability: ">= 99. 9%"
dq:
- unique: bet_id
- valid_values: currency in [EUR, USD, TRY, BRL]
- non_negative: [stake, payout]
security:
pii: false region: EU retention: 365d lineage:
sources: [game_engine. outbox, payments. psp. webhooks]
consumers: [crm. triggers, risk. realtime, dwh. fact_bets]
versioning:
compat: backward deprecation_policy: "60 days"

4) Інтероперабельність і стандарти

Схеми/контракти: Avro/Protobuf/JSON-Schema + Schema Registry; політика back-compat, заборона ламаючих змін без нової мажорної версії.
Семантичний шар: єдині визначення GGR, NGR, Net Deposits, LTV, когорти - як код (dbt metrics/semantic layer).
Ідентифікатори: глобальні'player _ id','tenant _ id','bet _ id', уніфіковані довідники країн/валют/провайдерів.
Метадані: обов'язкові колонки'ingest _ ts','schema _ version','trace _ id','source','region'.
Доступ: SQL (lakehouse/OLAP), стрім (Kafka/Pulsar), шарінг таблиць/снапшотів; формат обміну - Parquet/Delta/Iceberg.

5) Технологічний еталон (агностично до вендорів)

Ingest: Outbox/CDC из OLTP → Kafka → Lakehouse (Bronze).
Transform: ELT/dbt в Silver/Gold; інкрементальні'MERGE', SCD, матеріальні вітрини.
Serve: OLAP (ClickHouse/BigQuery/Snowflake), RT-движки (Pinot/Druid) для near-real-time.
Каталог/Lineage: єдиний каталог, авто-документація, граф залежностей.
Спостережуваність: метрики свіжості/SLO, DQ-асерт, лаги стріму, вартість.
Політики: IAM/RBAC/ABAC, шифрування, локалізація (зонна маршрутизація даних).

6) SLO/SLA для продуктів даних

Приклади цільових SLO:
  • Freshness: Bets Events (p95) ≤ 5 хв; Fraud Signals ≤ 30 сек; Net Deposits Mart ≤ 15 хв.
  • Availability: ≥ 99. 9% для інтерфейсів читання.
  • Quality: дублікати ≤ 0. 01%, частка порожніх обов'язкових полів ≤ 0. 1%, консистентність валют 100%.
  • Cost SLO: вартість сканів вітрини ≤ N $/день, small files ratio <10%.

7) Безпека, PII і локалізація

Класифікація: PII/чутливі фіндані/операційні.
Техмери: шифрування at-rest/in-transit; токенізація PII; маскування колонок; row-level фільтри по'tenant _ id'.
Локалізація: доменні продукти публікуються в дозволених регіонах (EU/TR/LATAM); транскордонний шарінг - тільки агрегати без PII.
Аудит: хто публікував/читав; версія схеми; запити на ескалацію прав - через узгодження.

8) ФінОпс та управління вартістю

Бюджети по доменах: ліміти compute, алерти перевитрати.
Сховище: класи зберігання + TTL (Bronze короткий, Silver середній, Gold довгий/агрегати).
Оптимізація запитів: партії/кластеризація, матеріалізовані уявлення, кеш результатів BI.
Small files: compaction/OPTIMIZE політики; цільовий розмір файлу 128-1024 МБ.

9) Життєвий цикл і еволюція

Версіонування: `domain. product. v{major}`; мінорні поля - back-compat.
Депрекейт: повідомлення споживачів, «дворельсовий» період, автоматичні алерти на старі версії.
Зміни схем: Pull Request в репозиторій контрактів; CI-тести сумісності; автопублікація в каталог.
Зворотній зв'язок: канал продукту (issue tracker), NPS споживачів, час відповіді на інциденти.

10) Конкретизація для iGaming - карта доменів і продуктів

Payments

`payments. psp. webhooks. v1` (stream)

`mart_net_deposits_daily. v1'( SQL) - SLO свіжості ≤ 15 хв; PII-free

Games

`bets. events. v1'( stream/SQL) - p95 ≤ 5 хв

`mart_ggr_daily. v1'( SQL/MV) - агрегати по країнам/іграм

Risk/Anti-fraud

`risk. signals. v1'( stream) - p95 ≤ 30 сек

`risk. case_mgmt. v1'( SQL) - SCD2 історії розслідувань

CRM/Personalization

`crm. triggers. v1'( stream) - сегментні тригери

`profile. features. online. v1'( KV/SQL) - онлайн-фічі (TTL)

KYC/Compliance

`kyc. status. v1'( SQL) - PII захищено, row-level policies

`responsible_gaming. events. v1'( stream) - ліміти/сигнали

11) Процеси та артефакти платформи

Каталог: пошук по домену/полях/PII мітках, передогляд схем і прикладів.
Генератори шаблонів: cookiecutter для нового продукту (паспорт, CI, DQ-тести, дашборд SLO).
Policy-as-Code: правила експорту, PII, шарінгу між регіонами.
Спостережуваність: готові дашборди: Freshness, DQ-помилки, Cost, Lineage, Stream lag.
Runbooks: інциденти свіжості/DQ/схем, аварійний депрекейт, відкат версій.

12) Міграція до Data Mesh (дорожня карта)

1. Інвентаризація поточних датасетів → угруповання по доменах.
2. Пілот 2-3 домену (Payments, Games, Risk) - оформити як продукти з паспортами.
3. Каталог і стандарти: схеми, метрики, PII/локалізація, DQ.
4. Self-serve: шаблони пайплайнів, CI/CD, моніторинг SLO.
5. Різання монолітних вітрин на доменні; «дворельсова» підтримка старих інтерфейсів.
6. Федеративна рада - регулярні сесії, рев'ю контракту змін.
7. Масштабування на CRM/Афіліати/Маркетинг, потім - на партнерські шери.

13) Чек-лист впровадження

Домени визначені; власники і канали зв'язку призначені.
Каталог запущено; паспорт кожного продукту опублікований.
Схеми - в репозиторії контрактів; CI тестує сумісність/DQ.
SLO/SLA задекларовані; дашборди Freshness/DQ/Cost доступні.
Політики PII/локалізації - кодом; аудит включено.
ФінОпс: бюджети, алерти, звіт «вартість по доменах».
Процес версіонування/депрекейту - документований і автоматизований.
Runbooks інцидентів - доступні і відтреновані (game-day).

14) Антипатерни

«Перейменували в Data Mesh, але все через центральну команду даних» - вузьке горлечко не усувається.
Відсутність єдиного словника метрик → GGR/NGR розрізняються між доменами.
Схеми без контрактів і тестів сумісності → «ламаючі» релізи.
Немає Self-serve → кожна таблиця створюється вручну, високий time-to-data.
Ігнорування PII/локалізації при крос-регіональному шарінгу.
Мікропродукти без власників/SLO - «занедбані» дані.

15) KPI успіху Data Mesh

Time-to-Data: від ідеї до доступного продукту даних (медіана ↓).
Повторне використання: число доменів-споживачів на продукт.
Якість: частка успішних DQ-перевірок, дефекти на млн подій.
Надійність: відповідність SLO свіжості/доступності.
Вартість: $/запит/користувач, частка small files, утилізація compute.
Швидкість змін: релізи схем/вітрин на тиждень.

Підсумки

Data Mesh - це не тільки технологія, але і керована федерація доменів, де дані - продукти зі своїми власниками, SLO, контрактами і метриками якості. У iGaming такий підхід знімає вузькі горлечка, прискорює інтеграції (антифрод, платежі, CRM), покращує прозорість метрик (GGR/NGR/LTV) і контролює вартість. Побудуйте сильну self-serve платформу, введіть федеративні стандарти і культуру «дані як продукт», і ваша аналітична екосистема масштабується разом з бізнесом - без втрати якості, швидкості і комплаєнсу.

Contact

Зв’яжіться з нами

Звертайтеся з будь-яких питань або за підтримкою.Ми завжди готові допомогти!

Telegram
@Gamble_GC
Розпочати інтеграцію

Email — обов’язковий. Telegram або WhatsApp — за бажанням.

Ваше ім’я необов’язково
Email необов’язково
Тема необов’язково
Повідомлення необов’язково
Telegram необов’язково
@
Якщо ви вкажете Telegram — ми відповімо й там, додатково до Email.
WhatsApp необов’язково
Формат: +код країни та номер (наприклад, +380XXXXXXXXX).

Натискаючи кнопку, ви погоджуєтесь на обробку даних.