GH GambleHub

Ma’lumotlarni boyitish

1) Vazifasi va biznes qiymati

Boyitish «xom» hodisalarni foydali faktlarga aylantiradi, kontekst va belgilar qo’shadi:
  • Moliya/hisobot: fx-summalarni normallashtirish, bozorlarga/soliq stavkalariga bog’lash, GGR/NGR hisob-kitobi.
  • Komplayens/AML/RG: tavakkalchilik skoringlari, sanksiya/RER-belgilar, RG-limitlar, xulq-atvor belgilari.
  • Marketing/mahsulot: trafik manbalari, segmentlar, missiyalar/kvestlar, shaxsiylashtirish.
  • SRE/amallar: trafik uchun geo/ASN, mijoz/qurilma turi, fichflaglar va relizlar.

Asosiy natija - modellarning aniqligi, hisobotlar sifati va qarorlar qabul qilish tezligini oshirish.


2) Boyituvchi manbalar (namunaviy katalog)

Referens/kataloglar: o’yinlar, provayderlar, bozorlar/yurisdiksiyalar, valyutalar, soliq jadvallari, bayramlar taqvimi.
KYC/KYB/RG: tekshirish darajalari, maqomlar, o’z-o’zidan istisnolar, limitlar, yosh guruhlari.
AML/sanksiyalar/PEP: skrining xitlari, ro’yxatlar, xavf darajalari.
Tarmoq va qurilmalar: IP → geo/ASN, qurilma/OS/brauzer, device fingerprint.
To’lov provayderlari (PSP): BIN-jadvallar, usullar, MCC, tavakkalchilik belgilari.
FX/vaqt: hodisa sanasidagi valyuta kurslari, mahalliy vaqt zonalari/DST.
Kontent va marketing: manbalar/kampaniyalar/UTM, affiliates, segmentlar.
Modellar va evristiklar: oldindan o’qitilgan skoringlar, embeddinglar, toifali mappinglar.


3) Boyitish turlari

Lookup-joyn: kalit bo’yicha nuqtaviy taqqoslash (game_id, BIN, ip_range, user_pseudo_id).
Dimension attach: oʻlchamlarni ulash (dim.) faktlarga.
Derived fields: hisoblanadigan ustunlar (amount_base, local_time, tax_rate).
Aggregations/velocity: derazalar uchun hisoblagichlar (N stavkalar/min, depozitlar summasi/soat).
Risk/behavioral features: «oxirgi voqeadan keyingi vaqt», share-of-wallet, tungi faollik.
Geo/ASN/Device: mamlakat kodi, mintaqa, operator, qurilma/brauzer turi.
Semantic mappings: provayderlar/o’yinlar tasnifi, o’yinchilar klasterlari.
ML fichlari: onlayn/oflayn modellashtirish uchun belgilar (Feature Store).


4) Qayerda boyitish kerak: Batch vs Stream

Stream (real-time): antifrod, RG-triggerlar, SRE alertlari - kechikishlar p95 ≤ 2-5 s; lookup (Redis/Scylla), taymaut provayderlariga asinxron so’rovlar.
Batch (mikro-batchi/kundalik): Gold (GGR/RG/AML) vitrinalari, solishtirmalar, hisobotlar - barqarorlik va to’liqlik latentlikdan muhimroqdir.
Gibrid: tezkor onlayn belgi + tungi haddan tashqari boyitish (reconciliation/accuracy).


5) Arxitektura referensi

1. Bronze - xom voqealar (append-only).
2. Silver (clean/conform) - normallashtirish, kalitlar, birlamchi lookup’i (fx, geo, dim.) .
3. Enrichment Layer - kengaytirilgan belgilar, deraza agregatlari, xavf belgilari.
4. Feature Store - belgilar registri (onlayn/oflayn muvofiqlik).
5. Gold - BI/regulyator/model ostidagi vitrinalar; o’zgarmas artefaktlar.
6. Servislar - API/GraphQL, hisobot eksportlari, real-time alertlari.

Komponentlar: Kafka/Redpanda, Flink/Spark/Beam, Redis/Scylla (lookup), ClickHouse/Pinot (tezkor o’qish), Lakehouse (Delta/Iceberg/Hudi).


6) Kontraktlar va sxemalar

Schema-first:’event _ time’,’schema _ version’, barqaror kalitlar (user_pseudo_id, game_id, transaction_id).
Boyitish belgilari:’enrichment. version`, `enrichment. sources`, `fx_source`, `geo_source`, `model_version`.
Version: yangi belgilar nullable sifatida qoʻshiladi; breaking-o’zgarishlar - ’/v2’va qo’sh yozuv orqali.


7) Boyitish namunalari (SQL/psevdokod)

7. 1 FX-normallashtirish va lokal vaqt

sql
SELECT p.transaction_id,
p.amount_orig,
p.currency,
r.rate   AS fx_rate_used,
p.amount_orig r.rate AS amount_base,
p.event_time,
convert_timezone(m.tz, 'UTC', p.event_time) AS local_time,
r.fx_source
FROM bronze.payment_events p
JOIN dim.fx_rates r
ON r.date = DATE(p.event_time) AND r.ccy_from = p.currency AND r.ccy_to = 'EUR'
JOIN dim.markets m ON m.code = p.market;

7. IP bo’yicha 2 Geo/ASN (psevdokod)

python geo = geo_db.lookup(ip)
asn = asn_db.lookup(ip)
record["geo_country"] = geo.country record["asn"] = asn.number record["enrichment"]["geo_source"] = "mmdb:2025-10-01"

7. 3 Depozitlar tezligining deraza belgilari (stream)

sql
SELECT user_pseudo_id,
TUMBLE_START(event_time, INTERVAL '10' MINUTE) AS win_start,
COUNT() AS deposits_10m,
SUM(amount_base) AS deposits_sum_10m
FROM silver.payments
GROUP BY user_pseudo_id, TUMBLE(event_time, INTERVAL '10' MINUTE);

7. 4 RG-limitlar bilan uyg’unlik

sql
SELECT b., r.daily_deposit_limit, r.self_exclusion
FROM silver.bets b
LEFT JOIN dim.rg_limits r USING (user_pseudo_id);

8) Boyitish sifati (DQ)

Eng kam qoidalar:
  • FX:’fx _ rate _ used’NULL’,’fx _ source’whitelist’dan, hisob-kitob’amount _ base ≥ 0’.
  • Geo/ASN: muvaffaqiyatli lookups ulushi ≥ 98% (bozorlar bo’yicha), ma’lumotnomada «country».
  • RG/AML belgilari:’valid _ from/valid _ to (SCD II); tarixda «teshiklar» yo’qligi.
  • Agregatlar/oynalar: oynalarning toʻgʻriligi (ikki marta hisobga olinmagan), completeness ≥ 99. 5%.
  • Modellar versiyasi:’model _ version’mavjud, belgilar dreyfini nazorat qilish.
YAML qoidalari misoli:
yaml table: enriched.payments rules:
- name: fx_present type: not_null column: fx_rate_used severity: critical
- name: country_known type: in_set column: geo_country set_ref: ref.countries severity: major
- name: rg_scd_valid type: scd_validity columns: [valid_from, valid_to]
severity: major

9) Maxfiylik va komplayens

PII ni minimallashtirish: psevdo-ID bo’yicha boyiting, haqiqiy identifikatorlar - alohida konturda.
Geo-lokalizatsiya va rezidentlik: mintaqa bo’yicha yo’naltirish (EEA/UK/BR), alohida shifrlash kalitlari.
DSAR/RTBF: boyitilgan proyeksiyalar «yashirish «/tahririyatni qo’llab-quvvatlashi kerak; istisnolar uchun huquqiy asoslarni saqlang.
Legal Hold: hisobot artefaktlari/keyslari uchun olib tashlashni muzlatish.


10) Kuzatish va lineage

Linedj: xom hodisadan → lookup/agregatlar → vitrinalar/modellar; manbalarning versiyalarini yozib oling (’fx _ source’,’geo _ source’,’bin _ source’).
SLI/SLO: freshness p95 (Silver) ≤ 15 мин; muvaffaqiyatli geo-lookups ≥ 98%; asosiy belgilari to’ldirilgan yozuvlar ulushi ≥ 99%; latency enrich-strim p95 ≤ 2-5 s.
Dashbordlar: manbalar bo’yicha completeness issiqlik xaritasi, ma’lumotnomalar/modellar versiyalari xaritasi, «qimmatbaho» join’lar monitorlari, belgilar dreyfi.


11) Qiymati va unumdorligi

Keshlar/materiallashtirish: tez-tez lookup’va Redis/Scylla; davriy snapshotlar.
Ixcham belgilar: agregatlarni saqlang («xom» ro’yxatlar emas); Parquet/ustunli formatlardan foydalaning.
Partiyalashtirish: sana/bozor/tenant bo’yicha; tez-tez filtrlanadigan maydonlar bo’yicha klasterlash.
Adaptiv chastota: og’ir enrich-joblar - tunda; realtime - faqat tanqidiy.
Chargeback: cost/query va cost/GB hisobi.


12) Patternlar va anti-patternlar

Patternlar:
  • Dimension Lookup + SCD II RG/KYC/provayderlar uchun.
  • Taymaut va fallback bilan Async Enrichment («unknown» + takrorlash belgisi).
  • Feature Store onlayn/offline muvofiqlashtirish va o’tkazuvchanlik testlari bilan.
  • Boyitish uchun Rule-as-Code (chegara/toifali xaritalar).
Anti-patternlar:
  • Issiq yoʻlda keshsiz tashqi APIga qattiq bogʻlash.
  • Manbalarning belgilanmagan versiyasi (’fx _ source’,’geo _ source’).
  • «Hamma narsa bilan» ning denormallashuvi (qiymat/murakkablik portlashlari).
  • PIIni tahliliy qatlamlarga kiritish.

13) Jarayonlar va RACI

R (Responsible): Data Engineering (payplaynlar enrich/stream), Domain Owners (belgilar semantikasi), MLOps (Feature Store).
A (Accountable): Head of Data / Chief Data Officer.
C (Consulted): Compliance/Legal/DPO, Finance (FX/налоги), Risk (RG/AML), SRE.
I (Informed): BI/Mahsulot/Marketing/Operatsiyalar.


14) Joriy etish yo’l xaritasi

MVP (2-4 hafta):

1. Boyituvchi manbalar katalogi (fx, geo, markets, RG/KYC).

2. Silver-normalizatsiya + bazaviy lookup’i (fx/geo/dim.) .

3. Birinchi agregatlar velocity (depozitlar/stavkalar) va enriched. v1 jadvallar.

4. Dashbord completeness/freshness, manbalar versiyasi.

2-bosqich (4-8 hafta):
  • Sanksiyalar/PER/CUV, BIN-PSP, device fingerprint jadvallarini ulash.
  • Feature Store (belgilar yadrosi) + onlayn-kesh, Flink realtime-boyitish.
  • DQ qoidalari enrich-qatlam, lineage va «dry-run» simulyatsiyasiga.
3-faza (8-12 hafta):
  • Personalizatsiya (missiyalar/kvestlar) va RG/AML-detektorlar.
  • Qiymatni boshqarish (kvotalar, materiallashtirish, Z-order), ko’p mintaqa.
  • Belgilar hujjatlari va katalogning avtogeneratsiyasi («feature cards»).

15) Sotishdan oldingi sifat chek-varaqasi

  • Kelishilgan kalitlar va sxemalar, manbalarning versiyalari imzolandi.
  • fx/geo/RG/sanksiyalar/derazalar uchun DQ qoidalari; alertlar va SLO.
  • Tashqi lookup’lar uchun kesh/taymaut va fallback.
  • Linedj va dashbordlar qiymati/unumdorligi.
  • Boyitilgan jadvallar uchun DSAR/RTBF/Legal Hold protseduralari.
  • Belgilar hujjatlari (owner, formulalar, SLO, ta’sir).

16) Tez - tez xatolar va ulardan qanday qochish mumkin

Maʼlumotnoma/modellarning belgilanmagan versiyalari: har doim’_ source’va’model _ version’ni oʻrnating.
fx «orqa son» bilan hisoblash: hodisa paytidagi kursdan foydalaning; FX manbasini saqlang.
PII aralashtirish: mappinglarni tokenlashtiring va izolyatsiya qiling.
Agregatlarda ikki marta hisobga olish: derazalar va dedupni tekshiring.
Keshsiz sinxron tashqi qoʻngʻiroqlar: async + kesh/retraylarni kiriting.
Onlayn/offline transformatsiyalarning yagona kodi, muvofiqlik testlari.


17) Lugʻat (qisqacha)

Lookup/Dimension attach - ma’lumotnomani kalit faktiga ulash.
Feature Store - ML uchun belgilar registri va servingi.
SCD II - o’lchovlarni validlik oralig’i bilan tarixlashtirish.
FX - valyuta kurslari va summalarni normallashtirish.
ASN - tarmoqning avtonom tizimi; antifrod va geo-tahlil uchun foydalidir.


18) Jami

Boyitish - voqealarni bilimga aylantirish intizomi: kelishilgan kalitlar va sxemalar, nazorat qilinadigan lookup’i va agregatlar, versiyalangan manbalar, andoza maxfiylik, DQ va kuzatish. Ta’riflangan patternlarga amal qilib, siz hisobot berish, personallashtirish va real-time xavf detektorlariga tayyor bo’lgan, qayta tiklanadigan, tejamkor va komplayent ko’rinishlarga ega bo’lasiz.

Contact

Biz bilan bog‘laning

Har qanday savol yoki yordam bo‘yicha bizga murojaat qiling.Doimo yordam berishga tayyormiz.

Integratsiyani boshlash

Email — majburiy. Telegram yoki WhatsApp — ixtiyoriy.

Ismingiz ixtiyoriy
Email ixtiyoriy
Mavzu ixtiyoriy
Xabar ixtiyoriy
Telegram ixtiyoriy
@
Agar Telegram qoldirilgan bo‘lsa — javob Email bilan birga o‘sha yerga ham yuboriladi.
WhatsApp ixtiyoriy
Format: mamlakat kodi va raqam (masalan, +998XXXXXXXX).

Yuborish orqali ma'lumotlaringiz qayta ishlanishiga rozilik bildirasiz.