Maʼlumotlar ombori
1) iGaming’dagi DWHning vazifasi va roli
DWH - hisobot, tahlil, komplayens va ML uchun ma’lumotlarni birlashtirish va servingning markaziy qatlami. U quyidagilarni ta’minlaydi:- Metriklarning yagona belgilari (GGR/NGR, ARPPU, Retention, Churn).
- Regulyatorlar va ichki steykxolderlar uchun reproduksiya qilinadigan hisobotlar.
- BI/operatsion panellar uchun tezkor vitrinalar va modellar uchun manbalar.
- Platforma darajasida sifat, lineage va xavfsizlikni nazorat qilish.
2) Arxitektura variantlari
2. 1 Classic DWH
ETL → DWH (yulduz/qor) → BI.
Afzalliklari: boshqariladigan modellar, kuchli konsistentlik.
Minuslar: qimmat yuklar, murakkab backfill, cheklangan moslashuvchanlik.
2. 2 Lakehouse DWH
Bronze/Silver/Gold ACID jadvallarida (Delta/Iceberg/Hudi) + SQL/MPP dvigateli.
Afzalliklari: yagona storedj, time-travel, oddiy reprocessing.
Kamchiliklar: qatlamlar va DQ intizomini, yetuk orkestrni talab qiladi.
2. 3 Gibrid
«Haqiqat manbai» (Bronze/Silver) sifatida Lakehouse, tezkor o’qish uchun MPP (ClickHouse/Pinot/Druid/Cloud DWH) da DWH-mart.
Afzalliklari: qiymat va unumdorlik balansi, moslashuvchan vitrinalar.
Kamchiliklar: sxemalar va katallarni qo’llab-quvvatlash, sinxronlashtirish kerak.
Tavsiya: iGaming uchun - Lakehouse + DWH-mart (gibrid). Bronze/Silver - standartlashtiriladi, Gold/Real-time marts - oʻqish yuklamasiga xizmat qiladi.
3) Ma’lumotlarni modellashtirish
3. 1 Yulduz va qor
Fakt jadvallari: tor, hodisali:’fact _ bets’,’fact _ payouts’,’fact _ payments’.
Oʻlchovlari:’dim _ users’(SCD),’dim _ games’,’dim _ providers’,’dim _ markets’.
Qor tanasi Silver (normallashtirish) da, Yulduz Gold (oʻqish) da mos keladi.
3. 2 Data Vault 2. 0 (integratsiya yadrosi)
Hubs (biznes kalitlari), Links (munosabatlar), Satellites (kontekst/tarix).
Uzoq davom etadigan provayderlar/PSP integratsiyalari uchun Silver dasturidan foydalanish.
3. 3 SCD I/II/III
RG/KYC/kanallar va o’yin atributlari uchun SCD II (RTP/o’zgaruvchanlik).
Qat’iy oraliqlar’valid _ from/valid _ to’, vaqt bo’yicha to’g’ri join-lar.
4) Yuklash: ETL/ELT, CDC va inkrementlar
ELT yondashuvi: Silver → DWH transformatsiyasiga yuklash.
CDC: Debezium/OLTP dan log-replikatsiya; merji idempotentnыy.
Inkrementlar: vaqt suvi (’updated _ at> max_loaded_ts') va/yoki xesh-delta bo’yicha.
Backfill/Reprocessing: time-travel, diapazonlar, kvotalar, dry-run taqqoslash.
sql
MERGE INTO silver. payments s
USING stage. payments_delta d
ON s. transaction_id = d. transaction_id
WHEN MATCHED THEN UPDATE SET
WHEN NOT MATCHED THEN INSERT;
5) Semantik qatlam va metrika
Metrics Store/Semantic Layer: GGR/NGR/Conversion/LTV yagona formulalari.
Ko’paytirish uchun metrik va «as-of» hisoblashni versiyalash.
Bitimlar: metrik nomlar, o’lchov birliklari, valyuta (base EUR) va’fx _ source’.
6) Vitrinalar va serving
Gold-vitrinalar: denormallashtirilgan, tayyor SLA (masalan, 06:00 gacha lok.) .
Operativ martlar: 1-5 daqiqalik panellar uchun ClickHouse/Pinot/Druid.
Eksport: CSV/JSON/PDF + hash; regulyatorlar uchun o’zgarmas paketlar (WORM).
sql
CREATE OR REPLACE VIEW gold. ggr_daily AS
SELECT
DATE(b. event_time) AS event_date,
b. market,
g. provider_id,
SUM(b. stake_base) AS stakes_eur,
SUM(p. amount_base) AS payouts_eur,
SUM(b. stake_base) - SUM(p. amount_base) AS ggr_eur
FROM silver. fact_bets b
LEFT JOIN silver. fact_payouts p
ON p. user_pseudo_id = b. user_pseudo_id
AND p. game_id = b. game_id
AND DATE(p. event_time) = DATE(b. event_time)
JOIN dim. games g ON g. game_id = b. game_id
GROUP BY 1,2,3;
7) Ma’lumotlar sifati (DQ) va kontraktlar
Schema-first: JSON/Euro registry + muvofiqlik testlari (consumer-driven).
DQ-как-код: completeness/validity/uniqueness/FK/range/temporal.
Reaksiya siyosati: critical → fail + DLQ; major/minor → tag va hisobot.
DQ kuzatilishi: Freshness/Completeness/Validity dashbordlari, yo’qolgan yozuvlar hunisi.
8) Xavfsizlik, maxfiylik va rezidentlik
PII-minimallashtirish: foydalanuvchilar psevdo-ID orqali; alohida mappinglar.
RLS/CLS: rollar va yurisdiksiyalar bo’yicha satr/satr bo’yicha kirish.
Shifrlash: TLS in-transit; at-rest - KMS/CMK rotatsiya bilan.
Data Residency: EEA/UK/BR uchun alohida kataloglar va kalitlar; asossiz kross-mintaqaviy join’onlarni taqiqlash.
DSAR/RTBF: hisoblab chiqiladigan proyeksiyalar va selektiv tahrirlash; Legal Hold hisobot artefaktlariga.
9) Unumdorlik va narx (Cost Engineering)
Partiyalashtirish: sana/bozor/tenant bo’yicha; klaster/Z-order’market’,’provider _ id’,’game _ id’,’user _ pseudo _ id’bo’yicha.
Formatlar: Parquet + statistika va kompresssiya; OPTIMIZE/VACUUM jadval bo’yicha.
Materiallashtirish: barqaror agregatlar va summary-jadvallar; uchayotganda «semiz» join’olardan qoching.
Kvotalar/Chargeback: og’ir so’rovlar/replay uchun budjetlar; cost/query, cost/GB hisobotlari.
Tiered storage: hot/warm/cold; aniq SLA tiklash.
10) Kuzatuv va boshqaruv
Payplaynlar metrikasi: davomiyligi, hajmlari, retraylari, laglari, ishdan chiqishga chidamliligi.
DWH metrikasi: javob vaqti/raqobatbardoshlik/kesh-xit/qiymat.
Lineage: manbalardan hisobotlargacha grafalar; o’zgarishlarda impact-tahlil.
SLO: Freshness Silver p95 ≤ 15 мин; Gold daily - soat 06:00 gacha tayyor; Validity ≥ 99. 9%; Completeness ≥ 99. 5%; foydalanish imkoniyati ≥ 99. 9%.
11) Multitenantlik va domen izolatsiyasi
schema/database/catalog bo’yicha tenant/bozorga bo’lish.
Kvotalar va resource groups; «shovqinli qo’shnilar» ni cheklash.
Tenantlar o’rtasidagi eksport/import siyosati, standartlashtirilgan kontraktlar.
12) Ma’lumotlar reyestri va hujjatlar
Data Catalog: owner, SLA, sxema, misollar, DQ qoidalari, lineage.
Metriklar/dashbordlar: formulalar va mas’uliyatli kartochkalar.
Change Log: mantiq, migratsiya, ta’sir (impact) versiyalari.
13) Jarayonlar va RACI
R (Responsible): Data Engineering (Silver/Gold, DAG’i modellari), Data Platform (infra, registry, DQ).
A (Accountable): Head of Data/CDO.
C (Consulted): Compliance/Legal/DPO, Finance (FX/GGR), Risk (RG/AML), SRE (SLO/стоимость).
I (Informed): BI, Mahsulot, Marketing, Operatsiyalar.
14) Joriy etish yo’l xaritasi
MVP (4-6 hafta):1. Lakehouse Bronze/Silver (ACID-jadvallar), CDC/Payments/Gameplay uchun inkrementlar.
2. Birinchi Gold-vitrinalar (GGR Daily, konvertatsiya), SLA soat 06:00 gacha.
3. DQ-kod sifatida (10-15 qoidalar) + Freshness/Completeness dashbordlari.
4. Maʼlumotlar katalogi va metriklarning asosiy semantik qatlami.
2-faza (6-12 hafta):- SCD II для users/games/providers; domenlarni kengaytirish.
- Real-time/near-real-time panellari uchun operativ martlar (ClickHouse/Pinot).
- Lineage/impact-tahlil, DSAR/RTBF protseduralari, hududlashtirish (EEA/UK).
- O’zgarishlarni avtosimulyatsiya qilish (dry-run), replelar va metriklarni taqqoslash.
- Chargeback/kvotalar, cost-dashbordlar; DR-mashqlar va time-travel tiklash.
- Vitrinalar va metrik kartochkalar hujjatlarini avtogeneratsiya qilish.
15) SQL namunalari
Stavkalar fakti (Silver, 3NF):sql
CREATE TABLE silver. fact_bets (
bet_id STRING PRIMARY KEY,
user_pseudo_id STRING NOT NULL,
game_id STRING NOT NULL,
stake_ccy DECIMAL(18,2) NOT NULL,
currency CHAR(3) NOT NULL,
stake_base DECIMAL(18,2) NOT NULL,
market CHAR(2) NOT NULL,
event_time TIMESTAMP NOT NULL
);
SCD II bilan ulanish (stavka vaqtida RG-maqom olish):
sql
SELECT b. bet_id, u. rg_status
FROM silver. fact_bets b
JOIN dim. users_scd u
ON u. user_pseudo_id = b. user_pseudo_id
AND b. event_time >= u. valid_from
AND (u. valid_to IS NULL OR b. event_time < u. valid_to);
Quyidagilar bo’yicha to’liqlikni nazorat qilish:
sql
SELECT market, DATE(event_time) d, COUNT() n
FROM silver. fact_bets
GROUP BY market, DATE(event_time)
HAVING n = 0;
16) Sotishdan oldingi chek-varaq
- Reyestrdagi sxemalar va kontraktlar, muvofiqlik testlari yashil rangda.
- CDC/inkrementlar va MERGE protseduralari idempotentdir.
- Gold-vitrinalar SLAga ega, metrik formulalar qayd etilgan.
- DQ qoidalari faol (critical → fail + DLQ), Freshness/Completeness dashbordlari.
- RBAC/ABAC, shifrlash, hududlar bo’yicha rezidentlik, kirish jurnallari.
- Lineage/impact kiritilgan; time-travel/backup/DR tekshirildi.
- Nazorat ostidagi narx: partiyalar, klasterlashtirish, materiallashtirish, kvotalar.
17) Anti-patternlar va tavakkalchiliklar
«Qatlamsiz bitta yog’li DWH»: xom va hisobot ma’lumotlari aralashmasi → xaos va qimmatbaho tuzatishlar.
Full reload har kuni keraksiz: Inkrement/CDC dan foydalaning.
Egasiz va formulasiz Gold: haqiqatning yagona versiyasi yo’qligi → nizolar va regressiyalar.
PII tahliliy qatlamlarda: mappinglarni alohida tuting, CLS/RLS.
DQ/lineage yo’qligi: regulyatorlar/audit uchun isbotlash imkoniyati yo’q.
Boshqarilmaydigan qiymat: partiyalar/optimallashtirish/kvotalar yo’q.
18) Lugʻat (qisqacha)
DWH - konsolidatsiya va tahlil uchun ma’lumotlar ombori.
Lakehouse - data lake + ACID jadvallari va SQL dvigateli.
CDC - OLTP’dan oʻzgarishlarni olib tashlash.
SCD - sekin o’zgaruvchan o’lchovlar (I/II/III).
Gold-vitrina - iste’mol qilishga tayyor hisobot jadvali/taqdimot.
Semantic Layer - metrika va atributlarning yagona ta’riflari.
19) Jami
iGaming uchun zamonaviy DWH - bu «katta jadval» emas, balki boshqariladigan platforma: Bronze/Silver/Gold qatlamlari, qat’iy shartnomalar va DQ, yagona metrika va lineage, maxfiylik va rezidentlik, unumdorlik va tejamkorlik. Siz Lakehouse + DWH-mart gibridini tuzib, audit, masshtablar va yangi bozorlarga tayyor bo’lgan tezkor va tekshiriladigan qarorlar olasiz.