Data Warehousing – Job Scheduling und Workload Automation

Ein Data Warehouse wird betrieben, um Datenzulieferungen aus unterschiedlichen Geschäftsapplikationen, Datenbanken und operativen Systemen zusammenzuführen. Es sorgt dafür, dass die Aktualität des Datenbestands effizient abgesichert ist. Die Prozesse müssen dazu in der richtigen Reihenfolge, zum richtigen Zeitpunkt und unter passenden Bedingungen ausgeführt werden. Ein falscher Ausführungszeitpunkt oder ein nicht ausgeführter Prozessschritt können zu erheblichem Zeitverlust führen oder sogar zu einem verfälschten Datenbestand.

Ausgangssituation

Das Data Warehouse bei unserem Kunden aus der Finanzindustrie hat eine zentrale Aufgabe: verschiedene Quellsysteme zu einem konsolidierten, harmonisierten Datenbestand für die Unternehmenssteuerung integrieren. Dadurch wird eine zentrale Datenbasis geschaffen, die für Auswertungen und Schnittstellen für weiterverarbeitende Systeme bereitsteht. Zu letzteren gehören beispielsweise die Bereiche Accounting, Kredit-, Adress- und Gesamtrisiko.

Um die Metadaten der Bewirtschaftungsprozesse innerhalb der Ablaufsteuerung verwenden zu können, werden diese eigens in einer entsprechenden Datenschicht persistiert.

Zielsetzung

Für den Betrieb des Data Warehouse soll eine automatisierte Ablaufsteuerung realisiert werden. Folgende Gesichtspunkte sind dafür relevant:

  • Zeitoptimierte Bewirtschaftungsprozesse
  • Anforderungen der Endabnehmer (Zeit und Inhalt)
  • Restartfähigkeit
  • Wartbarkeit

Um die Ablaufsteuerung transparent zu halten, soll sie in die bestehende Metadaten-Management-Komponente integriert werden.

Logical Unit of Work (LUW)

Im Gegensatz zu einem monolithischen Ansatzbasiert die Ablaufsteuerung auf einem modularen Prinzip. Dazu werden sogenannte Logical Units of Work (LUW) definiert. Eine LUW bildet die unterste organisatorische Ebene der Ablaufsteuerung. Damit ist sie die kleinste sinnvoll zu steuernde Einheit. Für die Prozesse einer LUW werden die ausführungsspezifischen Metadaten unter einem gemeinsamen Kontext erfasst und protokolliert – der Integration Sequence.

Drei Grundtypen einer LUW bestimmen den wesentlichen Aufbau der Ablaufsteuerung. Deren Zuschnitt basiert auf den folgenden Designprinzipien:

  • Parallele Abläufe
  • Laufzeiten
  • LUW je Lieferobjekt
  • LUW je Liefersystem und fachlicher Entität
  • LUW je Abnehmer und Liefersystem

LUW1

Die LUW1 kapselt alle Prozesse für den Import der angelieferten Quelldatei in einer 1:1-Struktur in die liefersystemspezifische Rohdatenschicht.

  1. Prüfung auf Quelldatei
  2. Kopieren der Quelldatei in das Arbeitsverzeichnis
  3. Entpacken der Quelldatei – *optional
  4. Historisierung des Datenbestands der Zieltabelle
  5. Leeren der Zieltabelle
  6. ETL-Landing-Prozess
  7. Archivierung und Housekeeping

LUW2

Die LUW2 kapselt alle Prozesse zur Überführung der Rohdaten eines Liefersystems in die Harmonisierungsschicht einer fachlichen Entitäten-Gruppe. Zur Laufzeitoptimierung können die Prozesse 1 und 2, sowie 3 und 4 in eine jeweils eigenständige LUW2a und LUW2b ausgegliedert werden.

  1. Leeren Zielentität in Stage-Layer
  2. ETL-Stage-Prozess
  3. ETL-Core-Prozess Hauptentität
  4. ETL-Core-Prozess Subentität

LUW3

Die LUW3 kapselt alle Prozesse zur Erzeugung eines Datenexports je Abnehmersystem und Lieferzeitpunkt.

  1. ETL-Extraktionsprozess
  2. ETL-Export-Lieferobjekt
  3. Versenden des Lieferobjekts an das Abnehmersystem
  4. Archivierung Lieferobjekt und Housekeeping

Ergebnis

Innerhalb des Jobscheduling-Tools sind die LUW als atomare Objekte definiert. Die nachfolgenden Abbildungen verdeutlichen den vertikalen und horizontalen Zuschnitt der einzelnen LUW nach Architekturschicht, sowie Quell- bzw. Zielsystem.

Die Grundtypen LUW1 und LUW2 werden in übergeordneten Ablaufplänen je Quellsystem nochmals zusammengefasst. LUW3 ist bereits auf der Ebene eines Zielsystems definiert. Abhängigkeiten zwischen einzelnen LUW sind innerhalb dieses Systemablaufplans mit den Bordmitteln der Jobsteuerung realisiert. Über Systemgrenzen hinweg werden diese von der Auswertung der prozessbezogenen Metadaten abgebildet. So können auch komplexe Ladezustandsszenarien abgebildet werden. Die auf dem Prinzip der LUW basierende Ablaufsteuerung ermöglicht somit:

  • eine starke Parallelisierung
  • die Entkopplung von Teilergebnissen
  • frühzeitige Freigaben von Daten für nachgelagerte Prozesse
  • Transparenz von Datenabhängigkeiten

Facts & Figures

Systemablaufpläne: 29
LUW: 178
Jobs:  >2000
Technik: Automic Automation Engine, Informatica, Oracle, Unix