Übernehmen Sie die Kontrolle über Ihre ELT - Datenintegration mit Pushdown - Optimierung in Astera Centerprise 8.0

By |2019-12-23T08:59:30+00:0019. Juli 2019|

At AsteraWir sind ständig bemüht, unsere Datenintegrationsfunktionen zu erweitern, um die Anforderungen von Geschäftsanwendern und Entwicklern in einer Vielzahl von Umgebungen besser zu erfüllen.

Im Rahmen dieser ständigen Weiterentwicklung haben wir eingeführt Extrahieren-Laden-Transformieren (ELT) -Funktionalitäten für unser Flaggschiffprodukt, Astera Centerprise. Diese "runterdrücken mode “bietet eine verbesserte Skalierbarkeit, Leistung und einfache Verwaltung auch für die komplexesten Dateninfrastrukturen.

Im Gegensatz zu den traditionellen drei Stufen Extract-Transform-Load (ELT) -Prozess, ELT erfordert nicht, dass Daten über einen zentralen Staging-Server verarbeitet werden, bevor sie an ihr Ziel gesendet werden. Stattdessen nutzt ELT die inhärente Rechenkapazität eines Hochleistungs-RDBMS, um alle oder einige der Datenverarbeitungsfunktionen innerhalb des Zieldatenbanksystems auszuführen.

Fig.1: Extrahieren von Abrechnungsdaten aus Verkaufs- und Mitarbeitertabellen

Fig.2 In normalem ETL-Datenfluss generiertes SQL

Zahlen 1 und 2 ETL in einem normalen Datenfluss darstellen. In diesem Fall werden Tabellen aus den Sales and Employees-Datenbanken einer Organisation extrahiert. Diese Tabellen werden dann mit einer Fakturierungstabelle verknüpft und durch verschiedene Transformationen verarbeitet, um zu ermitteln, welche Vertriebsmitarbeiter aufgrund ihrer Leistung über einen Zeitraum von zwei Monaten zu Prämien berechtigt sind. Die resultierenden Daten werden dann in eine abrechnungsspezifische Datenbank geladen.

Wie Sie sehen, wird eine SQL-Abfrage nur generiert, um relevante Spalten aus diesen beiden Tabellen abzurufen, während die tatsächlichen Transformationen automatisch in der ETL-Engine angewendet werden.

ELT in Centerprise

In CenterpriseIm Pushdown-Modus werden alle relevanten Daten direkt in diese Systeme geladen und die erforderlichen Transformationen in Form von SQL-Abfragen entweder auf die Quell- oder die Zieldatenbank angewendet.

Centerprise unterstützt derzeit die Pushdown-Optimierung für MSSQL-, PostgreSQL-, Oracle-, Db2- und MySQL-Datenbanksysteme. Alle Abfragen werden automatisch auf der Grundlage der vorhandenen Transformationslogik generiert, die entsprechend der verwendeten Zieldatenbankplattform in systemeigenen SQL-Code umgewandelt wird. Diese Abfragen werden parallel zum Ladevorgang ausgeführt, wodurch die Durchsatzraten maximiert werden können und die Wartezeiten zwischen Datentransformation und Lieferung an den Endbenutzer erheblich verkürzt werden.

Mit ELT wird die Datengröße zu einem weniger dringenden Problem. Während größere Datasets zu längeren Abfragen führen, werden die Verarbeitungszeiten für Abfragen immer noch erheblich verbessert. Auf diese Weise kann alles, von Social Media Insights und Echtzeit-Leistungsmetriken bis hin zu Informationsströmen aus Cloud-basierten Anwendungen und APIs, mit höchster Effizienz geladen und transformiert werden.

Dieser Integrationsprozess eignet sich ideal für moderne Berichtssysteme, die dem Unternehmen immer mehr semi-strukturierte und unstrukturierte Daten liefern.

Fig.3 In ELT Dataflow generiertes SQL

Nehmen wir zum Beispiel die gleichen Transformationen aus Fig.1Wenn Sie sie im Pushdown-Optimierungsmodus ausführen, wird weitaus komplexerer Code generiert. Fig.3 veranschaulicht, wie die Transformationen, die zuvor in verarbeitet wurden Centerprise wurden nun in SQL-Code konvertiert, der direkt in der Zieldatenbank ausgeführt werden kann.

ETL vs. ELT

Die Pushdown-Optimierung beschleunigt eine Reihe gängiger ETL-Aufgaben wie Berechnungen, Suchen und Aggregationen.

ETL

ELT

Berechnungen Berechnungen auf Zeilenebene finden in der ETL-Engine statt. Sobald die Umwandlung angewendet wurde, wird die vorhandene Spalte überschrieben oder eine neue Spalte zu Ihrer Quelle hinzugefügt. Rohdaten werden vor der Transformation aus der Datenbank gelesen. Berechnungen werden für bestimmte Spalten durchgeführt, die dann einfach mit datenbankeigenem SQL zu den vorhandenen Tabellen hinzugefügt werden.
Suchvorgänge Die ETL-Engine ordnet Werte aus einer Referenztabelle einer Datenquelle zu. Für eine erfolgreiche Suche müssen alle Referenzdaten verfügbar sein. Wenn große Datasets verwendet werden, wird die Effizienz der Suche verringert. Möglicherweise müssen Sie eine teilweise oder vollständige Zwischenspeicherung implementieren, um diese Leistungsprobleme zu beheben. Datenbank-Lookups werden normalerweise über linke äußere Joins in der Lookup-Tabelle ausgeführt. Benutzer können diese Prozesse auch optimieren, indem sie Indizes auf Suchspalten anwenden. Da vollständige Datensätze in die Datenbank geladen werden, spielt die Verfügbarkeit von Quellen keine Rolle. Alle diese Funktionen bieten erhebliche Leistungsvorteile gegenüber der ETL-Verarbeitung.
Aggregationen Aggregierte Transformationen können komplex sein, insbesondere wenn große Mengen granularer und aggregierter Daten in mehrere Tabellen verschoben werden.

Moderne Datenbank-Engines können große Mengen unterschiedlicher Daten verarbeiten und verschieben und Aggregationstransformationen sehr schnell durchführen.

Vollständiger Pushdown vs. Teilweiser Pushdown in Centerprise

Im Pushdown-Optimierungsmodus Centerprise analysiert die Zuordnung zwischen Quellen und Zielen, um festzustellen, wie viel der Transformation an beiden Enden des Integrationsprozesses auf die Datenbankebene verschoben werden kann.

Wenn der Datenfluss eine Quelle oder ein Ziel ohne Datenbank verwendet oder sich die Zieldatenbank auf einem anderen Server befindet, wird nur ein teilweiser Pushdown durchgeführt. Zum Beispiel, wenn wir dieselben Transformationen in ausführen Abb.. 1 Laden Sie die resultierenden Daten jedoch in ein Excel-Ziel, dann wird der SQL-Code ausschließlich in die Quellendatenbank übertragen.

Fig.4 Fehlermeldung im Auftragsstatusfenster

Abb. 5: SQL-Generierung bei Verwendung eines Nicht-Datenbankziels

Das in abgebildete Jobfortschrittsfenster Abb.. 4 veranschaulicht, dass diese bestimmte Umwandlung nur in die quellenseitige Datenbank übertragen werden kann. Wie siehst du aus Abb.. 5, Einfügen in Anweisung wurde auch aus dem SQL-Code weggelassen, der für diesen Datenfluss generiert wurde.

Wenn eine bestimmte Umwandlung nicht in datenbankeigenen SQL-Code konvertiert werden kann, Centerprise verarbeitet diesen Schritt der Umwandlung automatisch über den ETL-Server. Die neuesten Versionen von Centerprise Unterstützung einer Vielzahl von Transformationen, einschließlich Aggregieren, Sortieren und Verknüpfen neben verschiedenen komplexen Ausdrücken, einschließlich Analyse von Namen und Adressen sowie Verkettung. In diesen Fällen wird ein partieller Pushdown-Modus oder eine herkömmliche ETL-Verarbeitung bereitgestellt.

Da diese Umwandlung nicht in die SQL-Logik geschrieben werden kann, wird nur die partielle Pushdown-Optimierung angewendet. Der Erfolg der ELT-Bereitstellung kann durch Klicken auf überprüft werden Überprüfen Sie Pushdown Schaltfläche in der Symbolleiste.

Überprüfen Sie die Pushdown-Taste

Daraufhin wird ein neues Fenster geöffnet, in dem mögliche Fehler und Warnungen angezeigt werden, die während des Pushdown-Vorgangs aufgetreten sind.

Abb. 6: Nicht unterstützte ELT-Transformation im Datenfluss

Abb. 7: Fehlermeldung für nicht unterstützte ELT-Umwandlung

Hier haben wir eine mathematische Funktion hinzugefügt, mit der wir Verkaufswertzahlen auf die nächste ganze Zahl runden können. Da diese Funktionalität von der Zieldatenbank nicht unterstützt wird, wird die Aktion stattdessen in der ETL-Engine verarbeitet. Das Überprüfen Sie Pushdown erkennt diese Einschränkung sofort.

Dass gesagt wird, Centerprise bietet Benutzern die Möglichkeit, Änderungen vorzunehmen, mit denen sie einige dieser Einschränkungen umgehen können.

Beispielsweise können bestimmte nicht unterstützte Transformationen durch kompatible Funktionen ersetzt werden, die dieselbe Datenflussausgabe erstellen. Dies kann auf die angewendet werden Deutlich Transformation, die nur im Pushdown-Optimierungsmodus ausgeführt werden kann, wenn einzelne Felder oder ganze Feldlayouts verwendet werden. In diesem Fall ist die Deutlich Transformation kann durch a ersetzt werden Filter Transformation, die so festgelegt ist, dass Werte innerhalb eines angegebenen Bereichs an die Zieldatei oder Datenbank übergeben werden.

In ähnlicher Weise können technische Benutzer mit einem tieferen Verständnis von datenbankeigenem SQL Vorrang haben CenterpriseAnweisungen, die mithilfe der PushdownSQL () -Funktion erstellt wurden, um während des Pushdowns vordefinierten SQL-Code an den Datenbankserver zu übergeben.

Abb. 8: Manuelles Aufmaß SQL-Pushdown-Einstellung im Fenster mit den Funktionseigenschaften

Während partielles Pushdown immer noch erhebliche Leistungsverbesserungen gegenüber herkömmlichem ETL bietet, werden die Vorteile der Pushdown-Optimierung voll genutzt, wenn die gesamte Transformationslogik in der Quell- und Zieldatenbank verarbeitet werden kann.

Größere ELT-Transaktionen können die Datenbank jedoch für längere Zeiträume sperren, was dazu führen kann, dass Benutzer nicht für geschäftliche Zwecke auf sie zugreifen können. Diese Transformationen sind möglicherweise auch anfälliger für unerwartete Fehler. Sie können diese Probleme umgehen, indem Sie stattdessen Ihren Prozess für die partielle Pushdown-Optimierung zuordnen.

In Centerprise In 7.5 haben wir eine neue Funktion eingeführt, mit der Benutzer bestimmte Objekte aus dem Pushdown-Optimierungsmodus auslassen können. Diese Funktion kann dazu beitragen, Engpassprozesse an den ETL-Server und nicht an die Datenbank zu delegieren.

Abb. 9: 'Vom Pushdown ausschließen “

Obwohl die ETL-Engine diese Transformationen problemlos verarbeiten kann, führt sie auch zu einer zusätzlichen Belastung Ihres Netzwerks. Im obigen Beispiel hat die Pushdown-Optimierung die Verarbeitungszeit für den Datenfluss erheblich verkürzt.

Verarbeitungszeit des Datenflusses in ETL Server

Verarbeitungszeit des Datenflusses im Pushdown-Optimierungsmodus

Diese Leistungsvorteile werden erst deutlicher, wenn das Volumen und die Komplexität Ihrer Datenflüsse zunehmen. Wie der folgende Anwendungsfall zeigt, wird im Pushdown-Optimierungsmodus Centerprise Mit nativen Datenbankfunktionen können Tausende von Datensätzen in Sekundenschnelle geladen und transformiert werden, ohne dass dies Auswirkungen auf Ihre Server hat.

Pushdown-Optimierung in Aktion

Vor kurzem konnten wir bei einem der größten P & C-Versicherer in den USA die vollen Leistungsvorteile der Pushdown-Optimierung vorstellen. Der Kunde verfügt über ein vielfältiges Zeichnungsportfolio in mehr als 70 Ländern, verschiedenen Branchen und einer Reihe spezialisierter Produkte für kleine und mittlere Unternehmen.

Angesichts der gestiegenen Anforderungen hat sich das Unternehmen jedoch bemüht, eine umfassende Dateninfrastruktur aufzubauen, die detaillierte Richtlinieninformationen aus verschiedenen Tochterunternehmen, versicherungsmathematische Tabellen sowie Echtzeit-Feedback zu schwankenden Prämien und Maklerprovisionen enthält.

Abb. 10: Komplexer Datenfluss mit hohem Volumen

Bevor die Pushdown-Optimierung bereitgestellt wurde, verbrachte das Unternehmen bis zu vier Stunden damit, diese Daten über den Staging-Server zu bereinigen, anzureichern und zu transformieren, bevor sie auf Bereitstellungssysteme migriert wurden. Dieser langwierige Prozess beanspruchte auch eine erhebliche Menge an Netzwerkressourcen.

Als sich das Unternehmen an uns wandte, um diese Probleme zu lösen, stellten wir fest, dass ihre Bedenken durch den Wechsel zu ELT effektiv gelöst werden konnten. Unser Serviceteam nutzte die Pushdown überprüfen Diese Funktion bewertet alle Änderungen, die erforderlich waren, um die Datenflüsse für die Pushdown-Optimierung in Einklang zu bringen.

In diesem Fall konnte kein vollständiger Pushdown bereitgestellt werden, da das Unternehmen seine Daten in abgegrenzte Ziele anstatt in ein RDBMS laden wollte. Es konnten jedoch noch einige Optimierungen durchgeführt werden, um sicherzustellen, dass der größte Teil der Transformationslogik in der Datenbank und nicht über die ausgeführt wurde Centerprise Antrieb.

Nach der Implementierung dieser Änderungen konnten wir die Laufzeit für diesen Datenfluss im Pushdown-Optimierungsmodus auf nur 50 Sekunden reduzieren.

Neue Pushdown-Optimierungsfunktionen werden eingeführt Centerprise

Als Teil der Centerprise Bei der Einführung von 8.0 haben wir dem Pushdown-Optimierungsmodus eine Reihe neuer Funktionen hinzugefügt, mit denen Benutzer ihre ELT-Integrationsprozesse noch besser steuern können. Hier ist ein kurzer Überblick über das, was Sie erwarten können.

Pushdown-Vorschau

In Centerprise 8.0, wir haben einen neuen Vorschaubereich hinzugefügt, der Benutzern eine vollständige Ansicht ihrer Datenflüsse im Pushdown-Optimierungsmodus sowie der zugehörigen SQL-Anweisungen bietet, die generiert und an die Quell- und / oder Zieldatenbank übertragen wurden. Mit dieser umfassenden Ansicht können technische Benutzer auch den SQL-Code für ihre Pushdown-Datenflüsse ändern.

Wählen Sie zwischen Quell-, Ziel- oder vollständiger Pushdown-Optimierung

Frühere Versionen von Centerprise Unterstützt sowohl die Optimierung der Quell- als auch der Zielseite. Es gibt Anwendungsfälle, in denen die Bereitstellung einer vollständigen Pushdown-Optimierung möglicherweise vorteilhafter ist.

Beispielsweise sind Dimensionssuchen ein wichtiger Bestandteil von AsteraData Warehouse Builder von. Sie bieten Benutzern die Möglichkeit, geeignete Dimensionszeilen für eine bestimmte Tatsache auszuwählen.

Bevor jedoch Faktentabellendaten in ein Data Warehouse geladen werden können, müssen möglicherweise mehrere Verknüpfungen in der Quellendatenbank im Pushdown-Optimierungsmodus ausgeführt werden. Da diese Daten auf das Ziel verschoben werden, müssen im ETL-Server auch viele Dimensionssuchen durchgeführt werden, damit die Daten in das Ziel geschrieben werden können. Im Centerprise 7, für diese Umwandlung würde nur die quellenseitige Pushdown-Optimierung bereitgestellt.

In Version 8.0 können Benutzer diese Transformationen jetzt stattdessen in vollem Pushdown ausführen. Wenn diese Option ausgewählt ist, Centerprise In der Zieldatenbank wird eine Staging-Tabelle erstellt, mit der gleichzeitig mit den quellenseitigen Verknüpfungen Dimensionssuchen ausgeführt werden können, damit die Daten wesentlich effizienter in das Ziel geschrieben werden können. Diese zusammengesetzten Abfragen können zu erheblichen Leistungsverbesserungen für Ihren „Datenfluss“ führen.

Abfragetipps

Die meisten modernen RDBMS sind mit integrierten Optimierern ausgestattet, die automatisch den ressourceneffizientesten Ausführungsplan für jede Abfrage ermitteln. Diese Pläne können jedoch manchmal nicht die erwartete Leistung während der Ausführung des Datenflusses erbringen. In diesem Fall können Benutzer Abfragetipps verwenden, um das Optimierungsprogramm zu überschreiben und die Verarbeitung der Daten in der Datenbank direkt zu steuern.

In kommenden Versionen von CenterpriseIm Pushdown-Optimierungsmodus können Benutzer Hinweise auf verschiedene Transformationen anwenden, einschließlich Aggregationen, Vereinigungen und Verknüpfungen. Sie können auch verwendet werden, um zu steuern, wie Tabellen gescannt werden, die Reihenfolge der Vorgänge für eine bestimmte Funktion oder die Zuweisung von Systemressourcen für einen bestimmten Job.

Generieren Sie Pushdown-Datenflüsse

mit Centerprise Mit 8 können Sie Pushdown-Datenflüsse generieren, um die im Pushdown-Optimierungsmodus generierten SQL-Anweisungen zu überprüfen und zu verstehen. Mithilfe dieser visuellen Darstellung können Benutzer ihren Datenfluss im Hinblick auf Leistung und Skalierbarkeit optimieren.

Aktionsspezifisches Pushdown

In Centerprise Mit 8.0 können Sie jede Aktion in einem Datenfluss auswählen und festlegen, dass sie nicht nach unten verschoben wird. Diese Option ist in Situationen nützlich, in denen unsere ETL-Engine eine andere Transformation ausführt als in der Datenbank.

Unterstützung für Datenbanken

Centerprise 8.0 wird Unterstützung für mehrere wichtige MPP-Data-Warehouse-Lösungen hinzufügen, z.

  • Netezza
  • Teradata
  • Redshift

Benutzerdefinierte Funktionskarten

Centerprise Bietet eine Reihe integrierter Funktionen, mit denen Benutzer eingehende Daten nach verschiedenen logischen Regeln verarbeiten können. Wann Centerprise Verschiebt diese Funktionen in die Datenbank und ordnet sie mithilfe einer Tabelle den entsprechenden Datenbankfunktionen zu. Häufig verwendete ETL-Datenbankfunktionstabellen sind in allen Versionen unserer Lösung enthalten.

Wenn jedoch eine Funktion nicht zugeordnet ist, kann die zugehörige Transformation nicht nach unten verschoben werden. Dies wirkt sich wiederum auf alle nachfolgenden Transformationen im Datenfluss aus. Im Centerprise In 8.0 können Benutzer Zuordnungen für diese Funktionen manuell hinzufügen, um das Pushdown von verwandten Transformationen in der Datenbank zu ermöglichen.

Erfahren Sie mehr über den Pushdown - Modus in Astera Centerprise 8.0

CenterpriseDie fortschrittlichen Pushdown-Funktionen eignen sich ideal für jedes Unternehmen, das die Leistungsvorteile der ELT-Integration in seine Datenarchitektur einbringen möchte. Weitere Informationen zu den in unserer neuesten Version unterstützten Datenverarbeitungsfunktionen finden Sie in unserem nächsten Whitepaper, das diese Funktionen ausführlich behandelt. Wenn Sie eine speziellere Einführung in unser Produkt suchen, können Sie auch einen Termin vereinbaren private Beratung mit unserem Verkaufs- und Support-Team.