Zephyrnet-Logo

Wie Aura von Unity ihre Big-Data-Pipeline mit Amazon Redshift Serverless revolutionierte | Amazon Web Services

Datum:

Dieser Beitrag wurde gemeinsam mit Amir Souchami und Fabian Szenkier von Unity verfasst.

Aura von Unity (früher bekannt als ironSource) ist der Marktstandard für die Schaffung umfassender Geräteerlebnisse, die Kunden ansprechen und binden. Mit einem leistungsstarken Lösungspaket ermöglicht Aura eine vollständige digitale Transformation und ermöglicht es Betreibern, wichtige Dienste außerhalb des Geschäfts, direkt auf dem Gerät, zu bewerben.

Amazon RedShift ist ein empfohlener Dienst für OLAP-Workloads (Online Analytical Processing) wie Cloud Data Warehouses, Data Marts und andere analytische Datenspeicher. Mit einfachem SQL können Sie strukturierte und halbstrukturierte Daten, Betriebsdatenbanken und Data Lakes analysieren, um in jeder Größenordnung das beste Preis-Leistungs-Verhältnis zu erzielen. Der Amazon Redshift-Datenfreigabe Die Funktion bietet sofortigen, granularen und leistungsstarken Zugriff ohne Datenkopien und Datenverschiebungen über mehrere Redshift-Data-Warehouses im gleichen oder in verschiedenen AWS-Konten und über AWS-Regionen hinweg. Die Datenfreigabe bietet Live-Zugriff auf Daten, sodass Sie bei der Aktualisierung im Data Warehouse immer die aktuellsten und konsistentesten Informationen sehen.

Amazon Redshift ohne Server macht es einfach, Analysen in Sekundenschnelle auszuführen und zu skalieren, ohne dass Data-Warehouse-Cluster eingerichtet und verwaltet werden müssen. Redshift Serverless stellt die Data-Warehouse-Kapazität automatisch bereit und skaliert sie intelligent, um selbst für die anspruchsvollsten und unvorhersehbarsten Arbeitslasten schnelle Leistung zu liefern, und Sie zahlen nur für das, was Sie nutzen. Sie können Ihre Daten laden und sofort mit der Abfrage im Amazon Redshift Query Editor oder in Ihrem bevorzugten Business Intelligence (BI)-Tool beginnen und weiterhin das beste Preis-Leistungs-Verhältnis und die vertrauten SQL-Funktionen in einer benutzerfreundlichen Umgebung ohne Verwaltungsaufwand genießen .

In diesem Beitrag beschreiben wir die erfolgreiche und schnelle Einführung von Redshift Serverless durch Aura, die es ihnen ermöglichte, die Markteinführungszeit ihrer gesamten Bidding-Werbekampagnen von 24 Stunden auf 2 Stunden zu optimieren. Wir untersuchen, warum Aura sich für diese Lösung entschieden hat und welche technologischen Herausforderungen damit gelöst werden konnten.

Auras erste Datenpipeline

Aura ist ein Pionier bei der Verwendung von Redshift RA3-Clustern mit Datenfreigabe für Extrahieren, Transformieren und Laden (ETL) und BI-Workloads. Eine der Aktivitäten von Aura ist die Ausschreibung von Werbekampagnen. Diese Kampagnen werden mithilfe eines KI-basierten Gebotsprozesses optimiert, der die Durchführung Hunderter analytischer Abfragen pro Kampagne erfordert. Diese Abfragen werden für Daten ausgeführt, die sich in einem von RA3 bereitgestellten Redshift-Cluster befinden.

Die integrierte Pipeline besteht aus verschiedenen AWS-Services:

Das folgende Diagramm veranschaulicht diese Architektur.

Aura-Architektur

Herausforderungen der ursprünglichen Architektur

Die Abfragen für jede Kampagne laufen auf folgende Weise ab:

Zunächst filtert und aggregiert eine Vorbereitungsabfrage Rohdaten und bereitet sie für den nachfolgenden Vorgang vor. Darauf folgt die Hauptabfrage, die die Logik gemäß der Ergebnismenge der Vorbereitungsabfrage ausführt.

Da die Anzahl der Kampagnen zunahm, musste das Datenteam von Aura für jeden dieser Schritte Hunderte gleichzeitiger Abfragen ausführen. Der vorhandene bereitgestellte Cluster von Aura war bereits stark mit Datenaufnahme-, ETL- und BI-Workloads ausgelastet, daher suchte man nach kostengünstigen Möglichkeiten, diese Workload mit dedizierten Rechenressourcen zu isolieren.

Das Team evaluierte eine Vielzahl von Optionen, darunter das Entladen von Daten auf Amazon S3 und eine Multi-Cluster-Architektur mit Datenfreigabe und serverlosem Redshift. Das Team entschied sich für die Multi-Cluster-Architektur mit Datenfreigabe, da diese kein Umschreiben von Abfragen erfordert, dedizierte Rechenleistung für diese spezifische Arbeitslast ermöglicht, die Notwendigkeit vermeidet, Daten aus dem Hauptcluster zu duplizieren oder zu verschieben, und eine hohe Parallelität und automatische Skalierung bietet. Die Abrechnung erfolgt im Rahmen eines „Pay-for-what-you-use“-Modells und die Bereitstellung erfolgt unkompliziert und schnell.

Konzeptioneller Beweiß

Nach der Evaluierung der Optionen beschloss das Datenteam von Aura, einen Proof of Concept mit Redshift Serverless als Verbraucher ihres von Redshift bereitgestellten Hauptclusters durchzuführen und dabei nur die relevanten Tabellen für die Ausführung der erforderlichen Abfragen freizugeben. Redshift Serverless misst die Data Warehouse-Kapazität in Redshift Processing Units (RPUs). Eine einzelne RPU bietet 16 GB Speicher und ein serverloser Endpunkt kann zwischen 8 RPU und 512 RPU reichen.

Das Datenteam von Aura begann mit dem Proof of Concept mit einem Redshift Serverless-Endpunkt mit 256 RPU und senkte die RPU schrittweise, um die Kosten zu senken und gleichzeitig sicherzustellen, dass die Abfragelaufzeit unter dem erforderlichen Ziel lag.

Schließlich entschied sich das Team dafür, einen Redshift Serverless-Endpunkt mit 128 RPU (2 TB RAM) als Basis-RPU zu verwenden und gleichzeitig die automatische Skalierungsfunktion von Redshift Serverless zu verwenden, die die Ausführung Hunderter gleichzeitiger Abfragen durch automatisches Hochskalieren der RPU nach Bedarf ermöglicht.

Auras neue Lösung mit Redshift Serverless

Nach einem erfolgreichen Proof of Concept umfasste die Produktionseinrichtung das Hinzufügen von Code zum Wechseln zwischen dem bereitgestellten Redshift-Cluster und dem Redshift Serverless-Endpunkt. Dies erfolgte mithilfe eines konfigurierbaren Schwellenwerts, der auf der Anzahl der Abfragen basierte, die auf die Verarbeitung in einem bestimmten MSK-Thema warteten, das zu Beginn der Pipeline verbraucht wurde. Kleinere Kampagnenabfragen würden weiterhin auf dem bereitgestellten Cluster ausgeführt und große Abfragen würden den Redshift Serverless-Endpunkt verwenden. Die neue Lösung nutzt eine Amazon MWAA-Pipeline, die Konfigurationsinformationen aus einer DynamoDB-Tabelle abruft, Jobs nutzt, die Werbekampagnen darstellen, und dann Hunderte von EKS-Jobs ausführt, die mit EKSPodOperator ausgelöst werden. Jeder Job führt die beiden seriellen Abfragen aus (die Vorbereitungsabfrage, gefolgt von einer Hauptabfrage, die die Ergebnisse an Amazon S3 ausgibt). Dies geschieht mehrere hundert Mal gleichzeitig unter Verwendung der Serverless-Rechenressourcen von Redshift.

Anschließend initiiert der Prozess einen weiteren Satz von EKSPodOperator-Operatoren, um den KI-Trainingscode basierend auf dem auf Amazon S3 gespeicherten Datenergebnis auszuführen.

Das folgende Diagramm zeigt die Lösungsarchitektur.

Aura neue Architektur

Ergebnis

Die Gesamtlaufzeit der Pipeline wurde von 24 Stunden auf nur 2 Stunden verkürzt, was einer Verbesserung um das Zwölffache entspricht. Diese Integration von Redshift Serverless führte in Verbindung mit der Datenfreigabe zu einer Reduzierung der Pipeline-Dauer um 12 %, wodurch die Notwendigkeit einer Datenduplizierung oder des Umschreibens von Abfragen entfällt. Darüber hinaus wurde durch die Einführung eines dedizierten Consumers als exklusive Rechenressource die Belastung des Producer-Clusters erheblich verringert, sodass kleine Abfragen noch schneller ausgeführt werden konnten.

„Redshift Serverless und Datenfreigabe ermöglichten es uns, unsere Data-Warehouse-Kapazität bereitzustellen und zu skalieren, um schnelle Leistung und hohe Parallelität zu liefern und anspruchsvolle ML-Arbeitslasten mit sehr minimalem Aufwand zu bewältigen.“

– Amir Souchami, Auras Hauptarchitekt für technische Systeme.

Lernen

Das Datenteam von Aura legt großen Wert auf kosteneffizientes Arbeiten und hat daher mehrere Kostenkontrollen in seinem Redshift Serverless-Endpunkt implementiert:

  • Begrenzen Sie die Gesamtausgaben, indem Sie a festlegen maximales RPU-Stunden-Nutzungslimit (pro Tag, Woche, Monat) für die Arbeitsgruppe. Aura hat dieses Limit so konfiguriert, dass Amazon Redshift bei Erreichen eine Warnung an das zuständige Amazon Redshift-Administratorteam sendet. Diese Funktion ermöglicht auch das Schreiben eines Eintrags in eine Systemtabelle und sogar das Deaktivieren von Benutzerabfragen.
  • Verwenden maximale RPU-Konfiguration, der die Obergrenze der Rechenressourcen definiert, die Redshift Serverless zu einem bestimmten Zeitpunkt nutzen kann. Wenn das maximale RPU-Limit für die Arbeitsgruppe festgelegt ist, skaliert Redshift Serverless innerhalb dieses Limits, um die Arbeitslast weiterhin auszuführen.
  • Implementieren Sie Abfrageüberwachungsregeln die eine verschwenderische Ressourcennutzung und unkontrollierte Kosten durch schlecht geschriebene Abfragen verhindern.

Zusammenfassung

Ein Data Warehouse ist ein entscheidender Bestandteil jedes modernen datengesteuerten Unternehmens und ermöglicht Ihnen die Beantwortung komplexer Geschäftsfragen und die Bereitstellung von Erkenntnissen. Die Weiterentwicklung von Amazon Redshift ermöglichte es Aura, sich schnell an Geschäftsanforderungen anzupassen, indem der Datenaustausch zwischen bereitgestellten und Redshift Serverless Data Warehouses kombiniert wurde. Auras Reise mit Redshift Serverless unterstreicht das enorme Potenzial der strategischen Technologieintegration zur Steigerung der Effizienz und betrieblichen Exzellenz.

Wenn Auras Reise Ihr Interesse geweckt hat und Sie erwägen, eine ähnliche Lösung in Ihrem Unternehmen zu implementieren, sollten Sie folgende strategische Schritte in Betracht ziehen:

  • Beginnen Sie damit, die Datenanforderungen Ihres Unternehmens gründlich zu verstehen und herauszufinden, wie eine solche Lösung diese erfüllen kann.
  • Wenden Sie sich an AWS-Experten, die Sie auf der Grundlage ihrer eigenen Erfahrungen beraten können. Erwägen Sie die Teilnahme an Seminaren, Workshops oder Online-Foren, in denen diese Technologien diskutiert werden. Für den Einstieg werden folgende Ressourcen empfohlen:
  • Ein wichtiger Teil dieser Reise wäre die Umsetzung eines Proof of Concept. Diese praktische Erfahrung wird wertvolle Erkenntnisse liefern, bevor mit der Produktion begonnen wird.

Erweitern Sie Ihr Redshift-Know-how. Genießen Sie bereits die Leistungsfähigkeit von Amazon Redshift? Verbessern Sie Ihre Datenreise mit dem neueste Funktionen und fachkundige Anleitung. Wenden Sie sich an Ihr dediziertes AWS-Kontoteam, um personalisierten Support zu erhalten, innovative Funktionen zu entdecken und noch mehr Nutzen aus Ihren Daten zu ziehen Amazon Redshift.


Über die Autoren

Amir Souchami, Chefarchitekt von Aura von Unity, der sich auf die Entwicklung belastbarer und leistungsstarker Cloud-Systeme und mobiler Apps im großen Maßstab konzentriert.

Fabian Szenkier ist der ML- und Big Data-Architekt bei Aura by Unity und arbeitet an der Entwicklung moderner KI/ML-Lösungen und hochmoderner Data-Engineering-Pipelines im großen Maßstab.

Liat Tzur ist Senior Technical Account Manager bei Amazon Web Services. Sie fungiert als Anwältin des Kunden und unterstützt diese dabei, Cloud-Operational Excellence im Einklang mit ihren Geschäftszielen zu erreichen.

Adi Jabkowski ist Sr. Redshift Specialist in EMEA, Teil der Worldwide Specialist Organization (WWSO) bei AWS.

Yonatan Dolan ist Principal Analytics Specialist bei Amazon Web Services. Er ist in Israel ansässig und hilft Kunden dabei, die Analysedienste von AWS zu nutzen, um Daten zu nutzen, Erkenntnisse zu gewinnen und Mehrwert zu schaffen.

spot_img

Neueste Intelligenz

spot_img