GH GambleHub

Маалымат кампалары жана OLAP моделдери

(Бөлүк: Технология жана инфраструктура)

Кыскача резюме

Data Storage (DWH) - iGaming аналитикасынын таяныч катмары: жөнгө салуучу органдарга отчеттор, продуктылар/рыноктор боюнча кирешелүүлүк, LTV, антифрод аналитикасы, CRM сегментациясы жана реалдуу убакыт дашборддору. Туруктуу DWH так маалымат моделине негизделген (Star/Snowflake/Data Vault), ишенимдүү интеграция (ETL/ELT + CDC), ойлонулган аткаруу (колонка кыймылдаткычтары, бөлүктөрү, MVs), катуу семантика, коопсуздук/PII жана наркын башкаруу

Архитектуралык ыкмалар

Классикалык DWH (Kimball vs Inmon)

Kimball (Dimensional/Star/Snowflake): тез отчеттук терезелер; фактыларга жана өлчөөлөргө, SCD тарыхына көңүл бурат. Fast тайм-ту-вэлю.
Inmon (Corporate Information Factory): нормалдуу ядро + айнек; оор, бирок катуу жана борборлоштурулган.

Data Vault 2. 0

Hubs-Links-Спутниктер: булактарын бириктирүү жана өзгөрүүлөрдү текшерүү үчүн масштабдуу "чийки" модели. Үстү Жылдыздын витриналары.

Data Lake / Lakehouse

Data Lake: чийки файлдар (Parquet/ORC) + каталогдор (Hive/Glue/Unity/Metastore).
Lakehouse: batch/агым үчүн бирдиктүү катмар, ACID стол (Delta/Iceberg/Hudi), убакыт саякат, upsert/merge, компакт-файлдар, Z-order/Clustering.

Medallion (Bronze–Silver–Gold)

Bronze: чийки маалыматтар (чийки) + CDC.
Silver: тазаланган жана кондициялуу.
Алтын: бизнес-дисплей/метр/куб.
гибриддер үчүн ылайыктуу (Kafka → Bronze; Silver в Lakehouse; Gold в ClickHouse/BigQuery/Snowflake).

OLAP моделдери: Star, Snowflake, Data Vault

Star Schema

Fact таблицалар: транзакциялар (коюмдар, депозиттер, сессиялар).
Dimensions: оюнчу, оюн, провайдер, дата/убакыт, гео, тартуу каналы.
Артыкчылыктары: жөнөкөй джойндор, болжолдонгон аткаруу.

Snowflake

Өлчөөлөрдү нормалдаштыруу (өлкөлөрдүн/аймактардын/шаарлардын иерархиясы, продукциянын иерархиясы).
Артыкчылыктары: азыраак кайталоо; минус - көбүрөөк джойндор.

Data Vault → Star

Чийки өзгөрүүлөр DV (аудит, толук кайталануучулук), отчеттук терезелер Star/Snowflake катары курулган.

Интеграция: ETL/ELT, CDC, жай өзгөрүүлөр

Paypline

OLTP Outbox/CDC (Postgres/MySQL) → Kafka/connectors → Bronze.
ELT: Silver тазалоо, дедуп, нормалдаштыруу.
Бизнес-логика жана Gold/Display чогултуу.

SCD (Slowly Changing Dimensions)

Type 1: кайра жазуу (анча маанилүү эмес талаалар үчүн).
Type 2: Тарыхтуулук (даталанган версиялар) - профилдер/каналдар/баалар үчүн стандарт.
Type 3: баалуулуктардын жуп сактоо (сейрек).

Мисал SCD2 (SQL, жалпы көрүнүшү):
sql
-- insert new dimension version
INSERT INTO dim_player (player_sk, player_id, country, valid_from, valid_to, is_current)
SELECT gen_sk(), s. player_id, s. country, now(), '9999-12-31', true
FROM staging_player s
LEFT JOIN dim_player d ON d. player_id = s. player_id AND d. is_current = true
WHERE d. player_id IS NULL OR d. country <> s. country;

-- closing the old version
UPDATE dim_player d
SET valid_to = now(), is_current = false
FROM staging_player s
WHERE d. player_id = s. player_id AND d. is_current = true AND d. country <> s. country;

Семантикалык катмар жана "чыныгы" метриктер

GGR, NGR, Net Deposits, ARPPU, LTV, Churn, Retention Cohorts.
Код катары метриктер (dbt metrics/LookML/Semantic Layer) → бардык отчеттордо бирдей формулалар.
Календарь: TZ/региондор/дем алыш/кампаниялар атрибуттары менен күн/саат таблицасы.

Сактоо жана кыймылдаткычтар: кароо үчүн тандоо

Колонка жана булут DWH

ClickHouse: ультра тез сканерлер/агрегациялар, материалдаштырылган көрүнүштөр, проекциялар; окуялар/телеметрия жана маркетинг дүкөндөр үчүн айырмаланат.
BigQuery: Server, масштаб, автоматтык кэш/кластерлер; сканер баасы; аралаш жүк жана ad-hoc үчүн ыңгайлуу.
Snowflake: compute/storage бөлүмү, талап боюнча кластерлер, убакыт саякат; ар кандай командалар үчүн ачык-айкын.
Redshift/Vertica/Pinot/Druid: параметрлери астында OLAP/реалдуу убакыт.

Тюнинг

Датасы/аймагы/каналы боюнча партиялаштыруу.
Кластерлөө/чыпкалоо/джойн ачкычтары боюнча сорттоо.
Кысуу жана сөздүктөрдү коддоо.
Pre-агрегация (rollup, кубес), материалдык көрүнүшү.
Approx өзгөчөлүктөрү (HyperLogLog/approx_distinct) арзан баа берүү үчүн.

аткаруу долбоорлоо

Партиялаштыруу жана кластерлештирүү

Партиция - бөлүктүн чеги. Окуялар үчүн күндүзгү/сааттык партиялар.
Clusterization (sort keys/Z-order) - диапазондорун жана join-y тездетет.

Материалдык көрүнүшү (MV)

GGR/NGR алдын ала эсеби күн/өлкөлөр/буюмдар боюнча.
CDC агымынан инкременталдык жаңыртуу.

Мисал ClickHouse (Мердж MV):
sql
CREATE MATERIALIZED VIEW mv_ggr_daily
ENGINE = SummingMergeTree()
PARTITION BY toYYYYMMDD(ts)
ORDER BY (country, product_id, toDate(ts)) AS
SELECT toDate(ts) AS d,
country,
product_id,
sum(stake) AS stake_sum,
sum(win)  AS win_sum,
sum(stake - win) AS ggr
FROM bets
GROUP BY d, country, product_id;

Инкременталдык моделдер (dbt/ELT)

parties боюнча 'insert _ overwrite' стратегиялары, CDC ачкычтары боюнча 'merge', 'updated _ at' боюнча 'watermark'.

Join стратегиялары

Ар бир партиялык сегментте өлчөө репликасы (denorm).
Broadcast small dims; shuffle large facts ачкыч боюнча сорттоо менен.

Баасы: контролдоо жана оптималдаштыруу

BigQuery/Snowflake: сканердин өлчөмүн чектөө (партияларды/кластерлерди долбоорлоо), result cache/materialized views, BI auto-квесттерди чектөө.
ClickHouse: Партиялардын көлөмү, Мерджердин жыштыгы, сактоо бюджети (чийки окуялар үчүн TTL, агрегациялар бышык).
Метриканын семантикасы "кош" эсептөөлөрдү кыскартат.
Data pruning: Bronze үчүн retenshn, Gold үчүн чогултуу.

Маалымат сапаты (DQ), каталог, lineage

DQ чектери: толуктугу (completeness), уникалдуулугу, диапазондору, бизнес эрежелери (мисалы, GGR ≥ 0 бирдиктеринде).
Data Catalog & Lineage: Таблицалардын/талаалардын сүрөттөлүшү, ээлери, PII классификациясы, отчеттун булагына чейин.
Схемаларды көзөмөлдөө: иш-чаралар/CDC үчүн келишим, туура келбеген өзгөрүүлөр менен алерталар.

Коопсуздук, комплаенс жана көп тенанттуулук

PII сегментациялоо: өзүнчө зоналар, маскировка/псевдоним, KMS шифрлөө менен колонкалар.
RBAC/ABAC: "need-to-know" үчүн долбоор/схемалар/таблицалар/саптар (RLS) деңгээлиндеги ролдор.
Маалыматтарды локалдаштыруу: аймактык buckets/warehouses (EU/TR/LATAM).
Кирүү аудити: витриналарды жана моделдерди ким окуду/алмаштырды.

DR, backaps жана кайталоо

Data Code версиялоо (dbt/git), Dev/QA/Prod чөйрөсү.
Метастор/каталог Snapshots + таблицаларды чыгаруу (time-travel).
Retenshn/TTL катмарлары Bronze/күмүш/алтын; маанилүү терезелерди экспорттоо.
Game-day: дисплей калыбына келтирүү, метр бүтүндүгүн текшерүү.

Реалдуу убакыт жана гибриддик терезелер

Stream-to-OLAP: Kafka → ClickHouse/Pinot/Druid мүнөт терезелер үчүн.
Materialized views + дээрлик онлайн тактоо үчүн CDC (5-15 мин).
Семантикалык катмар бирдей бойдон калууда: метриктер реалдуу убакыт жана батч менен бирдей.

"GGR күн жана өлкө боюнча" (жалпыланган SQL)

sql
CREATE TABLE fact_bets (
bet_id   BIGINT,
player_sk BIGINT,
game_sk  BIGINT,
country_sk BIGINT,
stake   DECIMAL(18,2),
win    DECIMAL(18,2),
ts     TIMESTAMP
) PARTITION BY DATE(ts);

CREATE TABLE dim_country (
country_sk BIGINT PRIMARY KEY,
iso2    STRING,
region   STRING,
valid_from TIMESTAMP,
valid_to  TIMESTAMP,
is_current BOOL
);

-- Showcase
CREATE MATERIALIZED VIEW mart_ggr_daily AS
SELECT
DATE(ts) as d,
c. region,
SUM(stake) AS stake_sum,
SUM(win)  AS win_sum,
SUM(stake - win) AS ggr
FROM fact_bets f
JOIN dim_country c ON c. country_sk = f. country_sk AND c. is_current
GROUP BY d, c. region;

Киргизүү чек-тизмеси

1. Булактарды жана домендерди аныктап, метриканын сөздүгүн бекитиңиз.
2. моделин тандоо: чийки/аудит катмарлары үчүн DV + дисплей үчүн Star.
3. Негизги суроо-талаптарга жана терезелерге партияларды/кластерлерди долбоорлоо.
4. CDC/ELT, SCD саясаты жана surrogate keys.
5. Семантикалык катмарды (код катары метрика) жана күн/саат календарын киргизиңиз.
6. Кымбат отчеттор үчүн MVs/алдын ала агрегаттарды түзүү.
7. DQ/каталог/lineage жана схемаларды көзөмөлдөө кирет.
8. RBAC/PII/локализацияны, шифрлөөнү, аудитти аныктаңыз.
9. p95/p99 мониторинг орнотуу, наркы, деградация жана ашыкча боюнча Алерт.
10. Үзгүлтүксүз DR-машыгуулар жана айлана-чөйрөнүн кайталанышы.

Антипаттерндер

"Партиясыз бир чоң факт" → терабайт сканерлери жана эсеп өсүп жатат.
Ар кандай дашборддордогу метриктердин макулдашылбаган аныктамалары.
Бизнес тарыхты талап кылган жерде SCD2 жоктугу.
Өлчөөнүн эрте нормалдашуусу: ашыкча джойндор жана жай отчеттор.
Чийки маалыматтар жок DQ чектери жана lineage → отчеттор "эч нерсе жөнүндө".
Retenia/TTL → таштанды сактоо жана жарылуу наркы жок.

Натыйжалары

Ишенимдүү iGaming-DWH - бул так модель (DV → Star), бирдиктүү сөздүк метрика, туура партия/кластерлештирүү, материалдаштырылган витриналар, катуу DQ/сызык, ошондой эле RBAC/PII/локализация. сергектик үчүн гибриддик агымын кошуу, башкарылуучу ELT жана наркы тартип - жана турнирлер, жөнгө салуучу отчеттор жана p99 жана бюджет күтүлбөгөн ad-hoc изилдөө боюнча масштабдуу туруктуу аналитикалык аянтчаны алуу.

Contact

Биз менен байланышыңыз

Кандай гана суроо же колдоо керек болбосун — бизге кайрылыңыз.Биз дайым жардам берүүгө даярбыз!

Интеграцияны баштоо

Email — милдеттүү. Telegram же WhatsApp — каалооңузга жараша.

Атыңыз милдеттүү эмес
Email милдеттүү эмес
Тема милдеттүү эмес
Билдирүү милдеттүү эмес
Telegram милдеттүү эмес
@
Эгер Telegram көрсөтсөңүз — Emailден тышкары ошол жактан да жооп беребиз.
WhatsApp милдеттүү эмес
Формат: өлкөнүн коду жана номер (мисалы, +996XXXXXXXXX).

Түшүрүү баскычын басуу менен сиз маалыматтарыңыздын иштетилишине макул болосуз.