GH GambleHub

Տվյալների վալիդացիա

1) Ինչու՞ է դա անհրաժեշտ iGaming պլատֆորմի համար

Վստահություն զեկույցների և KPI 'GGR/NET, հակադարձում, պահպանում, RG ազդանշաններ։

SysteML/սկորինգը 'հակաֆրոդի/www.ru/RG ճիշտ ֆիչեր։

Վիրահատությունները իրական ժամանակում 'ալտերտեր, երբ մենք մահանում ենք/կորցնում ենք իրադարձությունները մինչև վճարումները/UX։

Կոմպլենսը 'PII/գաղտնիքների բացակայությունը, որտեղ դրանք չպետք է լինեն։ ապացուցված ճանապարհը։

2) Որտե՞ ղ վարվել 'վերահսկման մակարդակներ

1. Ingest (batch/stream) 'սխեմա, տեսակներ, պարտադիր դաշտեր, idempotency/dedup։

2. Սթրիմ պրոցեսինգը 'պատուհաններ/ստացիոնար նշաններ, կարգը, բացթողումները/ուշացումները, exactly-once-ը։

3. ETL/ELT և փոխակերպումները 'հղումներ/ջոիններ, ագրեգատներ, բիզնես հավասարակշռություններ։

4. MSH/վիտրիններ (Gold) 'սպիտակամորթ, թարմ, եզակիություն։

5. Feature Store/առցանց 'fich միջակայքը, օֆլինի համաձայնությունը առցանց։

6. BI/API 'հաշվարկներ և ֆիլտրեր, SLAs-ը latency/freshness, k-անանուն։

3) Ստուգումների տեսակները (կատալոգը)

Սխեմաները 'տիպ/nullable/enum/regex/JSON-shape; անհամատեղելի փոփոխություններ են։

Վճարային ՝ 240, արժույթը ՝ www.DPR, USD, TRY, BRL com, ռուսական սահմանը, ռուսական լիցենզիայի երկիրը։

Ինքնություն/բանալին 'առաջնային բանալին եզակի է, foreenskey-ը «կախված» չէ։

Դաշտերի որակը 'լրացում, երկարություն, ձևաչափ (IBAN, BIN, e-mail)։

Վիճակագրությունը/հիմնական գծերը ՝ հաճախականությունը, բաշխումը, քվանտային միջանցքները։

Աննոմալիա 'ծավալի/մասնաբաժնի կտրուկ ցատկ, նուլի/կրկնօրինակներ, schema drift։

Թարմ 'max (ts) ոչ ավելի մեծ X; lag ingest nogold T.
Կոնսիստենտություն 'մանրամասների գումարը = համախմբված; multi-table reconciliation.

Գաղտնիությունը/անվտանգությունը 'Zero-PII թույլատրված գոտիներից դուրս; թունավորում/դիմակներ։

Կարգավորիչ ՝ RG/AML դաշտերը ներկա են և ճիշտ (ամսաթվերը, նշանները)։

4) DirecTracom (տվյալների պայմանագրեր)

Պայմանագիրը արձանագրում է + որակի կանոնները + SLO աղբյուրի և սպառողների միջև։

Նվազագույն պայմանագիրը (հատված)

yaml dataset: payments_ingest_v2 owner: team-payments schema:
id: {type: string, pattern: "^[a-f0-9]{32}$", unique: true}
ts: {type: timestamp, timezone: "UTC", nullable: false}
amount: {type: decimal(18,2), min: 0. 00}
currency: {type: string, enum: ["EUR","USD","TRY","BRL"]}
psp: {type: string, required: true}
quality:
freshness_max: "PT5M"
completeness_min: 0. 995 duplicate_rate_max: 0. 001 pii_allowed: false slo:
p95_ingest_latency_ms: 30000 success_rate: 0. 995

Պայմանագրի փոփոխությունները 'semver և www.m. «MAJOR» -ը կոտրում է, «MINOR» -ը ավելացնում է դաշտը, «PATCH» -ը շտկում է նկարագրությունը։

5) «Սպասումներ» (expectronics) և քաղաքականություն

Սպասումները անօրինական ստուգումներ են, որոնք կատարվում են դելֆիններում (batch/stream)։

Ակնկալիքների օրինակները (YAML)

yaml expectations:
- name: unique_primary_key check: "unique(id)"
severity: "error"
- name: amount_non_negative check: "amount >= 0"
severity: "error"
- name: currency_enum check: "currency in ['EUR','USD','TRY','BRL']"
severity: "error"
- name: ts_fresh_enough check: "now() - max(ts) <= interval '5 minutes'"
severity: "warn"
- name: pii_absent check: "no_plain_pii(columns: ['email','card','iban'])"
severity: "error"

Ռուսական քաղաքականությունը

"error 'no կուսակցության/batch, ծանուցում + ticet; բլոկը downstream։

«warn '2019» -ը անցնում է, բայց խնդիր է ստեղծում վերլուծելու համար։ նշումներ։

«www.d.ru» -ը միայն ռուսական է։

6) Սթրիմինգ 'ստուգման առանձնահատկություններ

Watermarks/late 210 'թույլ ենք տալիս ուշանալ' 120s ", հակառակ դեպքում 'կարանտին; փոխհատուցենք վերջնական պատուհանները։

Idempotency: Իրադարձության բանալին + hash payload pedup brocker/հոսքի վրա։

Exactly-once: Գործարքային սինգլը (+ idempotent sinks) կրիտիկական հոսքերի համար (վճարումներ/փուլեր)։

Ծավալի հաշվիչները '«ակնկալվում էր» ստացվեց պատուհանի ետևում։ տարբերությունը ալերտ է։

Flink կանոնները (կեղծ)

scala val deduped = stream
.keyBy(_.id)
.process(new DeduplicateWithin(Time. minutes(10)))

val validated = deduped
.filter(_.amount >= 0)
.filter(_.currency in Set("EUR","USD","TRY","BRL"))

emitToQuarantineIfLate(validated, allowedLateness = 120. seconds)

7) MSH/SQL 'invariants և SHL։

SQL ստուգումներ (օրինակ)։

sql
-- uniqueness
SELECT id, COUNT() c FROM gold. payments GROUP BY 1 HAVING c>1;

-- freshness
SELECT NOW() - MAX(ts) AS lag FROM gold. payments;

-- reconciliation of totals
SELECT
SUM(amount) AS by_rows,
(SELECT total_amount FROM gold. payments_summary WHERE date=CURRENT_DATE) AS by_summary
FROM gold. payments
WHERE date = CURRENT_DATE;

Matching-ը վիտրիններով 'ամեն օր «detail no summary», տարանջատման զեկույցները, ավտոմատ տիկետը։

8) Գաղտնիությունը և անվտանգությունը

PII-խմբագրությունը լռելյայն 'դիմակներ/հոսանքներ մուտքի վրա։ արգելում ենք «հում» e-mail/քարտեր/հեռախոսներ լոգարաններում։

Մրցույթի քաղաքականությունը 'աղյուսակներ PII-ի հետ' առանձին շերտ/կատալոգը, դերերի հասանելիությունը (RBAC/ABAC)։

K-անունությունը բացատրվում է 'առնվազն N տողերը կտրում են։

Leak-դետեկտորները 'PII, «գաղտնիքները» (բանալիներ/հոսանքներ)։

Իրավասություններ ՝ geo/tenault-մեկուսացում (երկիր/բրենդ/արտոնագիր), առանձին բանալիներ։

9) Որակի և SLO մեթրիկները

Որակի չափումները (D)

Freshness-ը max (ts) է։

Completeness-ը ոչ դատարկ/սպասվող գրառումների մասն է։

Uniqueness-ը մրցույթի կրկնօրինակներն են։

Consistency-ը invariants և հավասարակշռություններ են (միջտաբլիկ)։

Accuracy-ը արտաքին աղբյուրի/տիրույթի կանոնների ստուգումն է։

Validity-ը համապատասխանում է/enum/regex տիպերին։

SLO օրինակներ

`Freshness payments_gold ≤ 5 мин` (p95).

`Completeness game_rounds ≥ 99. 7 %/օր "։

`Duplicate_rate ≤ 0. 1‰`.
`PII_leak = 0`.

10) Alerta, tikets և runbook

Routing: Slack/PagerDuty-ը տիրույթի սեփականատերն է։ ինքնաբերաբար կիրառում ենք samples և diff։

Խումբը 'մեկ պատահականություն «labels: contaset = payments, brand = TR» հավաքածուի վրա։

Runbook (օրինակ «Freshness breach: payments _ gold»)։

1. Ստուգել ingest լագը և բրոքերի հերթը։

2. Համեմատել «ակնկալվում էր» PSA-ով։

3. Միացրեք retray/անցնել PSA երթուղին։

4. Անոնացնել պատճառը։ restart bets; անցկացնել post-mortem.

11) Տարբերակումը, թեստերը և waiver գործընթացը

Semver-ը որակի կանոնները '"quality @ MAJOR։ MINOR. PATCH`.

Փոխակերպման յունիտ թեստերը (SQL/DBT/proton) և աղբյուրների համար պայմանագիր-թեստերը։

GOLDEN ցանցերը 'հայտնի տարանջատման/արտահոսքի դեպքեր, որոնք պարտադիր են ռեգրեսիայի մեջ։

Waiver (բացառություն) 'կարճ լուծումը խախտելու կանոնը (նկարագրությունը, սեփականատերը, ժամանակահատվածը, փոխհատուցող միջոցները)։

12) Կարիբյան/արտեֆակտներ (պատրաստի ձևանմուշներ)

12. 1 Դանասետի անձնագիր

yaml dataset: gold. game_rounds owner: team-games steward: data-governance contracts: ["games_rounds_v3"]
quality_slo:
freshness_p95: "PT10M"
completeness_min: 0. 997 uniqueness_max_dup: 0. 0005 alerts:
channels: ["#dq-incidents","#games-ops"]
severity_map: {error: "P1", warn: "P2"}

12. 2 Կարանտինի քաղաքականություն

yaml quarantine:
storage: "s3://quarantine/payments/"
retention: "P30D"
access: ["team-payments","data-governance"]
auto_reprocess:
cron: "/15  "
max_attempts: 3

12. 3 Expectation для Feature Store

yaml featureset: fs_payments_online_v1 checks:
- name: feature_freshness check: "now() - max(feature_ts) <= interval '60 seconds'"
severity: "error"
- name: range_amount_avg check: "amount_avg in [0, 2000]"
severity: "warn"
- name: enum_device check: "device in ['ios','android','web']"
severity: "error"

13) iGaming-ի առանձնահատկությունները 'պատրաստի դեպքեր

Վճարումները/PSA: Ավանդների գումարը/եզրակացությունները PSA զեկույցների հետ։ բացակայող ստատուսները բատչայի կարանտին են։ Allert աճի վրա 'decult _ rate'։

Խաղային պրովայդերներ '«rounds _ per _ min' vs baseline + schema drift» ընկնելը պրովայդեր A-ի փոխակերպման բլոկը, կարգավիճակի բանկերը։

RG/AML 'պարտադիր դաշտեր (լիմիտներ, www.f-www.lusion, KYC ստատուսներ); Կրճատված KYC-ն դրոշը տեղադրում է կոդավորման բլոկի վրա, թիկետ կոմպլենսով։

Մարքեթինգը/CRM 'ռուսական քարոզարշավների, UTM, իրադարձությունների դեդուպը։ k-անանուն վիտրիններում։

14) Ճանապարհային քարտեզը

0-30 օր (MVP)

1. Միացրեք պայմանագրերը հիմնական հավաքածուների վրա 'payments, game _ rounds, users, features։

2. Ակնկալիքների կատալոգը (10-15 հիմնական) + կարանտին + ալերտները։

3. Dashbord Freshness/Completeness/Uniqueness; զեկույցը։

4. Runbook’и для `Freshness`, `Duplicates`, `Schema drift`.

30-90 օր

1. Միջմայրցամաքային հասակները և հավասարակշռությունները։ waiver գործընթացը և semver կանոնները։

2. Սթրիմ-վալիդացիա (late, dedup, watermarks); PII դետեկտորները։

3. CI/CD-ի հետ ինտեգրումը 'աղբյուրների և փոխակերպումների պայմանագրեր։

4. SLO հատկությունները OKR-ում ածխաջրածինների թիմերում։

3-6 ամիս

1. AIOps-ի նախադրյալները։ պատճառների տեղայնացումը։

2. Քրոս բրենդը/գեո որակի քաղաքականությունը և համակարգչային հաշվետվությունները։

3. Post-mortems P1-ը բացատրում է golden-սեթների և կանոնների համալրումը։

4. Կապը հոսքերի ալերտինգի և անոմալիաների վերլուծության հետ (մեկ տերմինալ)։

15) RACI

I. Governae (A/R) 'ստանդարտներ, պայմանագրեր, կանոնների աուդիտ։

Domain Owners (R) 'հիբրիդային սպասումներ և ինվարանտներ։

Master Platform (R) 'սպասումների, կարանտինի, ալերտայի, ռուսական։

System/DPO (A/R) 'մասնավորություն/PII/k-անանուն, geo/tenault-մեկուսացում։

MSE/Observability (C) ՝ շարժիչների, SLO/SLI միկրոակտիվացում։

Cort/Finance (C) 'բիզնես հավասարակշռություններ, մրցույթի գերակայություններ։

16) Anti-patterna

Վալիդացիան «միայն MSH-ում» - ուշ, թանկ, ցավոտ։

Ոչ մի կարանտին, «կեղտը» գնում է Gold/ML-ում և կոտրում վստահությունը։

Առանց սեզոնային/ժամ/շուկաների կոշտ շեմերը բացատրում են ալտերի փոթորիկը։

Սեփականատիրոջ և semver-ի բացակայությունը ղեկավարում էր բացառությունների քաոսը։

Լոգները PII-ից և «սկրինշոտները ընդհանուր ալիքի մեջ»։

Տարբեր «երկրորդական օրեր» փոխարեն անընդհատ։

17) Կապված հատվածներ

Intel Ops-պրակտիկան, Տվյալների և տարբերակի աուդիտը, Տվյալների ծագումը և ճանապարհը, Alerta-ը տվյալների հոսքերից, անոմալիաների և հարաբերակցությունների վերլուծությունը, Հասանելիության վերահսկումը, Տվյալների անվտանգությունը և կոդավորումը, տվյալների պահպանման քաղաքականությունը, MLOps-ը 'մոդելների շահագործումը։

Արդյունքը

Վալիդացիան ոչ թե ֆիլտրն է վերջում, այլ որակի պայմանագրի միջոցով 'ինժեներությունից և սթրիմից մինչև վիտրինը և առցանց ֆիչը։ Հստակ սպասումները, կարանտինը, ալերտները և SLO-ն վերածում են վստահելի տվյալների 'հաշվետվությունները ճիշտ են, մոդելները կայուն, վճարումները անվտանգ են, կոմպլեքս։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Telegram
@Gamble_GC
Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։