Aufbau eines Marketing Data Warehouse in der Google Cloud

Die Nutzung eines Data Warehouse zur zentralen Konsolidierung von Daten unterschiedlicher Quellsysteme wird mit der stetig wachsenden Datenmenge in Unternehmen immer relevanter. Der Aufbau eines traditionellen Data Warehouse (On-Premise) erfordert meist hohe Investitionen in den Aufbau seiner Infrastruktur sowie in Tools und Lizenzen. Die Nutzung einer solchen Architektur ist dazu zeitaufwendig in ihrer Wartung, oftmals unübersichtlich und lässt sich nur langsam an dynamische Geschäftsanforderungen aus dem Marketing adaptieren. Mit dem Aufkommen der Cloud-Technologie wurde der Aufbau eines solchen Ökosystems jedoch selbst für kleine und mittelständische Unternehmen attraktiv und erschwinglich. Ein Wechsel in die Cloud ist heutzutage allerdings nicht nur eine Kostenfrage. Anbieter wie die Google Cloud Platform bieten mit ihrer “Pay-per-use”-Strategie zusätzlich eine Vielzahl an Backend-Services auf Basis einer elastischen und skalierbaren Infrastruktur. Dies wiederum erlaubt es Unternehmen, schnell auf Veränderungen zu reagieren und die Aktivierung und Nutzung der Daten mit komplementären Services im Marketing-Mix zu erweitern.

In diesem Whitepaper zeigen wir die Unterschiede zwischen Data-Warehouse-Lösungen auf und gehen auf das Potenzial ein, das ein Cloud Data Warehouse für die Datenanalyse und das Marketing eines Unternehmens birgt. Am Beispiel der Google Cloud Platform werden im Folgenden zwei Ansätze für den Aufbau einer Data Pipeline für ein (Marketing) Data Warehouse vorgestellt.

1. Architektur und Layer eines Data Warehouse

Unabhängig von der Art des Data Warehouse stellt der grundlegende Gedanke hinter der Einführung eines solchen die Entlastung der transaktionalen Datenbanken von der analytischen Verarbeitung dar, um eine schnellere Verarbeitung durch die Verwendung eines spaltenbasierten Datenspeichers zu ermöglichen. In ihm werden relevante Datenquellen des Unternehmens konsolidiert und strukturiert. Auf der Eingangsseite erleichtert es die Aufnahme von Daten aus verschiedenen Quellsystemen. Auf der Ausgabeseite bietet es Zugriff auf die Daten für Berichte, Analysen und die Aktivierung in Tools. Es konsolidiert Daten aus unternehmensinternen Anwendungen, Tools und Datenbanken sowie SaaS-Plattformen und dient als zentraler Speicherort aller Daten, die zur Analyse für die Entscheidungsfindung und Aktivierung in Marketing- und Business-Intelligence-Tools benötigt werden.

Die Architektur eines Data Warehouse besteht aus verschiedenen Stufen. Die Systemarchitektur eines Data Warehouse unterscheidet sich zwar je nach Produkt und Anbieter, doch orientiert sich der technische Aufbau an einem modularen Muster, dem sog. “Layer”. Seine Stufen werden in den folgenden Abschnitten erklärt.

1.1 Datenerhebung

Vor dem eigentlichen Laden der Daten in das Data Warehouse ist es notwendig, die unterschiedlichen Strukturen in ein einheitliches Format zu überführen. Die Informationen werden dabei sowohl aus internen Datenquellen (ERP, CRM, CMS, Files etc.) als auch aus relevanten externen Datenquellen (Webdaten, Cloud-Services, Marketingtools etc.) konsolidiert. Für die Erhebung der Daten werden unter anderem folgende Extraktionstechniken genutzt:

Trigger
Falls operative Systeme sog. Datenbanktrigger unterstützen, lassen sich diese einsetzen, um die Datenextraktion zu automatisieren. Trigger definieren Vorgänge, die beim Eintreffen bestimmter Bedingungen und Ereignisse automatisch ausgeführt werden. Bspw. lassen sich Änderungen im Datenbestand der Quellsysteme als Trigger verwenden, die zu einer erneuten Extrahierung der modifizierten Daten führen.

Protokolldateien
Werden Datenbanktrigger nicht unterstützt, lassen sich in den meisten Data-Warehouse-Systemen die Protokolldateien (Logs) der Quellsysteme auswerten, um die darin aufgezeichneten Operationen zu extrahieren.

Monitorprogramme
Stehen weder Trigger noch Protokolldaten zur Verfügung, kommen in der Regel Monitoring-Programme zum Einsatz. Diese erkennen und extrahieren automatisch Änderungen im Datenbestand, die in regelmäßigen Abständen Abbildungen (Snapshots) der zu überwachenden Daten erstellen und mit vorherigen abgleichen.

Im Rahmen der Integration einzelner Quellsysteme stellen die meisten lokalen Data-Warehouse-Konzepte sog. OLAP-Funktionalitäten (Online Analytical Processing) zur Verfügung, die es ermöglichen, Daten in mehrdimensionalen Strukturen darzustellen.

Das OLAP-Verfahren beruht auf dem sog. ETL-Prozess, der sich in folgende Schritte gliedert:

1. Extraktion
Auslesen relevanter Informationen aus der Datenquelle nach Push- oder Pull-Prinzip

2. Transformation
Extraktion, Bereinigung und Vereinheitlichung der Daten in das Format der Zieldatenbank

3. Loading
Abspeichern der transformierten Daten in die jeweiligen Zieldatenbank

1.2 Datenerhaltung

Das Zentrum des Data Warehouse stellt die Ebene der Datenhaltung dar. Dort werden extrahierte Daten meist in Form von mehrdimensionalen Matrizen nach sog. Stern- und Schneeflocken-Schemata gespeichert. Diese beziehen sich jedoch nur selten auf den gesamten Datenbestand des Data Warehouse. Um eine effiziente Auswertung zu ermöglichen, ist es daher üblich, Datenausschnitte des Gesamtbestands, sogenannte Data-Marts, anzulegen.

Ein Data-Mart ist eine Kopie eines Teils des Datenbestands, die in der Regel nicht-persistent als Zwischenspeicher realisiert wird. Mitunter werden auch sogenannte unabhängige Data-Marts genutzt, die einen separaten Ausschnitt der Gesamtdaten dauerhaft sichern.

1.3 Datenbereitstellung

Die Ebene der Datenbereitstellung fungiert als Schnittstelle zu Endanwendungen wie Analytics-, Marketing- und Reporting-Tools. Methoden zur Datenauswertung und -analyse werden von diversen Werkzeugen für Endanwender zur Verfügung gestellt. Diese ermöglichen es, Informationen aus dem Datenbestand des Data Warehouse zu extrahieren und für Endanwender in unterschiedlichen Darstellungsformen aufzubereiten. Das Spektrum umfasst Bericht und Abfragewerkzeuge, Kollaborations-Tools, Data-Mining-Werkzeuge, Werkzeuge des Online Analytical Processing (OLAP), Executive Information Systems (EIS) sowie Forecasting- und Simulation-Tools.

2. Data Warehouse-Konzepte im Vergleich

Unabhängig vom Bereitstellungsmodell der Daten haben alle Data-Warehouse-Konzepte bestimmte Merkmale gemeinsam. Sie verfügen über spaltenorientierte Datenbanken, in welchen die Daten in Spalten und nicht in Zeilen gespeichert werden. Anstatt auf eine Zeile mit z. B. SKU, Produkt und Preis zuzugreifen, wird sich einer Spalte mit allen SKUs bedient. Dies ermöglicht einen schnelleren Zugriff und eine schnellere Verarbeitung der Daten. Die Konzepte enthalten sowohl historische als auch aktuelle Daten und bieten eine Speicher- und Verarbeitungsplattform für Reportings, Dashboards und erweiterte Analysen. Das Extrahieren, Transformieren und Laden (ETL) stellt dabei den grundlegenden Prozess eines Data Warehouse dar. Für eine bessere Differenzierung werden im folgenden Kapitel die gängigen Konzepte “Cloud” und “On-Premise” eines Data Warehouse mit ihren Vor- und Nachteilen kurz vorgestellt.

2.1 Lokales Data Warehouse (On-Premise)

Bei einem lokalen Data Warehouse muss ein Unternehmen die gesamte Hardware und Software einkaufen, bereitstellen und warten. Ein lokales Data Warehouse bietet volle Kontrolle, aber auch vollständige Verantwortung dafür, dass seine Infrastruktur effizient, zuverlässig und sicher funktioniert. Darüber hinaus kann ein lokales Data Warehouse nicht mit einer Vielzahl von Aktivitäten umgehen, die mehr Rechenleistung oder Speicherplatz erfordern. Ein Unternehmen muss sein Data Warehouse so dimensionieren, dass es auch Spitzenlasten bewältigen kann, selbst wenn diese nur sporadisch auftreten. In den nächsten Abschnitten werden die Vorund Nachteile einer lokalen Data-Warehouse-Architektur zusammengefasst.

2.1.1 Vorteile

Kontrolle
Bei einer lokalen Bereitstellung hat ein Unternehmen die vollständige Kontrolle darüber, welche Hardware und Software verwendet wird, wo sie sich befindet und wer Zugriff darauf hat. Bei der Hardware kann es sich um dieselben handelsüblichen Server und Speichergeräte handeln, die auch für andere Anwendungen verwendet werden, oder um speziell angefertigte Server.

Geschwindigkeit
Die Unterbringung der gesamten Hardware und Tools am Standort verringert Bedenken hinsichtlich Netzwerklatenz, auch wenn einige Datenquellen außerhalb des Standortes liegen und nur über das Netz zugänglich sind.

Governance
Data Governance und die Einhaltung gesetzlicher Vorschriften sind mit einem lokalen Data Warehouse generell einfacher zu erreichen. Viele Unternehmen haben beispielsweise Schwierigkeiten, die Anforderungen der Datenschutzgrundverordnung (GDPR, DSGVO, ePrivacy etc.) hinsichtlich der Identifizierung des Standortes der Datenspeicherung zu erfüllen. Ein lokales Data Warehouse kann hier eine höhere Datensicherheit bieten, da die Daten nicht über eine öffentliche Netzwerkverbindung übertragen werden müssen und die Kontrolle über die Sicherheitsmaßnahmen und die Zugriffssteuerung beim Unternehmen liegt.

2.1.2 Nachteile

Begrenzte Skalierbarkeit
Ein lokales Data Warehouse kann Schwierigkeiten bei der Skalierung haben, da es an die physischen Ressourcen des Unternehmens gebunden ist. Eine Erweiterung der Kapazitäten erfordert in der Regel Investitionen in zusätzliche Hardware und Personal. Gerade für komplexere Datenanalysen und Modellierungen unter Verwendung maschinellen Lernens können daher schnell Grenzen erreicht werden.

Verfügbarkeit
Bei lokaler Datenverarbeitung kann es zu höheren Ausfallzeiten kommen, da das Data Warehouse an einen bestimmten Standort und die dortige Infrastruktur gebunden ist und somit von Ausfällen betroffen sein kann.

Wartung, Instandhaltung und Betrieb
Ein lokales Data Warehouse erfordert regelmäßige Wartung und Instandhaltung und dementsprechend internes Know-how, was zusätzliche Kosten zur Folge hat. Es kann ein höheres Risiko für die Datensicherheit darstellen, da es anfälliger für menschliche Fehler sowie Sicherheitsverletzungen ist und automatisierte Backup- und Wiederherstellungsfunktionen nicht so leicht zu erstellen sind wie in der Cloud.

2.2 Cloud Data Warehouse

Ein Cloud Data Warehouse hat keine physische Hardware. Ein Unternehmen zahlt für den Speicherplatz und die Rechenleistung, die es zu einem bestimmten Zeitpunkt benötigt. Skalierbarkeit ist hierbei nur eine Frage des Hinzufügens weiterer Cloud-Ressourcen. Zusätzlich besteht keine Notwendigkeit, Mitarbeiter für die Bereitstellung oder Wartung des Systems einzustellen, da diese Aufgaben vom Anbieter übernommen werden. Im Folgenden werden Vor- und Nachteile eines Cloud Data Warehouse aufgezeigt.

2.2.1 Vorteile

Skalierbarkeit (Elastizität)
Die Zuweisung von Cloud-Ressourcen lässt sich flexibel an sich ändernde Anforderungen anpassen. Bei schwankender Inanspruchnahme können Unternehmen somit nur für die tatsächlich benötigten Funktionen bezahlen.

Flexible Services
Anbieter von Cloud-Data-Warehouse-Lösungen verwenden häufig ein Pay-per-Use-Modell, das es Unternehmen ermöglicht, nach oben oder unten zu skalieren, ohne Speicherplatz zu verschwenden.

Verbesserte Integrationsmöglichkeiten
Die Architektur ist darauf ausgelegt, Daten aus mehreren Datenquellen (einschließlich Cloud-Anwendungen), Datenbanken und Dateiformaten zu integrieren. Das Ergebnis ist eine holistische Sicht auf die Aktivitäten innerhalb des digitalen Ökosystems des Unternehmens.

Security Backups
Cloud Data Warehouses erstellen regelmäßig Datensicherungen, um Daten im Katastrophenfall wiederherstellen zu können. Ebenso vorteilhaft für Unternehmen, die Cloud Data Warehouses für ihre Analysen nutzen, ist, dass sie sich nicht um den Kauf von Geräten oder Speicherbereichen für die Lagerung ihrer Hardware kümmern müssen.

2.2.2 Nachteile

Abhängigkeit
Ein Cloud Data Warehouse ist von einem externen Anbieter abhängig, wodurch das Unternehmen auf die Service-Level-Agreements (SLA) und die Sicherheitsmaßnahmen des Anbieters angewiesen ist.

Internetverbindung
Ein Cloud Data Warehouse erfordert eine stabile und schnelle Internetverbindung, um die Daten zu übertragen und auf sie zugreifen zu können. In Gebieten mit schlechter Internetverbindung oder Netzwerkproblemen kann dies zu Leistungsproblemen führen.

Kosten
Obwohl ein Cloud Data Warehouse in der Regel kosteneffizienter ist als ein lokales Data Warehouse, können die Kosten für den Speicherplatz und die Rechenleistung im Laufe der Zeit steigen, insbesondere bei höheren Datenmengen oder höheren Anforderungen an die Rechenleistung.

Transparenz
Ein Cloud Data Warehouse bietet zwar eine hohe Flexibilität und Skalierbarkeit, aber es kann schwierig sein, Informationen über die tatsächlichen physischen Ressourcen, die für den Betrieb des Systems verwendet werden, zu erhalten. Dazu gehören Informationen über die Anzahl der verwendeten Server, die Speicherkapazität, die Rechenleistung und die Netzwerkbandbreite.

2.3 Potenzial eines Cloud Data Warehouse für Marketing und Datenanalyse

Ein Cloud Data Warehouse hat das Potenzial, die Art und Weise, wie Unternehmen ihre Marketing- und Analytics-Strategien umsetzen, grundlegend zu verändern. Durch die Verwendung von Cloud-Services können Unternehmen ihre Daten schneller und einfacher verarbeiten, speichern und analysieren.

Eines der wichtigsten Potenziale eines Cloud Data Warehouse ist die Skalierbarkeit von Rechenleistung. Unternehmen können ihre Ressourcen flexibel an die wachsenden Anforderungen anpassen, ohne sich Gedanken über die physische Hardware machen zu müssen. Dies ermöglicht es, schnell auf Veränderungen zu reagieren und sich auf den Ausbau der Datenanalyse und der Modellierung zu konzentrieren. Zudem bietet ein Cloud Data Warehouse die Möglichkeit, Daten aus unterschiedlichen Quellen in Echtzeit zu sammeln, zu integrieren und zu analysieren. Dies erlaubt Unternehmen schnellere und präzisere Entscheidungsfindungen und in Folge eine Optimierung ihrer Marketing- und Analyse-Strategien.

Ein Beispiel für die Anwendung von Cloud Data Warehouse im Marketing ist die Verwendung von BigQuery, einem Cloud Data Warehouse der Google Cloud. Mit BigQuery lassen sich Daten aus unterschiedlichen Tools und Quellsystemen wie Google Analy-tics, Google Ads aber auch CRM- und ERP-Systemen sowie lokalen Datenbanken zusammenführen und analysieren. Zudem bietet die Cloud-Umgebung von Google eine Vielzahl von SaaS-Services für die Modellierung und Analyse der Daten mithilfe maschinellen Lernens. Es folgt daher die Vorstellung zweier Lösungsansätze für den Aufbau einer Datenarchitektur für ein Cloud Data Warehouse in der Google Cloud.

3. Aufbau eines Marketing Data Warehouse in der Google Cloud

In diesem Kapitel wird der exemplarische Aufbau einer Data Analytics Pipeline für ein Marketing Data Warehouse anhand von zwei verschiedenen Lösungsansätzen aufgezeigt. Im ersten Ansatz wird die Architektur der Data Analytics Pipeline auf Grundlage cloud-nativer Services der Google Cloud erstellt. Der zweite Ansatz nutzt Tools des Modern Data Stacks, um den Aufwand für Aufbau und Instandhaltung einer eigenen Data Pipeline zu minimieren.

3.1 Cloud-native Architektur

Abbildung 1: Cloud-native Data Analytics Pipeline in der Google Cloud

Datenerhebung – Verarbeitung – Laden
In einem Unternehmen lassen sich oftmals mehrere Datenquellen identifizieren, die für die Datenanalyse und ihre weitere Verwendung für das Marketing relevant sind. Dabei ist, wie eingangs erwähnt, grob zwischen internen Datenquellen (CRM, ERP, Datenbanken etc.) und externen Datenquellen (Webdaten, Marketingtools etc.) zu unterscheiden.

Im Schaubild werden verhaltensbasierte Webdaten über einen clientseitigen Google Tag Manager (GTM) an einen GTM Server Endpoint gesendet sowie Streaming-Daten aus Marketingtools oder Systemen wie einem CRM mittels Cloud Function in ein Pub/Sub Topic oder direkt in ein BigQuery Table geschrieben. Im Falle eines Batch-Uploads (bspw. Daily Jobs) werden die Daten vorerst in einen temporären Objektspeicher wie dem Google Cloud Storage übertragen. Mit dem Service Pub/Sub bietet die Google Cloud Platform (GCP) einen asynchronen MessagingDienst zum Managen und Weiterleiten der Streaming-Requests diverser Tools. Aus dem jeweiligen Pub/Sub Topic werden die Daten anschließend von einem ETL Management Service wie Cloud Dataflow mittels Pull-Subscription ausgelesen. Cloud Dataflow basiert dabei auf Apache Beam und kann sowohl im Batch- als auch im StreamingModus betrieben werden. Der Service bietet viele vorkonfigurierte Templates, darunter auch Templates für das Lesen von Nachrichten aus Pub/Sub wie auch für das Schreiben von Daten zu BigQuery.

Oftmals befinden sich im Unternehmen zusätzlich lokale Datenquellen wie bspw. Datenbanken oder ganze OnPremise-Data-Warehouse-Systeme, in welchen Informationen zu Produktmargen, Deckungsbeiträgen oder Logistikdaten wie bspw. Retourenquoten erfasst werden. Da diese ebenfalls relevant für die Datenanalyse und -modellierung sind, sollten sie in der Gestaltung der Marketing Analytics Pipeline berücksichtigt werden. Für den Datentransfer bietet die Google Cloud standardmäßig den BigQuery Data Transfer Service (API) an, um Jobs bspw. für Teradata-Formate aus lokalen Warehouses oder Dateien aus ERP- und CRM-Systemen automatisch zu planen, in ein Google Cloud Storage zwischenzuspeichern oder bei passendem Format und Datenqualität direkt zu BigQuery zu transferieren. Sollte eine Bereinigung und Modellierung der Daten oder des Datenformats nötig sein, steht mit Dataprep ein Dienst für die Datenbereinigung unstrukturierter Daten zur Verfügung. Für das weitere WorkflowManagement werden diese ebenfalls anschließend in Cloud Dataflow konsolidiert und zu BigQuery übermittelt.

Speicherung – Modellierung – Analyse
In BigQuery werden die Daten der unterschiedlichen Quellsysteme für die weitere Datenverarbeitung in separaten Data Sets abgelegt. Mit integrierten Machine-Learning-Modellen (Auto ML) und der Vertex-AI-Plattform bietet BigQuery, bzw. die Google Cloud, ein breites Spektrum an Verfahren für das Audience Modeling (Clusteranalysen, User-Scorings etc.) der Kundendatensätze an. Über Services wie Data Lab können die Daten mit vertrauten Sprachen wie Python und SQL präpariert, analysiert und visualisiert werden.

Aktivierung
Für die Übermittlung der einheitlichen Nutzersegmente (Audiences) an die entsprechenden Zielsysteme stehen in der Google Cloud unterschiedliche Mittel und Wege zur Verfügung. Neben der Verwendung von Cloud Functions oder nativen API-Schnittstellen der Tool-Anbieter stellt BigQuery mit dem BigQuery Transfer Service standardmäßig einen Data Distribution Service bereit. Zusätzlich verfügen die meisten Tools wie Looker Studio über einen builtin BigQuery Connector, mit welchem sich die Daten mit ein paar Klicks über das Interface in das Reporting-Tool überführen lassen.

3.2 Modern-Data-Stack-Architektur (Fivetran)

Abbildung 2: Data Analytics Pipeline mit Fivetran in der Google Cloud

Tools des Modern Data Stacks wie Fivetran vereinfachen die Erstellung und den Wartungsaufwand von Data Pipelines. Fivetran automatisiert den Prozess des Datenaufbaus, indem es die Verbindungen zu den Quellsystemen als Schnittstelle permanent aufrechterhält und die Daten in Echtzeit in BigQuery synchronisiert. Durch die Automatisierung dieses Prozesses werden die manuellen Schritte und die Fehleranfälligkeit einer eigenen ETL-Architektur reduziert, was zu einer Zeit- und Kosteneinsparung von Ressourcen führt.

Fivetran bringt eine hohe Flexibilität für Unternehmen mit sich. So können sie ihre Daten aus einer Vielzahl von Quellen integrieren, einschließlich Datenbanken, Cloud-Anwendungen und SocialMedia-Plattformen. Insgesamt ermöglichen Tools wie Fivetran die Erstellung und Vereinfachung von Data Analytics Pipelines in der Google Cloud, wodurch Unternehmen der Weg freigemacht wird zu einer effizienteren Datenaufbereitung und -analyse und somit zu schnelleren und fundierteren Entscheidungen.

4. Empfehlung

Der Aufbau eines Data Warehouse in der Google Cloud bietet viele Vorteile für das Marketing und die Datenanalyse im Unternehmen. Durch die Nutzung von Tools wie BigQuery und Fivetran kann das Data Warehouse automatisch Daten aus verschiedenen Quellen sammeln und bereitstellen, was die Erstellung von Analysen und Reports vereinfacht. Darüber hinaus bietet die Cloud Flexibilität und Skalierbarkeit, um Ressourcen zu erhöhen oder zu verringern, abhängig davon, wie viele Daten verarbeitet werden müssen. Auch die Kosten für den Betrieb und die Wartung des Data Warehouse sind in der Regel niedriger als bei einer lokalen Lösung. Insgesamt ermöglicht ein Cloud Data Warehouse eine schnellere und einfachere Durchführung von Datenanalysen und gestattet Unternehmen, bessere Entscheidungen auf Grundlage von aktuellen und umfassenden Daten zu treffen. Durch die Nutzung der Google Cloud können Unternehmen zusätzlich von der Rechenleistung und dem Machine-Learning-Know-how von Google profitieren, um komplexe Analysen und Datenmodellierungen durchzuführen.

Dieser Beitrag steht Ihnen ebenfalls in hochwertiger Form eines Whitepapers als PDF zum Download zur Verfügung.

Zum Whitepaper