Таҳлили ҷараён vs Batch
1) Фишанги мухтасар
Ҷараён - коркарди муттасили рӯйдодҳо дар сонияҳо: зидди қаллобӣ/AML, триггерҳои RG, огоҳиҳои SLA, панелҳои амалиётӣ.
Партия - ҳисобкунии даврӣ бо такрористеҳсолкунии пурра: ҳисоботи танзимкунанда (GGR/NGR), ҳуҷҷатҳои молиявӣ, маҷмӯаи маълумотҳои ML.
Нишонаҳо: Сюзан p95 e2e 0. 5-5 с, бастаи D + 1 то 06:00 (қулф.) .
2) Матритсаи интихоб (TL); DR)
Қоидаи 80/20: Ҳар чизе, ки аксуламалро талаб намекунад <5 дақиқа - дар партия; боқимонда дар Stream, бо тасдиқи шабонаи Batch.
3) Меъморӣ
3. 1 Ламбда
Ҷараён барои онлайн + Партия барои муттаҳидсозӣ. Плюс: чандирӣ. Минус: ду мантиқ.
3. 2 Каппа
Ҳама чиз ба монанди ҷараёнҳо аст; Бастаи = "такрори" тавассути журнал. Плюс: як рамзи ягона. Минус: мураккабии такрорӣ/арзиш.
3. 3 Lakehouse-гибрид (тавсия дода мешавад)
Ҷараён → онлайн OLAP Marts (дақиқа) ва биринҷӣ/нуқра; Партия Gold (D + 1) -ро аз нав насб мекунад ва гузоришҳо нашр мекунад.
4) Маълумот ва вақт
Ҷараён
Windows: tumbling/hopping/session.
Нишонаҳои обӣ: 2-5 дақиқа; маълумоти дер қайд карда мешавад ва хира карда мешавад.
Давлатӣ: CEP, dedup, TTL.
Партия
Афзоиш/CDC: 'updated _ at', нусхабардории журнал.
SCD I/II/III: таърихи атрибут.
Суратҳо: қабатҳои рӯз/моҳ барои "ас-аз".
5) Намунаи барномаҳо дар IGaming
AML/Antifraud: Ҷараён (суръат/сохтор) + мусолиҳа ва ҳолатҳои гурӯҳӣ.
Бозии масъул: Назорати ҷараёни маҳдудиятҳо/худдорӣ; Феҳристҳои гузоришдиҳии гурӯҳӣ.
Амалиёт/SRE: Огоҳии ҷараён SLA; Таҳлили пас аз ҳодисаҳо ва тамоюлҳо.
Маҳсулот/Маркетинг: Фардикунонии ҷараён/Миссияҳо; Гурӯҳҳои гурӯҳӣ/LTV.
Молия/ҳисоботҳо: Партия (Gold D + 1, бастаҳои WORM), Stream - панелҳои амалиётӣ.
6) DQ, такрористеҳсолкунӣ, такрорӣ
Ҷараёни DQ: тасдиқи схемаҳо, dedup '(event_id, манбаъ)', пуррагии тиреза, таносуби дер, суръати dup; DLQ интиқодӣ →.
Бастаи DQ: беҳамтоӣ/FK/диапазон/муваққатӣ, оштӣ бо OLTP/провайдерҳо; critical кори ноком + гузориш.
- Ҷараён: мавзӯъҳои реплика аз рӯи диапазон + тағирёбии детерминистӣ.
- Маҷмӯа: версияҳои вақт-сафар/мантиқ ('мантиқ _ версия') + Аксҳои тиллоӣ.
7) Махфият ва иқомат
Ҷараён: псевдонимизатсия, ниқоби онлайн, қубурҳои минтақавӣ (EEA/UK/BR), танаффус ба ҷустуҷӯи берунии PII.
Гурӯҳ: ҷудокунии харитасозии PII, RLS/CLS, DSAR/RTBF, Hold Legal, бойгонии WORM.
8) Арзиши муҳандисӣ
Ҷараён: аз калидҳои "гарм" (намак) канорагирӣ кунед, маҳдудияти ҷустуҷӯи асинк, ҳолати TTL, preaggregation.
Гурӯҳ: тақсимкунӣ/кластерӣ, фишурдани файлҳои хурд, модернизатсияи агрегатҳои устувор, квотаҳо/тирезаҳои роҳандозӣ.
9) Намунаҳо
9. 1 ҷараён - Flink SQL (суръати кони 10 дақиқа)
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);
9. 2 Сюзан - CEP (рамзи псевдо AML)
python if count_deposits(10MIN) >= 3 and sum_deposits(10MIN) > THRESH \
and all(d. amount < REPORTING_LIMIT for d in window):
emit_alert("AML_STRUCTURING", user_id, snapshot())
9. 3 Партия - MERGE (Афзоиши нуқра)
sql
MERGE INTO silver. payments s
USING stage. delta_payments d
ON s. transaction_id = d. transaction_id
WHEN MATCHED THEN UPDATE SET
WHEN NOT MATCHED THEN INSERT;
9. 4 Партия - Gold GGR (D + 1)
sql
CREATE OR REPLACE VIEW gold. ggr_daily AS
SELECT
DATE(b. event_time) event_date,
b. market, g. provider_id,
SUM(b. stake_base) stakes_eur,
SUM(p. amount_base) payouts_eur,
SUM(b. stake_base) - SUM(p. amount_base) 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;
10) Метрика ва SLO
Ҷараён (нишонаҳо)
p95 indest → ҳушдор ≤ 2-5 c пуррагӣ okna ≥ 99. 5%
схема-хатогиҳо ≤ 0. 1%
дер таносуби ≤ 1%
мавҷудияти ≥ 99. 9%
Партия (нишонаҳо)
Тилло. ҳамарӯза то соати 06:00 қулф омода мешавад.
пуррагӣ ≥ 99. 5%
эътибор ≥ 99. 9%
Ҳодисаи MTTR DQ ≤ 24-48 соат
11) Санҷиш ва релизҳо
Шартномаҳо/нақшаҳо: санҷишҳои истеъмолкунанда; back-compat CI.
Ҷараён: қоидаҳои канарӣ, оғози торик, симуляторҳои такрорӣ.
Маҷмӯа: хушк кардани намунаҳо, муқоисаи ченакҳо, оштӣ.
12) Анти-намунаҳо
Мантиқи такрорӣ: ҳисобҳои гуногуни ҷараён ва партия бидуни ҳамоҳангсозии формула.
API-ҳои берунаи синхронӣ дар роҳи гарм бидуни кэш/танаффус.
Боркунии пурраи "танҳо дар ҳолати" ба ҷои афзоиш.
Не нишонаҳои об/сиёсати дер.
PII дар қабатҳои таҳлилӣ; нест CLS/RLS.
Намоишҳои тиллоӣ, ки ба таври ретроактивӣ "мутатсия" мекунанд.
13) Гибриди тавсияшуда (китоби бозӣ)
1. Ҷараёни ҷараён: infest → автобус → Flink/Beam (нишонаҳо, dedup, CEP) →
OLAP (Click/House/Pinot) барои 1-5 дақиқа панел + биринҷӣ/нуқра (замима).
2. Давраи гурӯҳӣ: Афзоиш/CDC → Нормализатсияи нуқра/SCD → Дисплейҳо/Ҳисоботҳои ҳаррӯзаи тиллоӣ (WORM).
3. Муқоиса: як қабати ягонаи семантикии ченакҳо; мусолиҳаи шабона Stream↔Batch; номувофиқатӣ> ҳадди 2019 чиптаҳо.
14) RACI
R (Масъул): Платформаи ҷараён (Stream-info), Муҳандисии маълумот (Моделҳои бастагӣ), Таҳлили домейн (ченакҳо/қоидаҳо), MLOps (хусусиятҳо/Дӯкони хусусият).
A (Ҳисоботдиҳанда): Роҳбари маълумот/CDO.
C (Машварат): Мувофиқат/Ҳуқуқӣ/DPO, Молия (FX/GGR), Хавф (RG/AML), SRE (SLO/stoimostь).
I (Маълумот): BI/Маҳсулот/Маркетинг/Амалиёт.
15) Харитаи роҳ
MVP (2-4 ҳафта):1. Кафка/Редпанда + 2 мавзӯъҳои муҳим ('пардохтҳо', 'auth').
2. Кори дурахшон: нишонаи обӣ + dedup + 1 қоидаҳои CEP (AML ё RG).
3. OLAP намоиши 1-5 дақиқа + панели қафо/дер/дуп.
4. Lakehouse Silver (ACID), аввалин тилло. ggr_daily (D + 1 то 06:00).
Марҳилаи 2 (4-8 ҳафта):- Афзоиш/CDC аз рӯи домен, SCD II, қабати ченакҳои семантикӣ.
- Ҷараёни DQ ва мусолиҳаи шабона Stream↔Batch.
- Минтақасозӣ (EEA/UK/BR), DSAR/RTBF, Hold ҳуқуқӣ.
- Такрори симулятор, релизҳои канарӣ/A-B қоидаҳо/ченакҳо.
- Панели хароҷот ва квотаҳо; нигаҳдории сатҳӣ; Таълимоти DR.
- Тавлиди худкори ҳуҷҷатҳои намоишӣ/ченакҳо ва насл.
16) Рӯйхати санҷиши амалисозӣ
- Нақшаҳо/шартномаҳо дар Феҳрист; санҷишҳои back-compat сабз мебошанд.
- Ҷараён: нишонаҳои обӣ/иҷозатдодашуда, деду, DLQ; Панелҳои OLAP дар prod.
- Гурӯҳ: афзоиш/CDC, SCD II, Gold D + 1 бо содироти WORM.
- Қабати ягонаи семантикии ченакҳо; мусолиҳаи шабона Stream↔Batch.
- Лавҳаҳои тару тоза/мукаммалӣ/дурустии DQ; ҳушёрӣ/дер/dup.
- RBAC/ABAC, рамзгузорӣ, иқомат; DSAR/RTBF/Нигоҳдории ҳуқуқӣ.
- Арзиши назорат (арзиш/ГБ, арзиш/дархост, андозаи давлатӣ, такрорӣ квота ҷудо карда мешавад).
17) Сатри поён
Stream ва Batch рақиб нестанд, балки ду фишанги як диск мебошанд. Сюзан аксуламали "инҷо ва ҳоло", пакет - ҳақиқати тасдиқшаванда "-ро субҳ медиҳад. "Равиши гибридии Lakehouse, як қабати ягонаи ченакҳо ва интизоми DQ/насл ба шумо имкон медиҳад контурҳои таҳлилии зуд, такроршаванда ва мувофиқро созед, ки дар SLA ва арзиши оптималӣ мебошанд.