GH GambleHub

Datenspeicher und OLAP-Modelle

(Abschnitt: Technologie und Infrastruktur)

Kurze Zusammenfassung

Data Warehouse (DWH) - Die Referenzschicht von iGaming Analytics: Berichte an Regulierungsbehörden, Profitabilität nach Produkten/Märkten, Kohorten-LTV, Betrugsbekämpfung, CRM-Segmentierung und Echtzeit-Dashboards. Nachhaltiges DWH basiert auf einem klaren Datenmodell (Star/Snowflake/Data Vault), robuster Integration (ETL/ELT + CDC), durchdachter Leistung (Säulenmotoren, Parties, MVs), strenger Metriken-Semantik, Sicherheit/PII und Kostenmanagement.

Architektonische Ansätze

Klassische DWH (Kimball vs Inmon)

Kimball (Dimensional/Star/Snowflake): schnelle Berichtsvitrinen; Fokus auf Fakten und Dimensionen, SCD-Geschichte. Schnelles Time-to-Valley.
Inmon (Corporate Information Factory): normalisierter Kern + Vitrinen; zeitlich härter, aber streng und zentral.

Data Vault 2. 0

Hubs-Links-Satellites: ein skalierbares „Roh“ -Modell zur Integration von Änderungsquellen und Audits. Darüber werden Star-Vitrinen aufgebaut.

Data Lake / Lakehouse

Data Lake: Rohdateien (Parkett/ORC) + Verzeichnisse (Hive/Glue/Unity/Metastore).
Lakehouse: Single Layer für Batch/Stream, ACID Table (Delta/Iceberg/Hudi), Time-Travel, Upsert/Merge, Compact Files, Z-Order/Clustering.

Medallion (Bronze–Silver–Gold)

Bronze: Rohdaten (raw) + CDC.
Silber: gereinigt und konform.
Gold: Geschäftsvitrinen/Metriken/Würfel.
Geeignet für Hybriden (Kafka → Bronze; Silver в Lakehouse; Gold в ClickHouse/BigQuery/Snowflake).

OLAP Modelle: Star, Snowflake, Data Vault

Sternenschema (Stern)

Tabelle Fact: Transaktionen (Wetten, Einlagen, Sitzungen).
Dimensionen: Spieler, Spiel, Anbieter, Datum/Uhrzeit, Geo, Anziehungskanal.
Vorteile: einfache Joins, prognostizierte Leistung.

Snowflake

Normalisierung von Dimensionen (Hierarchien von Ländern/Regionen/Städten, Produkthierarchien).
Vorteile: weniger Duplizierung; Minus - mehr Joins.

Data Vault → Star

Die Rohänderungen addieren wir in DV (Audit, vollständige Reproduzierbarkeit), die Berichtsvitrinen bauen wir als Star/Snowflake auf.

Integration: ETL/ELT, CDC, langsame Änderungen

Pipeline

Outbox/CDC von OLTP (Postgres/MySQL) → Kafka/ → Bronze-Konnektoren.
ELT: Reinigung, Dedup, Normalisierung in Silber.
Geschäftslogik und Aggregationen in Gold/Vitrinen.

SCD (Slowly Changing Dimensions)

Typ 1: Überschreiben (für nicht wesentliche Felder).
Typ 2: Geschichtlichkeit (datierte Versionen) - Standard für Profile/Kanäle/Preise.
Typ 3: Speichert ein Paar von Werten (selten).

Beispiel SCD2 (SQL, allgemeine Ansicht):
sql
-- insert new dimension version
INSERT INTO dim_player (player_sk, player_id, country, valid_from, valid_to, is_current)
SELECT gen_sk(), s. player_id, s. country, now(), '9999-12-31', true
FROM staging_player s
LEFT JOIN dim_player d ON d. player_id = s. player_id AND d. is_current = true
WHERE d. player_id IS NULL OR d. country <> s. country;

-- closing the old version
UPDATE dim_player d
SET valid_to = now(), is_current = false
FROM staging_player s
WHERE d. player_id = s. player_id AND d. is_current = true AND d. country <> s. country;

Semantische Ebene und „wahre“ Metriken

Geben Sie eine einzelne Schicht von Metriken (semantic layer) ein: Definitionen von GGR, NGR, Nettoeinlagen, ARPPU, LTV, Churn, Retention Cohorts.
Metriken als Code (dbt metrics/LookML/Semantic Layer) → die gleichen Formeln in allen Berichten.
Kalender: Datums-/Stundentabelle mit den Attributen TZ/Regionen/Wochenende/Kampagnen.

Speicher und Motoren: Auswahl unter Profil

Kolonnen- und Cloud-DWHs

ClickHouse: ultraschnelle Scans/Aggregationen, materialisierte Darstellungen, Projektionen; ausgezeichnet für Events/Telemetrie und Marketing-Schaufenster.
BigQuery: serverless, scale, automatische Caches/Cluster; Preis pro Scan; praktisch für gemischte Lasten und Ad-hoc.
Snowflake: Compute/Storage-Filiale, On-Demand-Cluster, Zeitreisen; transparent für verschiedene Teams.
Redshift/Vertica/Pinot/Druid: Optionen unter OLAP/Echtzeit.

Tuning für das Profil

Partitionierung nach Datum/Region/Kanal.
Clustering/Sortierung nach Filter-/Joynschlüssel.
Komprimierung und Kodierung von Wörterbüchern.
Voraggregationen (Rollup, Cubes), materialisierte Ansichten.
Approx Funktionen (HyperLogLog/approx_distinct) für billige Schätzungen.

Leistungsdesign

Partitionierung und Clustering

Die Partei ist die Abteilgrenze. Tag/Stunde Parteien für Veranstaltungen.
Clustering (sort keys/Z-order) - Beschleunigt Bereiche und Join-s.

Materialisierte Ansichten (MV)

GGR/NGR-Vorrechnung nach Tagen/Ländern/Produkten.
Inkrementelles Update aus dem CDC-Stream.

Beispiel ClickHouse (Merge-Hold MV):
sql
CREATE MATERIALIZED VIEW mv_ggr_daily
ENGINE = SummingMergeTree()
PARTITION BY toYYYYMMDD(ts)
ORDER BY (country, product_id, toDate(ts)) AS
SELECT toDate(ts) AS d,
country,
product_id,
sum(stake) AS stake_sum,
sum(win)  AS win_sum,
sum(stake - win) AS ggr
FROM bets
GROUP BY d, country, product_id;

Inkrementelle Modelle (dbt/ELT)

Strategien 'insert _ overwrite' nach Partitur, 'merge' nach CDC-Schlüssel, 'watermark' nach 'updated _ at'.

Join-Strategien

Replikation der Messungen in jedes Chargensegment (denorm).
Broadcast small dims; shuffle große Fakten nach Schlüssel sortiert.

Kosten: Steuerung und Optimierung

BigQuery/Snowflake: Scangröße begrenzen (Parties/Cluster entwerfen), Ergebniscache/materialisierte Ansichten einschließen, BI-Auto-Quests begrenzen.
ClickHouse: Größe der Parteien, Häufigkeit der Murges, Budget für die Lagerung (TTL für Rohveranstaltungen, Aggregationen sind langlebig).
Die Semantik der Metriken reduziert „doppelte“ Berechnungen.
Daten pruning: retention für Bronze, Aggregationen für Gold.

Datenqualität (DQ), Katalog, Lineage

DQ-Schecks: Vollständigkeit (completeness), Einzigartigkeit, Bereiche, Geschäftsregeln (z. B. GGR ≥ 0 in Aggregaten).
Data Catalog & Lineage: Tabellen/Feldbeschreibungen, Besitzer, PII-Klassifizierung, Trace vom Bericht zur Quelle.
Schemaüberwachung: Ereignisvertrag/CDC, Warnungen bei inkompatiblen Änderungen.

Sicherheit, Compliance und Multi-Tenant

PII-Segmentierung: einzelne Zonen, Maskierung/Pseudonymisierung, Spalten mit KMS-Verschlüsselung.
RBAC/ABAC: Rollen auf Projekt-/Diagramm-/Tabellen-/Zeilenebene (RLS), Wiehs für „need-to-know“.
Datenlokalisierung: Regionale Buckets/Warehouses (EU/TR/LATAM).
Zugangsaudit: Wer Schaufenster und Modelle gelesen/gewechselt hat.

DRs, Backups und Reproduzierbarkeit

Versionierung des Datencodes (dbt/git), der Dev/QA/Prod-Umgebung.
Metastasen/Katalogschnappschüsse + Tabellenversionierung (Zeitreise).
Retention/TTL Schichten Bronze/Silber/Gold; Export kritischer Vitrinen.
Game-Day: Wiederherstellung der Vitrinen, Überprüfung der Integrität der Metriken.

Echtzeit und hybride Schaufenster

Stream-to-OLAP: Kafka → ClickHouse/Pinot/Druid für Minutenvitrinen.
Materialisierte Ansichten + CDC für Fast-Online-Updates (5-15 Min.).
Die semantische Schicht bleibt einheitlich: Die Metriken sind in Echtzeit und Batch identisch.

Beispielvitrine „GGR nach Tag und Land“ (Generalized SQL)

sql
CREATE TABLE fact_bets (
bet_id   BIGINT,
player_sk BIGINT,
game_sk  BIGINT,
country_sk BIGINT,
stake   DECIMAL(18,2),
win    DECIMAL(18,2),
ts     TIMESTAMP
) PARTITION BY DATE(ts);

CREATE TABLE dim_country (
country_sk BIGINT PRIMARY KEY,
iso2    STRING,
region   STRING,
valid_from TIMESTAMP,
valid_to  TIMESTAMP,
is_current BOOL
);

-- Showcase
CREATE MATERIALIZED VIEW mart_ggr_daily AS
SELECT
DATE(ts) as d,
c. region,
SUM(stake) AS stake_sum,
SUM(win)  AS win_sum,
SUM(stake - win) AS ggr
FROM fact_bets f
JOIN dim_country c ON c. country_sk = f. country_sk AND c. is_current
GROUP BY d, c. region;

Checkliste für die Implementierung

1. Identifizieren Sie Quellen und Domänen, fixieren Sie das Wörterbuch der Metriken.
2. Modell wählen: DV für Roh-/Revisionsschichten + Star für Schaufenster.
3. Entwerfen Sie Parteien/Cluster für Schlüsselanforderungen und Fenster.
4. Konfigurieren Sie CDC/ELT, SCD-Richtlinien und Surrogate-Keys.
5. Geben Sie die semantische Ebene (Metriken als Code) und den Datums-/Stundenkalender ein.
6. Erstellen Sie MVs/Voraggregationen für teure Berichte.
7. Aktivieren Sie DQ/Catalog/Lineage und Schemaüberwachung.
8. Definieren Sie RBAC/PII/Lokalisierung, Verschlüsselung, Auditing.
9. Konfigurieren Sie die Überwachung von p95/p99, Kosten, Alerts für Degradation und Überverbrauch.
10. Regelmäßige DR-Übungen und Reproduzierbarkeit der Umgebung.

Antimuster

„Eine gigantische Tatsache ohne Parteien“ → Scans von Terabyte und die Rechnung wächst.
Inkonsistente Definitionen von Metriken in verschiedenen Dashboards.
Mangel an SCD2, wo das Geschäft Historizität erfordert.
Vorzeitige Normalisierung der Messungen: zusätzliche Joins und langsame Berichte.
Rohdaten ohne DQ-Schecks und Lineage → Berichte „über nichts“.
Keine Retention/TTL → Mülllagerung und Kostenexplosion.

Ergebnisse

Das robuste iGaming-DWH ist ein klares Modell (DV→Star), ein einheitliches Metrikvokabular, korrekte Partitionen/Clustering, materialisierte Vitrinen, strenge DQ/Lineage sowie RBAC/PII/Lokalisierung. Fügen Sie hybrides Streaming für Frische, ELT-getriebene und Kostendisziplin hinzu - und erhalten Sie eine nachhaltige Analyseplattform, die für Turniere, regulatorische Berichte und Ad-hoc-Forschung ohne Überraschungen in p99 und Budget skalierbar ist.

Contact

Kontakt aufnehmen

Kontaktieren Sie uns bei Fragen oder Support.Wir helfen Ihnen jederzeit gerne!

Integration starten

Email ist erforderlich. Telegram oder WhatsApp – optional.

Ihr Name optional
Email optional
Betreff optional
Nachricht optional
Telegram optional
@
Wenn Sie Telegram angeben – antworten wir zusätzlich dort.
WhatsApp optional
Format: +Ländercode und Nummer (z. B. +49XXXXXXXXX).

Mit dem Klicken des Buttons stimmen Sie der Datenverarbeitung zu.