GH GambleHub

Akış ve akış analitiği

1) Amaç ve değer

Akış devresi anında karar vermeyi sağlar:
  • Antifraud/AML: Mevduat yapısının tanımlanması, hız saldırıları, sağlayıcıların anomalileri.
  • Sorumlu Oyun (RG): Sınırları aşmak, risk kalıpları, kendini dışlama.
  • İşlemler/SRE: SLA bozulması, hata patlamaları, erken olay sinyalleri.
  • Ürün/pazarlama: kişiselleştirme etkinlikleri, görevler/görevler, gerçek zamanlı segmentasyon.
  • Neredeyse gerçek zamanlı raporlama: GGR/NGR vitrinler, işletim panelleri.

Hedef özellikleri: p95 uçtan uca 0. 5-5 s, tamlık ≥ 99. %5, yönetilen değer.


2) Referans mimarisi

1. Ingest/Edge

'/events/batch '(HTTP/2/3), gRPC, OTel Collector.
Şemaların doğrulanması, kopyaların önlenmesi, coğrafi yönlendirme.

2. Olay otobüsü

Kafka/Redpanda ('user _ id/tenant/market'tarafından bölümlenmiştir).
Tutma 3-7 gün, sıkıştırma," kırık "mesajlar için DLQ/" karantina".

3. Akış

Flink/Kıvılcım Yapılandırılmış Akış/Işın.
Durum bilgisi ifadeleri, CEP, filigran, izin verilen gecikme, veri tekilleştirme.
Zenginleştirme (Redis/Scylla/ClickHouse-Lookup), zaman aşımları ile asenkron I/O.

4. Servis/Operasyonel Ekranlar

Dakika/saniye toplama ve gösterge tabloları için ClickHouse/Pinot/Druid.
Modellerin puanlanması için Feature Store (çevrimiçi).
Uyarı konuları - SOAR/biletleme/webhooks.

5. Uzun süreli depolama (Lakehouse)

Bronz (ham), Gümüş (temiz), Altın (servis) - Parke + Delta/Iceberg/Hudi.
Tekrar oynatma/geri test etme, zaman yolculuğu.

6. Gözlemlenebilirlik

Boru hattı ölçümleri, izleme (OTel), günlükler, soy.


3) Planlar ve sözleşmeler

Schema-first: JSON/Avro/Protobuf + Registry, her olayda 'schema _ version'.
Evrim: geri uyumlu - yeni nullable alanlar; Breaking -'/v2 '+ çift yayın.
Gerekli alanlar 'event _ time' (UTC), 'event _ id', 'trace _ id', 'user'dır. pseudo_id', 'pazar', 'kaynak'.


4) Windows, filigranlar ve geç veriler

Windows:
  • Yuvarlanma, zıplama, seans.
  • Filigran: olay zamanı "bilgi" eşiği; Örneğin 2-5 dakika.
  • Geç veri: ön sorun ayarlamaları, "geç = doğru", güçlü bir gecikme ile DLQ.
Flink SQL örneği (10 dakikalık yatırma hızı):
sql
SELECT user_id,
TUMBLE_START(event_time, INTERVAL '10' MINUTE) AS win_start,
COUNT() AS deposits_10m,
SUM(amount_base) AS sum_10m
FROM stream.payments
GROUP BY user_id, TUMBLE(event_time, INTERVAL '10' MINUTE);

5) Durumsal toplamalar ve CEP

Anahtar: 'User _ id', 'device _ id', 'ödeme. account_id'.
Durum: veri tekilleştirme için kayan toplamlar/sayaçlar, oturumlar, bloom filtreleri.
CEP modelleri: yapılandırma (T penceresi başına <eşik, ≥N kez), cihaz anahtarı, RG yorgunluğu.

CEP sözde kodu:
python if deposits.count(last=10MIN) >= 3 and deposits.sum(last=10MIN) > THRESH and all(d.amount < REPORTING_THRESHOLD):
emit_alert("AML_STRUCTURING", user_id, window_snapshot())

6) Tam olarak-Bir kez, sipariş ve idempotence

Veri yolu: En az bir kez + bölüm anahtarları yerel sipariş sağlar.
Idempotence: 'event _ id' + dedup durumu (TTL 24-72 h).
Lavabo: işlemsel taahhütler (2 fazlı) veya uppert/merge-idempotency.
Giden Kutusu/Gelen Kutusu: OLTP'den etki alanı olaylarının garantili yayınlanması.


7) Gerçek zamanlı zenginleştirme

Arama: Redis/Scylla (RG limitleri, KYC durumu, BIN ^ MCC, IP ^ Geo/ASN).
Asenkron çağrılar: yaptırımlar/zaman aşımları ve geri dönüş ("bilinmeyen") ile APP API.
FX/zaman dilimi: miktarların ve yerel piyasa zamanının normalleştirilmesi ('fx _ source', 'tz').


8) Hizmet ve gerçek zamanlı vitrinler

ClickHouse/Pinot/Druid: dakika/saniye ile toplamalar, materyalize görünümler.
Gold-stream: operasyonel tablolar GGR/RG/AML, ≤ gecikme için SLA 1-5 dakika.
API/GraphQL: gösterge panoları ve harici entegrasyonlar için düşük gecikme süresi.

ClickHouse örneği (dakika dakika GGR):
sql
CREATE MATERIALIZED VIEW mv_ggr_1m
ENGINE = AggregatingMergeTree()
PARTITION BY toDate(event_time)
ORDER BY (toStartOfMinute(event_time), market, provider_id) AS
SELECT toStartOfMinute(event_time) AS ts_min,
market,
provider_id,
sumState(stake_base) AS s_stake,
sumState(payout_base) AS s_payout
FROM stream.game_events
GROUP BY ts_min, market, provider_id;

9) Gözlemlenebilirlik ve SLO

SLI/SLO (yer işaretleri):
  • P95 ingest - uyarı ≤ 2 s (kritik), ≤ 5 s (denge).
  • T ≥ 99 penceresinin tamlığı. 5%.
  • Şema hataları ≤ 0. 1%; 'Trace _ id' içeren olayların yüzdesi %98 ≥.
  • Akış hizmeti kullanılabilirliği ≥ 99. 9%.
Panolar:
  • Parti/konu gecikmeleri, meşgul zaman operatörleri, durum boyutu.
  • Huni "sobytiye ^ pravilo ^ anahtarlar", "sıcak" anahtarların haritası, geç oran.
  • Maliyet: Maliyet/GB, maliyet/sorgu, kontrol noktalarının/tekrarların maliyeti.

10) Gizlilik ve uyumluluk

PII minimizasyonu: ID takma adı, alan maskeleme, PAN/IBAN tokenizasyonu.
Veri ikametgahı: bölgesel boru hatları (EEA/İngiltere/BR), bireysel şifreleme anahtarları.
Yasal işlemler: Aşağı akış vitrinlerinde DSAR/RTBF, davalar/raporlar için Yasal Bekletme.
Denetim: erişim günlükleri, değişmeyen çözüm arşivleri.


11) Ekonomi ve verimlilik

Anahtarlar ve sharding: "Sıcak" tuşlardan kaçının (tuzlama/kompozit anahtar).
Durum: makul TTL, anlık görüntüler, RocksDB/arka uç durumunu ayarlama.
Ön toplama: Gürültülü akışlar için ön küçültme.
Örnekleme: Kritik olmayan metriklerde geçerlidir (işlemlerde/uyumlulukta değil).
Ters ibraz: temalar/işler, kotalar ve takım tahsisi için bütçeler.


12) DQ Akışı (Kalite)

Ingest-validation (şema, enums, boyut), dedup '(event_id, kaynak)'.
Akışta: bütünlük/dup-rate/late-ratio, pencere kontrolü (çift sayma yok).
Reaksiyon politikaları: kritik DLQ + uyarısı; Major/minor - etiket ve sonra açık.

Minimum kurallar (YAML, örnek):
yaml stream: payments rules:
- name: schema_valid type: schema severity: critical
- name: currency_whitelist type: in_set column: currency set: [EUR,USD,GBP,TRY,BRL]
- name: dedup_window type: unique keys: [event_id]
window_minutes: 1440

13) Erişim güvenliği ve serbest bırakma kontrolü

RBAC/ABAC: Konuları okumak, kuralları/modelleri değiştirmek için ayrı roller.
İkili kontrol: "2 anahtar" aracılığıyla kuralların ve modellerin kullanıma sunulması.
Kanarya/A/B: karanlık kural ve model çalışır, hassasiyet/hatırlama kontrolü.
Sırlar: KMS/CMK, düzenli rotasyon, günlüklerde sırların yasaklanması.


14) Süreçler ve RACI

R (Responsible): Akış Platformu (infra/releases), Domain Analytics (rules/features), MLOps (scoring).
A (Sorumlu): Etki alanına göre Veri/Risk/Uyumluluk Başkanı.
C (Consulted): DPO/Legal (PII/retention), SRE (SLO/Incidents), Mimarlık.
I (Bilgilendirilmiş): Ürün, Destek, Pazarlama, Finans.


15) Uygulama Yol Haritası

MVP (2-4 hafta):

1. Kafka/Redpanda + iki kritik konu ('ödemeler', 'auth').

2. Filigran, veri tekilleştirme ve bir CEP kuralıyla (AML veya RG) flink işi.

3. ClickHouse/Pinot vitrin 1-5 dk, panolar gecikme/tamlık.

4. Olay kanalı (webhooks/Jira), temel SLO'lar ve uyarılar.

Faz 2 (4-8 hafta):
  • Çevrimiçi zenginleştirme (Redis/Scylla), Özellik Mağazası, asenkron aramalar.
  • Kod olarak kural yönetimi, kanarya bültenleri, A/B
  • Akış DQ, boru hatlarının bölgeselleştirilmesi, DSAR/RTBF prosedürleri.
Faz 3 (8-12 hafta):
  • Çok bölgeli aktif-aktif, what-if tekrar simülatörü, eşiklerin otomatik kalibrasyonu.
  • Full Gold-stream vitrinler (GGR/RG/AML), neredeyse gerçek zamanlı raporlama.
  • Değer panoları, ters ibraz, DR egzersizleri.

16) Örnekler (parçalar)

Flink CEP - cihaz anahtarı:
sql
MATCH_RECOGNIZE (
PARTITION BY user_id
ORDER BY event_time
MEASURES
FIRST(A.device_id) AS d1,
LAST(B.device_id) AS d2,
COUNT() AS cnt
PATTERN (A B+)
DEFINE
B AS B.device_id <> PREV(device_id) AND B.ip_asn <> PREV(ip_asn)
) MR
Kafka Akışları - idempotent filtre:
java if (seenStore.putIfAbsent(eventId, now()) == null) {
context.forward(event);
}

17) Satış öncesi kontrol listesi

  • Sicildeki şemalar ve sözleşmeler, back-compat testleri yeşildir.
  • Filigran/izin verilen gecikme, dedup ve DLQ dahil.
  • Yapılandırılmış SLO ve uyarılar (lag/late/dup/state boyutu).
  • Önbellekler ve zaman aşımları ile zenginleştirme, "bilinmeyen" geri dönüş.
  • Kurallara/modellere RBAC/çift kontrol, tüm değişiklikler kaydedilir.
  • Kurallar, vitrinler ve runbook belgeleri ve tekrar oynatma/geri alma.

18) Sık yapılan hatalar ve bunlardan nasıl kaçınılacağı

Olay zamanını göz ardı edin: filigranlar olmadan, metrikler "yüzer".
Veri tekilleştirme yok: yanlış uyarılar ve çift sayım.
Kısayol tuşları: partilerin bozulması - tuzlama/yeniden şekillendirme.
Sıcak yolda eşzamanlı ön uç API'leri: yalnızca async + önbellek.
Yönetilmeyen maliyet: ön toplamalar, TTL durumları, kotalar, maliyet panoları.
Simülatör eksikliği: "yeniden oynatma" olmadan kullanıma sunulanlar regresyonlara yol açar.


19) Sözlük (kısa)

CEP - Karmaşık Olay İşleme.
Filigran - olay zamanına göre pencere hazırlık sınırı.
İzin verilen Gecikme - geç olayların toleransı.
Stateful Operator - kaydedilmiş durumu olan bir operatör.
Özellik Mağazası - koordine edilmiş özellik sörfü (çevrimiçi/çevrimdışı).


20) Alt satır

Akış ve akış analitiği yönetilen bir sistemdir: sözleşmeler, pencereler ve filigranlar, durumsal mantık ve CEP, zenginleştirme ve gerçek zamanlı vitrinler, SLO ve gözlemlenebilirlik, gizlilik ve kontrol altındaki değer. Açıklanan uygulamaları takip ederek, platform güvenilir risk dedektörleri, operasyonel paneller ve öngörülebilir gecikme ve maliyetle kişiselleştirme alır.

Contact

Bizimle iletişime geçin

Her türlü soru veya destek için bize ulaşın.Size yardımcı olmaya her zaman hazırız!

Entegrasyona başla

Email — zorunlu. Telegram veya WhatsApp — isteğe bağlı.

Adınız zorunlu değil
Email zorunlu değil
Konu zorunlu değil
Mesaj zorunlu değil
Telegram zorunlu değil
@
Telegram belirtirseniz, Email’e ek olarak oradan da yanıt veririz.
WhatsApp zorunlu değil
Format: +ülke kodu ve numara (örneğin, +90XXXXXXXXX).

Butona tıklayarak veri işlemenize onay vermiş olursunuz.