GH GambleHub

მონაცემთა გამდიდრება

1) დანიშვნა და ბიზნესის ღირებულება

გამდიდრება „ნედლეულ“ მოვლენებს სასარგებლო ფაქტად აქცევს, ამატებს კონტექსტს და ნიშნებს:
  • ფინანსები/ანგარიშგებები: თანხების fx ნორმალიზაცია, ბაზრებზე/საგადასახადო განაკვეთებთან დაკავშირება, GGR/NGR გაანგარიშება.
  • შესაბამისობა/AML/RG: რისკის მორიელები, სანქციები/REP ეტიკეტები, RG ლიმიტები, ქცევითი ნიშნები.
  • მარკეტინგი/პროდუქტი: ტრაფიკის წყაროები, სეგმენტები, მისიები/სტუმარი, პერსონალიზაცია.
  • SRE/ოპერაციები: გეო/ASN ტრეფიკისთვის, კლიენტის/მოწყობილობის ტიპი, ფიჩფლაგები და გამოშვებები.

მთავარი შედეგია მოდელების სიზუსტის გაზრდა, მოხსენების ხარისხი და გადაწყვეტილების მიღების სიჩქარე.


2) გამდიდრებული წყაროები (სავარაუდო კატალოგი)

რეფერენდუმი/კატალოგები: თამაშები, პროვაიდერები, ბაზრები/იურისდიქცია, ვალუტა, საგადასახადო ცხრილი, არდადეგების კალენდარი.
KYC/KYB/RG: გადამოწმების დონე, სტატუსები, თვითკმაყოფილება, ლიმიტები, ასაკობრივი ჯგუფები.
AML/სანქციები/PEP: სკრინინგის ჰიტები, სიები, რისკის დონე.
ქსელები და მოწყობილობები: IP - გეო/ASN, მოწყობილობა/OS/ბრაუზერი, მოწყობილობა fingerprint.
გადახდის პროვაიდერები (PSP): BIN ცხრილები, მეთოდები, MCC, რისკის ეტიკეტები.
FX/დრო: გაცვლითი კურსები ღონისძიების თარიღისთვის, ადგილობრივი დროის ზონები/DST.
შინაარსი და მარკეტინგი: წყაროები/კამპანიები/UTM, აფილატები, სეგმენტები.
მოდელები და euristics: წინამორბედი მორიელები, ემბედინგი, კატეგორიული mappings.


3) გამდიდრების ტიპები

Lookup-Join: წერტილოვანი შედარება კლავიშზე (game _ id, BIN, ip _ range, user _ pseudo _ id).
Dimension attach: გაზომვის დამატება (დიმ.) ფაქტებისთვის.
Derived fields: გაანგარიშებული სვეტები (amount _ base, ადგილობრივი _ დრო, tax _ rate).
Aggregations/velocity: ფანჯრის მრიცხველები (N განაკვეთები/წთ, ანაბრების ოდენობა/საათი).
Risk/behavioral features: „ბოლო მოვლენის დრო“, შოუს-wallet, ღამის აქტივობა.
Geo/ASN/Device: ქვეყნის კოდი, რეგიონი, ოპერატორი, მოწყობილობის/ბრაუზერის ტიპი.
Semantic mappings: პროვაიდერების/თამაშების კლასიფიკაცია, მოთამაშეთა მტევანი.
ML ფიჩები: ნიშნები ონლაინ/ოფლაინ მოდელირებისთვის (Feature Store).


4) სად გამდიდრება: Batch vs Stream

Stream (ნამდვილი დრო): ანტიფროდი, RG ტრიგერები, SRE ალერტები - შეფერხებები p95-2-5 ს; lookup ქეში (Redis/Scylla), ასინქრონული მოთხოვნები პროვაიდერებისთვის ტაიმაუტებით.
Batch (მიკრო ბატჩი/ყოველდღიურად): Gold (GGR/RG/AML) ფანჯრები, კრეკერები, მოხსენებები - სტაბილურობა და სისრულე უფრო მნიშვნელოვანია, ვიდრე ლატენტობა.
ჰიბრიდი: სწრაფი ონლაინ ნიშანი + ღამის გადანერგვა (რეკონსტრუქცია/აკურაცია).


5) არქიტექტურული რეფერენდუმი

1. Bronze არის ნედლეული მოვლენები (append-only).
2. Silver (clean/conform) - ნორმალიზაცია, გასაღებები, პირველადი lookup 'და (fx, geo, dim.) .
3. Enrichment Layer - გაფართოებული ნიშნები, ფანჯრების აგრეგატები, რისკის ეტიკეტები.
4. Feature Store - ნიშნების რეესტრი (ონლაინ/ოფლაინ კოორდინაცია).
5. გოლდი - ფანჯრები BI/მარეგულირებელი/მოდელების ქვეშ; უცვლელი არტეფაქტები.
6. სერვისები - API/GraphQL, საანგარიშო ექსპორტები, რეალური დრო ალერტები.

კომპონენტები: კაფკა/Redpanda, Flink/Spark/Beam, Redis/Scylla (lookup), ClickHouse/Pinot (ოპერაციული კითხვა), Lakehouse (Delta/Iceceberg/Hudi/Hudi).


6) კონტრაქტები და სქემები

Schema-first: 'event _ time', 'schema _ version', სტაბილური გასაღებები (user _ pseudo _ id, game _ id, transaction _ id).
გამდიდრების ნიშნები: 'enrichment. version`, `enrichment. sources`, `fx_source`, `geo_source`, `model_version`.
ვერსია: ახალ მახასიათებლებს ემატება nullable; breaking ცვლილებები - '/v2 'და ორმაგი ჩაწერა.


7) გამდიდრების მაგალითები (SQL/ფსევდო კოდი)

7. 1 FX ნორმალიზაცია და ადგილობრივი დრო

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. 2 Geo/ASN IP (ფსევდო კოდი)

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 ანაბრების სიჩქარის ფანჯრის ნიშნები (ნაკადი)

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 ლიმიტებთან

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) გამდიდრების ხარისხი (DQ)

მინიმალური წესები:
  • FX: 'fx _ rate _ used' NULL, 'fx _ source' whitelist, გამოთვლითი 'amount _ base _ 0'.
  • Geo/ASN: წარმატებული lookups- ის წილი 98% (ბაზრებზე), 'country' ცნობარში.
  • RG/AML ეტიკეტები: 'valid _ from/valid _ to' (SCD II) არ კვეთს; ისტორიაში „ხვრელების“ არარსებობა.
  • დანაყოფები/ფანჯრები: ფანჯრების სისწორე (არ არსებობს ორმაგი აღრიცხვა), კომპლექტი - 99. 5%.
  • მოდელების ვერსიები: 'მოდელის _ ვერსია' არის, სიმბოლოების დრიფტის კონტროლი.
YAML წესების მაგალითი:
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) კონფიდენციალურობა და შესაბამისობა

PII- ის მინიმიზაცია: გამდიდრება ფსევდო-ID- ით, რეალური იდენტიფიკატორები - ცალკეულ წრეში.
Geo ლოკალიზაცია და რეზიდენტობა: მარშრუტიზაცია რეგიონში (EEA/UK/BR), ცალკეული დაშიფვრის გასაღებები.
DSAR/RTBF: გამდიდრებულმა პროექციებმა ხელი უნდა შეუწყოს „დამალვას „/რედაქტორს; შეინახეთ იურიდიული საფუძველი გამონაკლისის მიზნით.
Legal Hold: წაშლის გაყინვა საანგარიშო არტეფაქტებისთვის/შემთხვევებისთვის.


10) დაკვირვება და ხაზები

Linege: ნედლეული მოვლენიდან, lookup/აგრეგატები, ფანჯრები/მოდელები; ჩაწერეთ წყაროების ვერსიები ('fx _ source', 'geo _ source', 'bin _ source').
SLI/SLO: freshness p95 (Silver) ≤ 15 мин; წარმატებული geo-lookups - 98%; შევსებული საკვანძო ნიშნით ჩანაწერების წილი 99% -ს შეადგენს; enrich-strich p95-2-5.
Dashboards: წყაროების შესახებ Completeness თერმული რუკა, საცნობარო წიგნების/მოდელების ვერსიების რუკა, „ძვირადღირებული“ join '- ის მონიტორი, მახასიათებლების დრიფტი.


11) ღირებულება და შესრულება

ქეში/მატერიალიზაცია: ხშირი lookup 'და Redis/Scylla- ში; პერიოდული snapshot.
კომპაქტური ნიშნები: შეინახეთ დანაყოფები (და არა „ნედლეული“ სიები); გამოიყენეთ parquet/skate ფორმატები.
განაწილება: თარიღი/ბაზარი/ტენანტი; კლასტერიზაცია ხშირად გაფილტრული მინდვრებში.
ადაპტირებული სიხშირე: მძიმე enrich-joba - ღამით; realtime მხოლოდ კრიტიკულია.
Chargeback: აღრიცხვა cost/query და cost/GB გუნდებში/fiich.


12) პატერნები და ანტი-ნიმუშები

ნიმუშები:
  • Dimension Lookup + SCD II RG/KYC/პროვაიდერებისთვის.
  • Async Enrichment Timauts და fallback (ეტიკეტი „unknown“ + გამეორება).
  • Feature Store ონლაინ/offline კოორდინაციით და გადასასვლელი ტესტებით.
  • გამდიდრების კოდი (ბარიერი/კატეგორიული რუქები).
ანტი შაბლონები:
  • გარე API- ს მკაცრი მითითება ცხელ გზაზე ქეშის გარეშე.
  • წყაროების არაგადამდები ვერსიები ('fx _ source', 'geo _ source').
  • დენორმალიზაცია „ყველაფერი ყველაფრით“ სილვერში (ღირებულების/სირთულის აფეთქებები).
  • PII ანალიტიკურ ფენებში შემოტანა.

13) პროცესები და RACI

R (Responsible): Data Engineering (paylines enrich/stream), Domain Owners (ნიშნების სემანტიკა), MLOps (Feature Store).
A (Accountable): Head of Data / Chief Data Officer.
C (Consulted): Compliance/Legal/DPO, Finance (FX/налоги), Risk (RG/AML), SRE.
I (ინფორმირებული): BI/პროდუქტი/მარკეტინგი/ოპერაციები.


14) გზის განხორციელების რუკა

MVP (2-4 კვირა):

1. გამდიდრების წყაროების კატალოგი (fx, geo, ბაზრები, RG/KYC).

2. Silver ნორმალიზაცია + ძირითადი lookup 'და (fx/geo/dim.) .

3. პირველი velocity ერთეულები (ანაბრები/განაკვეთები) და enriched. ცხრილის v1.

4. Dashboard completeness/freshness, წყაროების ვერსიები.

ეტაპი 2 (4-8 კვირა):
  • სანქციების დაკავშირება/RER/KUV, BIN ცხრილები PSP, მოწყობილობა fingerprint.
  • Feature Store (ნიშნების ბირთვი) + ონლაინ ქეში, Flink realtime გამდიდრება.
  • DQ წესები enrich ფენის, ხაზის და „dry-run“ სიმულაციების შესახებ.
ეტაპი 3 (8-12 კვირა):
  • პერსონალიზაცია (მისიები/სტუმარი) და RG/AML დეტექტორები ონლაინ რეჟიმში.
  • ღირებულების მენეჯმენტი (კვოტები, მატერიალიზაცია, Z წესრიგი), მულტფილმის რეგიონი.
  • ნიშნების და კატალოგის დოკუმენტაციის ავტომატური წარმოება („feature cards“).

15) ხარისხის ჩამწერი გაყიდვამდე

  • გაფორმებულია შეთანხმებული გასაღებები და სქემები, წყაროების ვერსიები.
  • DQ წესები fx/geo/RG/სანქციები/ფანჯრები; ალერტები და SLO.
  • Kashi/Taimauts და fallback გარე lookup's.
  • Linege და dashboards ღირებულება/შესრულება.
  • DSAR/RTBF/Legal Hold პროცედურები გამდიდრებული ცხრილებისთვის.
  • ნიშნის დოკუმენტაცია (owner, ფორმულები, SLO, გავლენა).

16) ხშირი შეცდომები და როგორ მოვერიდოთ მათ

საცნობარო წიგნების/მოდელების შეუმჩნეველი ვერსიები: ყოველთვის ჩაწერეთ '_ source' და 'მოდელის _ ვერსია'.
Fx „რეტროაქტიულად“ გაანგარიშება: გამოიყენეთ კურსი ღონისძიების დროს; შეინახეთ წყარო FX.
PII ნაზავი: ტოკენიზირება და იზოლირება mappings.
ორმაგი აღრიცხვა ერთეულებში: შეამოწმეთ ფანჯრები და დედაპლატი.
სინქრონული გარე ზარები ქეშის გარეშე: შემოიტანეთ async + ქეში/რეტრაი.
არ არსებობს fich- ის გადაკეთება: ონლაინ/ოფლაინ ტრანსფორმაციების ერთი კოდი, შესაბამისობის ტესტები.


17) გლოსარიუმი (მოკლედ)

Lookup/Dimension attach - საცნობარო წიგნის დამატება კლავიშზე.
Feature Store - ML ნიშანი რეესტრი და სერვინგი.
SCD II - გაზომვების ისტორიალიზაცია ინტერვალებით.
FX - გაცვლითი კურსები და თანხების ნორმალიზაცია.
ASN - ქსელის ავტონომიური სისტემა; სასარგებლოა ანტიფროდისა და გეო-ანალიტიკოსებისთვის.


18) შედეგი

გამდიდრება არის მოვლენების ცოდნად გადაქცევის დისციპლინა: შეთანხმებული გასაღებები და სქემები, რომლებიც კონტროლდება lookup 'და შეკრებები, ვერსირებული წყაროები, ნაგულისხმევი კონფიდენციალურობა, DQ და დაკვირვება. აღწერილი ნიმუშების შემდეგ, თქვენ მიიღებთ რეპროდუქციულ, ეკონომიურ და კომპოზიციურ ფანჯრებს და მახასიათებლებს, რომლებიც მზად არიან მოხსენებისთვის, პერსონალიზაციისთვის და რეალური რისკის დეტექტორებისთვის.

Contact

დაგვიკავშირდით

დაგვიკავშირდით ნებისმიერი კითხვის ან მხარდაჭერისთვის.ჩვენ ყოველთვის მზად ვართ დაგეხმაროთ!

ინტეგრაციის დაწყება

Email — სავალდებულოა. Telegram ან WhatsApp — სურვილისამებრ.

თქვენი სახელი არასავალდებულო
Email არასავალდებულო
თემა არასავალდებულო
შეტყობინება არასავალდებულო
Telegram არასავალდებულო
@
თუ მიუთითებთ Telegram-ს — ვუპასუხებთ იქაც, დამატებით Email-ზე.
WhatsApp არასავალდებულო
ფორმატი: ქვეყნის კოდი და ნომერი (მაგალითად, +995XXXXXXXXX).

ღილაკზე დაჭერით თქვენ ეთანხმებით თქვენი მონაცემების დამუშავებას.