<img height="1" width="1" style="display:none;" alt="" src="https://dc.ads.linkedin.com/collect/?pid=412841&amp;fmt=gif">

Betriebsaspekte im SAP Data Service Umfeld

Betriebsaspekte im SAP Data Service Umfeld.

In diesem SAP Data Services - Blog Beitrag zeigen wir Ihnen, wie Sie Ihre ETL Aufwände deutlich reduzieren können und zusätzlich Ihren produktiven Datawarehouse Betrieb sicherstellen.

SAP Data Services - Einführung

SAP Data Services (DS) bietet ETL Entwicklern die Möglichkeit, Daten aus SAP- und Nicht-SAP-Quellen zu extrahieren und nach gewohnten Transformationsregeln entsprechend aufzubereiten. Neben SAP Systemen werden auch klassische relationale Datenbanken, Webservices, Dateien, BigData Umgebung wie Hadoop oder NoSQL Datenbanken im Cloud oder on-Premise Umfeld unterstützt. Soweit so gut.

Was aber fehlt ist ein flexibles Framework für den produktiven Betriebsablauf, wenn keine Zusatzkomponente wie UC4 eingesetzt wird.

Was ist damit im ETL Umfeld gemeint? z.B.:

  • die Abbildungen von Job Abhängigkeiten
  • parallele Jobausführungen
  • das Abholen und die Verarbeitungen von Dateien
  • ereignisgesteuerte Jobausführungen
  • Einsatz von Metadaten für die Behebung von Jobabbrüchen
  • Wiederaufsetzen im Fehlerfall.

Für diese Zwecke haben wir einen ETL Framework auf Basis des SAP Data Services entwickelt, um die Aufwände von ETL zu reduzieren und den zukünftigen Betriebsablauf mit so wenig Aufwand wie nötig zu betreiben.

Die bimanu Komponente ist somit ein selbsterstelltes Framework zur Abbildung der am häufigsten auftretenden betrieblichen Aspekte im SAP Data Services Umfeld.

Im Folgenden werden einige Merkmale des bimanu-Frameworks dargestellt:

Technische Umsetzung

Innerhalb des SAP Data Services wurde das bimanu Framework mit den internen Objekten umgesetzt. Es besteht folglich aus Scripten, Dataflows und Workflows. Für das Speichern von Informationen wurden Datenbanktabellen verwendet.  Weiterhin werden VB(A)-Scripte und eine DLL für Dateioperationen im Windows Umfeld verwendet.

Architektur

Das Framework liegt im SAP Data Services als ein Workflow, WF_RJ_SYS_FRAMEWORK_SAMPLE,  vor und ist sowohl Beispiel als auch Kopiervorlage zum Einbau des Frameworks in DS-Jobs.

Innerhalb des Workflows sind alle Elemente im BODS zu finden, die das Framework bilden. Es gibt folglich keine weiteren Objekte, die hinzugefügt werden müssen. An der Kennzeichnung RJ_SYS_ im Namen werden alle innerhalb des BODS alle zugehörigen Objekte des Frameworks erkannt.

Der Workflow besteht aus einem Try-Catch Blocks mit einer entsprechenden Fehlerbehandlung. Innerhalb des  Blocks gibt es zwei weitere Workflows, WF_RJ_SYS_Jobinit und WF_RJ_SYS_JOBEND, die zur  Initialisierung bzw. zum Beenden des Workflows verwendet werden. Zwischen den beiden Workflows wird der Anwender seine Objekte legen können.

Wie das Framework innerhalb eines Jobs verwendet wird obliegt dem Anwender, es wird empfohlen eine gemeinsame Architektur für Jobs zu vereinbaren.

Laufschritte

Zur Abbildung eines gesamten ETL-Prozessen wurden die signifikanten Verarbeitungsschritte des Prozesses  als Laufschritte definiert und das Framework auf die Verarbeitung einzelner Laufschritte ausgelegt.

Ein Laufschritt ist z.B. die Beladung der Staging-Area oder die Beladung von Dimensionen bzw. Fakten.  Richten Sie daher Ihre Verarbeitungsschritte innerhalb Ihres  ETL-Prozesses danach aus und verwenden Sie pro Laufschritt und Bereich das Framework genau einmal.  Der Laufschritt wird im Init-Script des Frameworks hinterlegt.

Event-Handling

Man kann im  SAP Data Services mehrere Jobs planen und zwar sowohl sequentiell (einer nach dem anderen) als auch bedingt (sobald ein Jobs durch ist, fängt der nächste an) aufgrund von Ereignissen. Man kann aber auch beides durch Parameter und Funktionen miteinander kombinieren. Das bimanu-Framework sieht vor, dass man zunächst mit der Staging-Beladung startet, sobald die Daten zur Verfügung stehen. Das bedeutet, dass dieser Job von der Datenlieferung abhängt.

Event-Handling Event-Handling

Alle anderen Jobs (z.B. für Data Vault-, Core-, Dimensions- und Faktenbeladung) erfolgen erst nach diesem und zwar einer nach dem anderen. D.h. man fängt mit einer bedingten Beladung an und wechselt dann zum sequentiellen Modus.

Jobparametrisierung

Eine sehr wichtige Rolle im bimanu-Framework spielt die Zentralisierung der Jobs. Damit ist gemeint, dass es eine zentrale Steuerungstabelle gibt, in der die Jobabhängigkeiten, die E-Mail-Adressaten, alle Konstanten etc. gespeichert sind. Diese ist der Ausgangspunkt für alle weiteren Tabellen.

Zentrale Steuerungstabelle Zentrale Steuerungstabelle

Im Falle z.B. eines Jobabbruchs ist der Emailversand im bimanu-Framework standardmäßig enthalten. Der Empfängerkreis lässt sich aber über die zentrale Steuerungstabelle parametrisieren. Auch werden Parameter und globale Variablen bei Ereignissen eingesetzt, die nur selten vorkommen (z.B. einmal im Jahr). Globale Variablen werden nur auf Job-Ebene hinterlegt.

Erzeugen von Metadaten

Das bimanu-Framework bietet die Möglichkeit, importierte Metadaten in Steuerungstabellen zu speichern. Es ist wichtig zu wissen, welche Metadaten bei der Jobausführung in BODS erzeugt werden. Man kann z.B. eine eindeutige Nummer beim Import vergeben (Import-ID), so dass jeder Datensatz innerhalb der gesamten Jobkette (Staging, Work usw.) identifizierbar ist. Innerhalb kürzester Zeit kann man dann schnell bei Bedarf rausfinden, wo er sich befindet, wie er sich entlang der Jobkette verhält etc.

Metadaten Import Metadaten Import

Im bimanu-Framework werden die Metadaten für den Fehlerfall genutzt, um einen soliden Datenstand zu bekommen und/oder um eine Beladungsstrecke zurückzusetzen.

bimanu hat bereits die Modellierungsmethode DataVault 2.0 in diesem Framework auf Basis einer Oracle Datenbank erfolgreich realisiert. Data Vault ist eine agile Datenmodellierungsmethode, die für DWHs mit häufigen Strukturerweiterungen geeignet ist. Sie bietet mehrere Vorteile, wie z.B.:

  • Erweiterbarkeit: man kann einfach neue Entitäten ergänzen ohne bereits bestehende zu beeinflussen.
  • Standardisierung: die ETL-Prozesse im Data Vault können hochgradig standardisiert werden => hoher Automatisierungsgrad.
  • Historisierung: die vollständige Historisierung erfolgt in den Satellites.
  • Flexibilität: Änderung der Objektbeziehungen erfordert keine Änderung der Tabellenstruktur.

Wenn Sie die Vorteile für ein standardisiertes Framework für den SAP Data Services erkannt haben oder Sie mehr über unser Framework erfahren wollen, dann nutzen Sie unseren kostenlosen Workshop.

Wir freuen uns auf den Austausch mit Ihnen.

09.11.2018, Anastasios Koukothakis

bimanu ist ein Beratungsunternehmen mit Schwerpunkt auf SAP Analytics & Snowflake und bietet Ihnen die erforderliche Business Intelligence Expertise, die Sie für Ihre erfolgreiche Projekte benötigen.

Wir begleiten Sie von Anfang an – überzeugen Sie sich selbst – bimanu Referenzen.