Veri zenginleştirme
1) Amaç ve iş değeri
Zenginleştirme, "ham" olayları bağlam ve işaretler ekleyerek yararlı gerçeklere dönüştürür:- Finans/raporlama: fx-normalizasyonu, piyasalara/vergi oranlarına bağlama, GGR/NGR'nin hesaplanması.
- Uyum/AML/RG: risk puanları, yaptırımlar/PEP etiketleri, RG sınırları, davranışsal özellikler.
- Pazarlama/ürün: trafik kaynakları, segmentler, görevler/görevler, kişiselleştirme.
- SRE/işlemler: Trafik için geo/ASN, istemci/cihaz tipi, özellik bayrakları ve sürümleri.
Anahtar sonuç, modellerin daha iyi doğruluğu, raporların kalitesi ve karar verme hızıdır.
2) Zenginleştirme kaynakları (örnek katalog)
Referans/kataloglar: oyunlar, sağlayıcılar, pazarlar/yargı alanları, para birimleri, vergi tabloları, tatil takvimi.
KYC/KYB/RG: doğrulama seviyeleri, durumlar, kendini dışlama, sınırlar, yaş grupları.
AML/yaptırımlar/PEP: tarama isabetleri, listeler, risk seviyeleri.
Ağlar ve cihazlar: IP> geo/ASN, cihaz/OS/tarayıcı, cihaz parmak izi.
Ödeme sağlayıcıları (PSP): BIN tabloları, yöntemler, MCC, risk etiketleri.
FX/saat: Olay tarihindeki döviz kurları, yerel saat dilimleri/DST.
İçerik ve pazarlama: kaynaklar/kampanyalar/UTM, bağlı kuruluşlar, segmentler.
Modeller ve sezgisel yöntemler: Önceden eğitilmiş puanlama, gömme, kategorik haritalama.
3) Zenginleştirme türleri
Lookup-joint: anahtarla nokta eşleme (game_id, BIN, ip_range, user_pseudo_id).
Boyut eki: Boyutların (loş) gerçeklere eklenmesi.
Türetilmiş alanlar: hesaplanmış sütunlar (amount_base, local_time, tax_rate).
Toplama/hız: pencereler için sayaçlar (N oranları/dak, depozito miktarı/saat).
Risk/davranışsal özellikler: "Son olaydan bu yana geçen süre", cüzdan paylaşımı, gece etkinliği.
Geo/ASN/Cihaz: ülke kodu, bölge, operatör, cihaz/tarayıcı türü.
Anlamsal eşlemeler: sağlayıcı/oyun sınıflandırması, oyuncu kümeleri.
Online/Offline Modelleme için ML Özellikleri (Feature Store)
4) Nerede zenginleştirilir: Batch vs Stream
Akış (gerçek zamanlı): antifraud, RG tetikleyicileri, SRE uyarıları - p95 gecikmeleri ≤ 2-5 s; Önbelleklere (Redis/Scylla), zaman aşımı olan sağlayıcılara asenkron isteklere bakın.
Parti (mikro-parti/günlük): Altın vitrinler (GGR/RG/AML), mutabakatlar, raporlar - istikrar ve bütünlük gecikmeden daha önemlidir.
Hibrit: hızlı çevrimiçi özellik + gece yeniden zenginleştirme (uzlaşma/doğruluk).
5) Mimari referans
1. Bronz - ham olaylar (yalnızca ekle).
2. Gümüş (temiz/uygun) - normalleştirme, tuşlar, birincil arama've (fx, geo, loş.).
3. Zenginleştirme Katmanı - genişletilmiş özellikler, pencere kümeleri, risk etiketleri.
4. Özellik Mağazası - karakteristik kayıt (çevrimiçi/çevrimdışı tutarlılık).
5. Altın - BI/regülatör/modeller için vitrinler; Değişmez eserler.
6. Hizmetler - API/GraphQL, rapor edilen ihracat, gerçek zamanlı uyarılar.
Bileşenler: Kafka/Redpanda, Flink/Spark/Beam, Redis/Scylla (arama), ClickHouse/Pinot (canlı okuma), Lakehouse (Delta/Iceberg/Hudi).
6) Sözleşmeler ve planlar
Şema-ilk: 'event _ time', 'schema _ version', kararlı anahtarlar (user_pseudo_id, game_id, transaction_id).
Zenginleştirme işaretleri: 'zenginleştirme. Versiyon ',' zenginleştirme. Kaynaklar ',' fx _ source ',' geo _ source ',' model _ version '.
Sürüm oluşturma: yeni özellikler geçersiz olarak eklenir; Değişiklikleri kırmak -'/v2've çift giriş yoluyla.
7) Zenginleştirme örnekleri (SQL/pseudocode)
7. 1 FX normalleştirme ve yerel saat
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 tarafından 2 Geo/ASN (pseudocode)
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 Depozito hızının pencere işaretleri (akış)
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 sınırlarıyla arabirim oluşturma
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) Zenginleştirme kalitesi (DQ)
Minimum kurallar:- FX: 'fx _ rate _ used' not NULL, 'fx _ source' from whitelist, calculated 'amount _ base ≥ 0'.
- Geo/ASN: Başarılı aramaların payı ≥ %98 (pazara göre), dizinde 'ülke'.
- RG/AML etiketleri: 'valid _ from/valid _ to' (SCD II) kesişmez; Tarihte "deliklerin" yokluğu.
- Agregalar/pencereler: pencerelerin doğruluğu (çift sayma yok), bütünlük ≥ 99. 5%.
- Model versiyonları: 'model _ version' mevcut, özellik sürüklenme kontrolü.
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) Gizlilik ve uyumluluk
PII minimizasyonu: pseudo-ID ile zenginleştirme, gerçek tanımlayıcılar - ayrı bir döngüde.
Coğrafi yerelleştirme ve ikamet: bölgeye göre yönlendirme (EEA/UK/BR), ayrı şifreleme anahtarları.
DSAR/RTBF: Zenginleştirilmiş projeksiyonlar "gizleme "/redaksiyonu desteklemelidir; İstisnalar için yasal dayanağı tutun.
Yasal Bekletme: Raporlanabilir eserler/vakalar için silme işlemlerini dondurun.
10) Gözlemlenebilirlik ve soy
Linage: ham olaydan - arama/agregalar - görüntüler/modeller; fix source versions ('fx _ source', 'geo _ source','bin _ source ').
SLI/SLO: tazelik p95 (Gümüş) ≤ 15 мин; Başarılı coğrafi aramalar ≥ %98; Tamamlanan temel özelliklere ≥ %99 gecikme süresine sahip kayıtların oranı, 2-5 s ≤ akış p95'i zenginleştirir.
Panolar: Kaynaklara göre ısı haritası bütünlüğü, referans kitaplarının/modellerin sürümlerinin haritası, "pahalı" birleşimlerin izlenmesi, işaretlerin sürüklenmesi.
11) Maliyet ve performans
Önbellekler/materyalizasyon: sık arama've Redis/Scylla'da; Periyodik anlık görüntüler.
Kompakt işaretler: mağaza agregaları ("ham" listeler değil); Parke/sütun formatlarını kullanın.
Bölümleme: tarihe/pazara/kiracıya göre; sık sık filtrelenen alanlara göre kümeleme.
Uyarlanabilir frekans: ağır zenginleştirilmiş işler - geceleri; Gerçek zamanlı - sadece kritik.
Ters ibraz: maliyet/sorgu ve maliyet/ekip/özellik tarafından GB muhasebe.
12) Desenler ve anti-desenler
Desenler:- RG/KYC/sağlayıcıları için Dimension Lookup + SCD II.
- Async Zaman aşımları ve geri dönüşlerle zenginleştirme ("bilinmeyen" etiketi + tekrar).
- Online/offline müzakere ve tekrarlanabilirlik testleri ile Feature Store.
- Zenginleştirme için Kural Kodu (eşik/kategorik haritalar).
- Önbellek olmadan sıcak bir yolda harici API'lere sert bağlama.
- Etiketlenmemiş kaynak sürümleri ('fx _ source', 'geo _ source').
- Gümüş (maliyet/karmaşıklık patlamalar) Denormalizasyon'her şeyi ile her şey ".
- PII'nin analitik katmanlara girişi.
13) Süreçler ve RACI
R (Sorumlu): Veri Mühendisliği (boru hatları zenginleştirmek/akışı), Alan Sahipleri (özellik semantik), MLOps (Özellik Mağazası).
A (Sorumlu): Veri Başkanı/Baş Veri Sorumlusu.
C (Consulted): Uyumluluk/Yasal/DPO, Finans (FX/налоги), Risk (RG/AML), SRE.
I (Bilgilendirilmiş): BI/Ürün/Pazarlama/Operasyonlar.
14) Uygulama Yol Haritası
MVP (2-4 hafta):1. Zenginleştirme kaynak kataloğu (fx, geo, piyasalar, RG/KYC).
2. Gümüş-normalleştirme + temel arama've (fx/geo/dim.) .
3. İlk agregalar hız (mevduat/oranlar) ve zenginleştirilmiş. V1 tabloları.
4. Pano bütünlüğü/tazeliği, kaynak versiyonları.
Faz 2 (4-8 hafta):- Yaptırımların bağlantısı/PEP/BCL, PSP BIN tabloları, cihaz parmak izi.
- Özellik Mağazası (temel özellikler) + çevrimiçi önbellek, gerçek zamanlı zenginleştirme Flink.
- Zengin katman, soy ve kuru çalışma simülasyonları için DQ kuralları.
- Kişiselleştirme (görevler/görevler) ve RG/AML dedektörleri çevrimiçi.
- Değer yönetimi (kotalar, materyalizasyon, Z-sırası), çok bölgeli.
- Özellik ve katalog dokümantasyonunun otomatik üretimi.
15) Satıştan önce kalite kontrol listesi
- Tutarlı anahtarlar ve şemalar, kaynak sürümler imzalandı.
- fx/geo/RG/yaptırımlar/pencerelerde DQ kuralları; Uyarılar ve SLO'lar.
- Harici aramalar için önbellekler/zaman aşımları ve geri dönüşler.
- Soy ve maliyet/performans panoları.
- DSAR/RTBF/Zenginleştirilmiş tablolar için yasal bekletme prosedürleri.
- Özelliklerin belgelenmesi (sahip, formüller, SLO, etki).
16) Sık yapılan hatalar ve bunlardan nasıl kaçınılacağı
Etiketsiz referans/model sürümleri: Her zaman '_ source've' model _ version'ı düzeltin.
Fx'i "geriye dönük olarak" hesaplamak: olay sırasındaki oranı kullanın; FX kaynağını saklayın.
PII harmanlama: Eşlemeleri tokenize edin ve izole edin.
Birimlerde çift sayma: pencereleri ve dedup'u kontrol edin.
Önbellek olmadan senkronize harici çağrılar: async + cache/retrai girin.
Özelliklerin tekrarlanabilirliği yoktur: tek bir çevrimiçi/çevrimdışı dönüşüm kodu, uyumluluk testleri.
17) Sözlük (kısa)
Lookup/Dimension attach - referans kitabını gerçeğe anahtarla ekleyin.
Feature Store - özellikleri kayıt ve ML için hizmet.
SCD II - geçerlilik aralıkları ile ölçüm tarihlendirmesi.
FX - döviz kurları ve tutarların normalleştirilmesi.
ASN - özerk ağ sistemi; Anti-dolandırıcılık ve jeo-analitik için yararlıdır.
18) Alt satır
Zenginleştirme, olayları bilgiye dönüştürme disiplinidir: tutarlı anahtarlar ve şemalar, kontrollü arama ve kümeler, sürüm kaynakları, varsayılan gizlilik, DQ ve gözlemlenebilirlik. Açıklanan kalıpları izleyerek, raporlama, kişiselleştirme ve gerçek zamanlı risk dedektörleri için tekrarlanabilir, ekonomik ve uyumlu vitrinler ve işaretler alacaksınız.