GH GambleHub

Деректер ағынының архитектурасы

1) Мақсаты және қағидаттары

Мақсаттары: талдау, есептілік, антифрод, дербестендіру және ML үшін дұрыс, уақтылы және комплаентті деректерді жеткізу.

Принциптері:
  • Data as a Product: нақты иелері, келісімшарттар, SLO және нұсқалау.
  • Schema-first: схемалар міндетті; ереже бойынша эволюция.
  • Privacy-by-Design: PII-ді барынша азайту, псевдонимдеу, кіруді басқару.
  • Observability-by-Default: трассировка, метрика, lineage, сапа профильдері.
  • Cost-aware: tiered-storage, шулы оқиғаларды семплеу, компрессия.

2) Көздер мен оқиғалардың ландшафты

Транзакциялық: депозиттер/қорытындылар, ставкалар/төлемдер, бонустар, chargeback.
Пайдаланушы: сессиялар, басу, конверсиялар, RG-лимиттері, KYC мәртебелері.
Операциялық: қосымшалар логтары, өнімділік метрикасы, алерта.
Провайдерлер: PSP/KYC/санкциялар/ойын студиялары (агрегаторлар).
Референттік: ойындардың каталогтары, елдердің/валюталардың анықтамалықтары, тарифтер/салықтар.

Оқиғаларды типтеу (мысал):
json
{
"event_time":"2025-10-31T19:20:11Z",
"event_type":"payment. deposit",
"schema_version":"1. 3. 0",
"user":{"id":"U-123","country":"EE","age_band":"18-24"},
"payment":{"amount":200. 00,"currency":"EUR","method":"card","psp_ref":"PSP-222"},
"ctx":{"ip":"198. 51. 100. 10","session_id":"s-2233","trace_id":"f4c2..."}
}

3) Эталондық сәулет (high-level)

1. Ingest қабаты

Шлюздер (HTTP/gRPC), CDC коннекторлары (OLTP-дан), кезектер/шиналар (Kafka/Redpanda), телеметрия коллекторлары.
Валидация, қалыпқа келтіру, кіре берістегі PII-редакция, contract enforcement.

2. Streaming қабаты

Ағынды джобтар (Flink/Spark Structured Streaming/Beam) дедупликациямен, watermark, stateful агрегаттарымен.
Сақтау орындары мен онлайн-сервистерге фан-аут (фичестор, антифрод).

3. Батч қабаты

Оркестрлеу (Airflow/Dagster), инкременталды жүктеулер, бэктестер және ретропроцесстер, SCD түрлері.

4. Сақтау (Lakehouse)

Bronze: дымқыл оқиғалар (append-only, immutable).
Silver: тазартылған, сапасы мен дедупі бар конформды кестелер.
Gold: нақты кейстерге арналған витриналар/наурыз (BI/реттегіш/ML).
ACID (Delta/Iceberg/Hudi) бар кесте пішімдері, ыстық/жылы/суық қабаттарға тарату.

5. Сервинг және қатынас

BI/SQL (Trino/Presto/DuckDB), семантикалық қабат (metrics layer), API/GraphQL, онлайн/офлайн үйлесімділік үшін Feature Store.

6. Говернанс және қауіпсіздік

Каталог/линедж, DQ-ережелер, саяси қолжетімділік қозғалтқышы (RBAC/ABAC), бүркемелеу/Tokenization, WORM-есеп беру мұрағаты.

4) Келісімшарттар мен схемалар

Деректер келісімшарттары: OpenAPI/AsyncAPI/JSON Schema/Euro.
Эволюция: семантикалық нұсқалар; backward-compatible өзгерістер - nullable өрістерін қосу; breaking - тек '/v2 'және көші-қон кезеңіндегі қосарланған жазба.
Тіркелімдер: Schema Registry, домендер каталогы (Payments, Gameplay, Marketing).

5) Интеграция паттерндері

CDC (Change Data Capture): OLTP-тен шинаға (Debezium), домен кілттері бойынша партиялануы.
Outbox/Inbox: домендік логика оқиғаларын кепілді жеткізу.
Exactly-Once/Effectively-Once: стейттегі транзакциялар, idempotent sink 'i, дедупликация кілттері.
Late Data & Watermarks: кешігетін оқиғаларды өңдеу; allowed lateness.
Reprocessing: демпотенттік пайплайндар, time-travel, snapshot-түзетулер.

6) Lakehouse моделі: bronze/silver/gold

Bronze (raw):
  • Уақыт (event_date) және нарық (jurisdiction) бойынша партиялар.
  • Тек қосу; форензика үшін бастапқы payload сақтау.
Silver (clean):
  • Қалыпқа келтірілген типтер, анықтамалықтар, '(event_id, event_time)' бойынша дедупликация.
  • FK верификациясы, валюта/таймзонды стандарттау, байыту.
Gold (serve):
  • Денормалданған витриналар (GGR, RG-скоринг, LTV, когорт кестелері).
  • Жаңартуға арналған SLA, BI-ге арналған агрегаттар және есептілік.

7) Деректер сапасы (Data Quality)

Ережелер: схемалық валидация, диапазондар, бірегейлік, толықтық, referential integrity.
Бейіндеу: дистрибуция, кардиналдық, белгілердің «дрейфі».
Мониторинг: p50/p95 пайплайн кідірісі, drop-rate, error budget.
Degradation policy: автоматты фоллбэк (соңғы снэпшот), алерталар және метрикаға t-тестілер.

DQ келісімшарт үлгісі (YAML):
yaml table: silver. payments rules:
- name: amount_positive type: range column: amount min: 0. 01
- name: currency_valid type: in_set column: currency set: [EUR,USD,GBP,TRY,BRL]
- name: unique_tx type: unique columns: [transaction_id]
slo:
freshness_minutes: 15 completeness_percent: 99. 5

8) Құпиялылық және комплаенс

PII-минимизация және бүркемелеу: псевдо-ID сақтау, look-up маппингтерді бөлу.
Аймақтандыру: гео-жергілікті бакеттер/каталогтар (EEA/UK/BR), «data residency».
Құқықтық операциялар: DSAR/RTBF (есептелетін проекциялар және селективті редакциялар), Legal Hold, өзгермейтін есеп мұрағаттары.
Қолжетімділікті логикалау: «сезімтал» кестелерді оқу аудиті, break-glass және JIT-қолжетімділік.

9) Бақылау және басқару

Линедж: көзге тәуелділікті витринаға дейін автоматты түрде трассалау.
Пайплайн өлшемдері: throughput, lag, failure-rate, cost/GB, cost/query.
Трассировка (OTel): 'trace _ id' бағдарламаларынан оқиғаларға лақтырылады → толассыз сұрау жолын жасаймыз.
Алерттар: SLO-бюджеттер, жаңалық/көлем/түбегейлі ауытқулар.

10) Қол жеткізу және қауіпсіздік моделі

Деректер санаттары: public/internal/confidential/restricted.
Саясаттар: row/column-level security; динамикалық бүркемелеу (PAN/IBAN/email).
Кілттерді басқару: KMS/CMK, at-rest/in-transit шифрлау, ротация.
Міндеттерді сегрегациялау: өнімнің/талдаудың/әкімшілік/ревьюердің бөлек рөлдері.

11) Data Mesh және азық-түлік тәсілі

Домены: Payments, Gameplay, Marketing, Risk, Compliance.
Data Product: иесі, SLA жаңалық, өріс сөздігі, тесттер, нұсқалар, тұтыну метрикасы.
Домендер арасындағы келісімшарттар: нұсқаланатын, backward үйлесімділігі бар, тұтынушы тестілер (consumer-driven).

12) Фичестор және ML-ағындары

Feature registry: белгілердің сипаттамасы, көздер, трансформациялар, SLO.
Онлайн/офлайн келісім: бір трансформация коды, онлайн-материалдандырудың кідіруі ≤ 200-500 мс.
Дрейф мониторингі: PSI/KS, автоалерта және үлгілердің кері қайтуы, PII бақылау.
Эксперименттер журналы: метадеректер, нұсқалар, reproducibility, модельдік карталар.

13) Қаржы моделі және cost-оңтайландыру

Партиялану және жиі предикаттар бойынша Z-order/Cluster.
Суық сақтау және пайдаланылмайтын кестелер үшін TTL, VACUUM.
Materialized views тек тұрақты сұрау үлгілері үшін.
Ауыр кендірлерге арналған квоталар мен бюджеттер; командалар бойынша chargeback.

14) Өңірлік және мульти-тенанттық топология

Multi-region active-active: тақырыптар мен кестелерді репликалау, тәуелсіз pipeline-периметрлер.
Failover/DR: RPO/RTO мақсаттары, оркестратордың метадеректері, қалпына келтіруді тексеру.
Көп теңгелілік: каталогтарды/кілттерді/квоталарды оқшаулау, tenant_id таңбалау.

15) Процестер және RACI (қысқаша)

R: Data Platform (ингест, сақтау, оркестрлеу), Data Engineering (трансформация).
A: Head of Data / Chief Data Officer.
C: Compliance/Legal/DPO, Сәулет, SRE.
I: BI/Аналитика, Өнім, Маркетинг, Қаржы.

16) Ағындарға арналған SLO/SLI

Тазалық (freshness): p95 кідірісі Silver ≤ 15 мин, Gold (daily) дайын ≤ 06:00 лок. уақыт.
Толымдылығы: 99 ≥. T. терезесіндегі оқиғалардың 5%.
Дұрыстығы: error-rate DQ <0. көлемнің 5%.
Сервингтің қолжетімділігі: ≥ 99. BI/Feature API үшін 9%.

17) Кестелер мен партияландыру үлгілері

sql
-- Bronze: Deposit events
CREATE TABLE bronze. payment_deposits (
event_time TIMESTAMP,
event_id STRING,
user_pseudo_id STRING,
amount DECIMAL(18,2),
currency STRING,
psp_ref STRING,
payload VARIANT
)
PARTITION BY DATE(event_time)
CLUSTER BY (currency);

-- Silver: normalized model
CREATE TABLE silver. payments AS
SELECT event_id,
CAST(event_time AS TIMESTAMP) AS ts,
user_pseudo_id,
amount,
currency,
psp_ref
FROM bronze. payment_deposits
QUALIFY ROW_NUMBER() OVER (PARTITION BY event_id ORDER BY ts) = 1;

18) Оркестрлеу және DevX

Infra-as-Code: пайплайн репозиторийлері, тесттер, ревью, GitOps.
Data Contracts CI: сызба линтерлері, деплойға дейінгі DQ-тестілер.
Backfill-фреймворк: R/W және idempotency шектелген қауіпсіз ретропроцесстер.
Каталогтар мен үлгілер: пайплайн генераторлары (cookie-cutter), best-practices.

19) Енгізу жол картасы

MVP (4-6 апта):

1. Оқиғалар шинасы + 2-3 негізгі көздерден (OLTP CDC, API-шлюз) ingest.

2. Lakehouse Bronze/Silver, ACID форматы, каталог және базалық DQ ережелері.

3. 1-2 Gold-витриналар (күнделікті GGR және конверсиялық құйғыш).

4. lag/completeness, базалық lineage, RBAC және PII бүркемелеу өлшемдері.

2-фаза (6-12 апта):
  • Streaming-агрегаттар (p95 latency ≤ 5 мин), Feature Store, RG/AML витриналар.
  • Метриктердің семантикалық қабаты, есептілікке SLA; cost-дэшбордтар.
  • Аймақтандыру (EEA/UK), DSAR/RTBF рәсімдері, артефактілер үшін Legal Hold.
3-фаза (12 + апта):
  • Data Mesh: азық-түлік домендері, consumer-driven contracts.
  • Дрейф мониторингімен ML-операциялар, онлайн/офлайн автокелістіру.
  • Схема өзгерістерінің автоматты симуляциялары (impact analysis) және құны бойынша «what-if».

20) Жиі қателіктер және олардан қашу

Схемасыз шикі payload's: schema-first, тіркелімді және CI-валидацияны енгізу.
Дедупликацияның жоқтығы: Silver бағдарламасындағы оқиғалар кілті мен idempotent-синк.
PII-ді талдаумен араластыру: маппингтерді бөлу және өрістерді бүркемелеу.
Иесі жоқ Gold: owner, SLO және тұтыну метрикасын тағайындау.
reprocessing-стратегиясы жоқ: time-travel, логиканы нұсқалау, «қосарлы есепті» бақылау.
Басқарылмайтын құны: партия, компрессия, TTL, бағаның байқалуы.

21) Глоссарий (қысқаша)

CDC - OLTP өзгертулерін басып алу.
Outbox - домендік оқиғаларды транзакциялық түрде жариялаймыз.
Watermark - терезелер үшін ағынның толықтығын бағалау.
Lakehouse - data lake + ACID кестелері.
Data Product - иесі мен SLO бар өнімнің деректер бірлігі.
Feature Store - ML белгілерін келісілген тарату.

22) Қорытынды

Деректер ағынының архитектурасы - бұл уағдаластықтардың басқарылатын жүйесі: нақты келісімшарттар, бақылаушылық, қауіпсіздік және бақылаудағы құн. Сипатталған үлгілерге (schema-first, bronze/silver/gold, CDC + Outbox, DQ және lineage, privacy-by-design) сүйене отырып, платформа бизнесті, комплаенсті және ML-ді болжамды SLO және түсінікті иелену құны бар сапалы деректермен сенімді жабдықтайды.

Contact

Бізбен байланысыңыз

Кез келген сұрақ немесе қолдау қажет болса, бізге жазыңыз.Біз әрдайым көмектесуге дайынбыз!

Telegram
@Gamble_GC
Интеграцияны бастау

Email — міндетті. Telegram немесе WhatsApp — қосымша.

Сіздің атыңыз міндетті емес
Email міндетті емес
Тақырып міндетті емес
Хабарлама міндетті емес
Telegram міндетті емес
@
Егер Telegram-ды көрсетсеңіз — Email-ге қоса, сол жерге де жауап береміз.
WhatsApp міндетті емес
Пішім: +ел коды және номер (мысалы, +7XXXXXXXXXX).

Батырманы басу арқылы деректерді өңдеуге келісім бересіз.