Ρεύμα έναντι ανάλυσης παρτίδας
1) Συνοπτική παρουσίαση
Ροή - συνεχής επεξεργασία συμβάντων σε δευτερόλεπτα: καταπολέμηση της απάτης/ΑΠΑ, ενεργοποιήσεις ΟΠΚ, καταχωρίσεις SLA, επιχειρησιακές επιτροπές.
Παρτίδα - περιοδικός επανυπολογισμός με πλήρη αναπαραγωγιμότητα: ρυθμιστική υποβολή εκθέσεων (GGR/NGR), χρηματοοικονομικά έγγραφα, σύνολα δεδομένων ML.
Ορόσημα: Stream p95 e2e 0. 5- 5 s, Παρτίδα D + 1 έως 06:00 (κλειδαριά) .
2) Πίνακας επιλογής (TL· DR)
80/20 κανόνας: Οτιδήποτε δεν απαιτεί αντίδραση <5 λεπτά - σε παρτίδα? τα υπόλοιπα βρίσκονται στο Stream, με την επικύρωση της βραδινής παρτίδας.
3) Αρχιτεκτονικές
3. 1 Lambda
Ροή για επιγραμμική + παρτίδα για ενοποίηση. Συν: ευελιξία. Μείον: δύο λογικές.
3. 2 Kappa
Όλα είναι σαν ρεύματα. Παρτίδα = «replay» μέσω log. Συν: ενιαίος κωδικός. Μείον: πολυπλοκότητα των επαναλήψεων/κόστους.
3. 3 Lakehouse-Hybrid (συνιστάται)
Stream → online OLAP Marts (λεπτά) και Bronze/Silver; Η παρτίδα επανασυναρμολογεί το Χρυσό (D + 1) και δημοσιεύει εκθέσεις.
4) Δεδομένα και χρόνος
Ροή
Παράθυρα: tumbling/hopping/session.
Υδατογραφήματα: 2-5 λεπτά. τα καθυστερημένα δεδομένα επισημαίνονται και αμβλύνονται.
Stateful: CEP, dedup, TTL.
Παρτίδα
Προσαυξήσεις/CDC: 'updated _ at', log replication.
SCD I/II/III: ιστορικό χαρακτηριστικών.
Στιγμιότυπα: στρώματα ημέρας/μήνα για «as-of».
5) Πρότυπα εφαρμογής στο iGaming
AML/Antifraud: Stream (ταχύτητα/διάρθρωση) + Συνδυασμοί παρτίδων και περιπτώσεις.
Υπεύθυνο παιχνίδι: Έλεγχος ροής ορίων/αυτοαποκλεισμών. Μητρώα αναφοράς παρτίδων.
Λειτουργίες/SRE: Ειδοποιήσεις ροής SLA. Ομαδική μετά την ανάλυση συμβάντων και τάσεων.
Προϊόν/Μάρκετινγκ: Εξατομίκευση ροής/αποστολές. Ομάδες παρτίδων/LTV.
Χρηματοδότηση/εκθέσεις: Παρτίδα (Χρυσό D + 1, πακέτα WORM), Ροή - Επιχειρησιακά πάνελ.
6) DQ, αναπαραγωγιμότητα, αναπαραγωγή
DQ ροής: επικύρωση συστημάτων, dedup '(event_id, πηγή)', πληρότητα του παραθύρου, μεταγενέστερος λόγος, dup-rate· Κρίσιμη DLQ →.
DQ παρτίδας: μοναδικότητα/FK/εύρος/χρονική περίοδος, συμφωνίες με OLTP/παρόχους· κρίσιμη → αποτυχημένη εργασία + έκθεση.
- Ροή: αντιγραφή θεμάτων ανά εύρος + προσδιοριστικός μετασχηματισμός.
- Παρτίδα: time-travel/λογικές εκδόσεις ('logic _ version') + Χρυσά στιγμιότυπα.
7) Προστασία της ιδιωτικής ζωής και διαμονή
Ροή: ψευδωνυμοποίηση, διαδικτυακή συγκάλυψη, περιφερειακοί αγωγοί (ΕΟΠ/ΗΒ/BR), χρονοδιαγράμματα για εξωτερικά PII-lookups.
Παρτίδα: απομόνωση χαρτογράφησης PII, RLS/CLS, DSAR/RTBF, Legal Hold, αρχεία WORM.
8) Μηχανική κόστους
Ροή: αποφυγή «καυτών» κλειδιών (αλάτισμα), περιορισμός των αναζητήσεων async, καταστάσεις TTL, προσυναρμολόγηση.
Παρτίδα: κατάτμηση/ομαδοποίηση, συμπίεση μικρών αρχείων, υλοποίηση σταθερών συγκεντρωτικών στοιχείων, ποσοστώσεις/παράθυρα εκτόξευσης.
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 Παρτίδα - ΣΥΓΧΩΝΕΥΣΗ (Αύξηση αργύρου)
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 ingest→alert ≤ 2-5 c πληρότητα окна ≥ 99. 5%
σφάλματα σχήματος ≤ 0. 1%
λόγος καθυστέρησης ≤ 1%
διαθεσιμότητα 99 ευρώ. 9%
Παρτίδα (ορόσημα)
Χρυσός. η ημέρα είναι έτοιμη μέχρι τις 06:00 κλειδαριά.
πληρότητα ≥ 99. 5%
ισχύς ≥ 99. 9%
Περιστατικό MTTR DQ ≤ 24-48 ώρες
11) Δοκιμές και ελευθερώσεις
Συμβάσεις/συστήματα: δοκιμές με γνώμονα τον καταναλωτή· back-compat CI.
Ροή: κανόνες καναρινιού, σκοτεινή εκτόξευση, προσομοιωτής αναπαραγωγής.
Παρτίδα: ξηρή σε δείγματα, σύγκριση μετρήσεων, αντιπαραβολή.
12) Αντι-μοτίβα
Διπλή λογική: διαφορετικοί υπολογισμοί ροής και παρτίδας χωρίς ευθυγράμμιση τύπου.
Συγχρονισμένες εξωτερικές API στη θερμή διαδρομή Stream χωρίς cache/timeouts.
Πλήρης επαναφόρτωση «ακριβώς σε περίπτωση» αντί για αυξήσεις.
Χωρίς υδατογραφήματα/καθυστερημένες πολιτικές.
PII σε αναλυτικά στρώματα· Δεν υπάρχουν CLS/RLS.
Ο χρυσός παρουσιάζει ότι «μεταλλάσσονται» αναδρομικά.
13) Συνιστώμενο υβρίδιο (playbook)
1. Stream-loop: κατάποση → λεωφορείου → Flink/Beam (υδατογραφήματα, dedup, CEP) →
OLAP (ClickHouse/Pinot) για πίνακες 1-5 λεπτών + Bronze/Silver (παράρτημα).
2. Batch Loop: Προσαυξήσεις/CDC → Silver Normalization/SCD → Gold Daily Displays/Reports (WORM).
3. Ταίριασμα: ένα μόνο σημασιολογικό στρώμα μετρήσεων. νυχτερινή συμφιλίωση· ασυμφωνίες> κατώτατο όριο → εισιτηρίων.
14) RACI
R (Υπεύθυνη): Streaming Platform (Stream-info), Data Engineering (Batch models), Domain Analytics (MLOps), MLOps (features/Feature Store).
A (υπόλογος): Προϊστάμενος δεδομένων/CDO.
C (Ζητήθηκε η γνώμη): Συμμόρφωση/Νομικός/ΥΠΔ, Finance (FX/GGR), Κίνδυνος (RG/AML), SRE (SLO/стоимость).
I (Ενημερωμένο): BI/Προϊόν/Μάρκετινγκ/Δραστηριότητες.
15) Χάρτης πορείας
MVP (2- 4 εβδομάδες):1. Kafka/Redpanda + 2 κρίσιμα θέματα ('πληρωμές', 'auth').
2. Λειτουργία ανάφλεξης: υδατογράφημα + dedup + 1 κανόνας CEP (AML ή RG).
3. OLAP showcase 1-5 min + dashboards lag/late/dup.
4. Lakehouse Silver (ACID), ο πρώτος χρυσός. (D + 1 έως 06:00).
Φάση 2 (4- 8 εβδομάδες):- Προσαυξήσεις/CDC ανά τομέα, SCD II, στρώμα σημασιολογικών μετρήσεων.
- Streaming DQ και νυχτερινή Stream↔Batch συμφιλίωση.
- Περιφερειοποίηση (EEA/UK/BR), DSAR/RTBF, Legal Hold.
- Προσομοιωτής αναπαραγωγής, έκδοση καναρινιού/A-B κανόνων/μετρήσεων.
- πίνακες κόστους και ποσοστώσεις· κλιμακωτή αποθήκευση· Διδασκαλίες DR.
- Αυτόματη δημιουργία τεκμηρίωσης και γενεαλογίας βιτρίνας/μετρήσεων.
16) Κατάλογος ελέγχου εφαρμογής
- Συστήματα/συμβάσεις στο μητρώο· οι δοκιμές back-compat είναι πράσινες.
- Ρεύμα: υδατογραφήματα/επιτρεπόμενη καθυστέρηση, дедуп, DLQ· OLAP panels in prod.
- Παρτίδα: προσαυξήσεις/CDC, SCD II, Gold D + 1 με εξαγωγές WORM.
- Ενιαίο σημασιολογικό στρώμα μετρήσεων. νυχτερινά Stream↔Batch συμφιλίωση.
- Πίνακες DQ φρεσκάδας/πληρότητας/ισχύος· υστέρηση συναγερμού/καθυστέρηση/λήξη.
- RBAC/ABAC, κρυπτογράφηση, κατοικία· DSAR/RTBF/Legal Hold.
- Το κόστος υπό έλεγχο (κόστος/GB, κόστος/ερώτημα, κρατικό μέγεθος, επαναλήψεις κατανέμονται ποσοστώσεις).
17) Η τελική γραμμή
Το ρεύμα και η παρτίδα δεν είναι ανταγωνιστές, αλλά δύο εργαλεία της ίδιας κίνησης. Stream δίνει την αντίδραση "εδώ και τώρα", Batch - επαληθεύσιμη αλήθεια "το πρωί. "Η υβριδική προσέγγιση Λέικχαουζ, ένα ενιαίο στρώμα μετρήσεων και η πειθαρχία DQ/γενεαλογίας σας επιτρέπουν να φτιάξετε γρήγορα, αναπαραγώγιμα και συμμορφούμενα αναλυτικά περιγράμματα που είναι βέλτιστα στην SLA και το κόστος.