Mit SAP HANA Smart Data Integration bietet die SAP ein Datenintegrations- und Datenqualitätstool speziell für die HANA an. Tatsächlich läuft die Applikation auch als XSA Service innerhalb der HANA. Wir haben einen ersten Blick auf die Applikation geworfen und dazu SAP HANA Smart Data Integration in unserer HANA Express Datenbank installiert.
Die Installation wird innerhalb des HANA Express Servers ausgeführt. Danach ist Smart Data Integration kaum als eigenständiges Tool wahrnehmbar. Vielmehr sind seine Datenintegrations- und Datenqualitätsfunktionen innerhalb der Web-Entwicklungsplattform der HANA, der SAP HANA Web-Based Development Workbench, integriert.
Mit dieser Entwicklungsplattform kann man web-basiert Anwendungen für die HANA entwickeln. Sie basiert auf SAP UI5 und JavaScript. Dafür mussten in unseren Tests dem Smart Data Integrator Login aber noch fehlende Berechtigungen zugewiesen werden. Nach diversen Fehlermeldungen hatten wir dem Login folgende Rollen im SAP HANA Studio zugewiesen:
Ausserdem mussten dem Login noch folgende Package Privileges auf das Root Package zugewiesen werden:
Danach kann man dann eine Demo-Applikation erstellen, indem man z.B. das mitgelieferte Applikationstemplate «SAP UI5 Hello World» verwendet:
Das im Template verwendete JavaScript nutzt SAP UI5 Bibliotheken um ein simples «Hello World» im Web-Browser anzuzeigen:
Mit der HANA Web-Based Development Workbench müssen aber nicht zwingend Applikationen mit einer Benutzeroberfläche entwickelt werden. Es können auch XSA Services erstellt werden, die HANA Smart Data Integration Funktionalitäten enthalten. Das sind in der Regel Datenflüsse, die im Hintergrund der HANA Datenbank ohne Benutzerinteraktionen laufen. In der Web-Based Development Workbench können dazu u.a. folgende Objekte erstellt werden:
- File: z.B. eine HTML-Seite mit JavaScript
- HANA DB-Objekte: Calculation View, Stored Procedure
- FlowGraph, Replication Task: Smart Data Integration Services
Mit Flowgraphs können Datenflüsse erstellt werden, die Datenintegrations- und/oder Datenqualitätsfunktionalitäten implementieren. Diese Funktionalitäten werden über Transforms bereitgestellt, die sehr stark an die Transforms aus dem ETL-Tool der SAP, SAP Data Services erinnern:
Die meisten Transforms haben mehr oder weniger dieselbe Funktionalität wie die entsprechenden Transforms in SAP Data Services. Andere Steuerungs-Objekte aus SAP Data Services, wie z.B. Workflows, Exception Handler, Schleifen, etc. sind nicht vorhanden. Die Steuerung von Flowgraphs müsste in Smart Data Integration wohl über JavaScript erfolgen. Für Data Science Algorithmen könnte dagegen die Möglichkeit interessant sein, R Skripte in einen Flowgrap zu integrieren.
Start- und Zielobjekte von Flowgraphs sind sogenannte Input und Output Types, die immer HANA Tabellen oder Views sind. Das verdeutlicht, dass Smart Data Integrator ein Datenintegrationstool ausschliesslich für die Beladung von SAP HANA ist. Über die integrierten Replication Tasks können allerdings Datenquellen aus anderen DB-Systemen extrahiert werden:
HANA Smart Data Integration könnte eine echte Alternative gegenüber den gängigen ETL-Tools sein, wenn ausschliesslich HANA als Ziel-Datenbank verwendet wird. Der Smart Data Integration Ansatz ist ETL (Extract-Tranform-Load), womit sämtliche Datenverarbeitung innerhalb der HANA stattfindet und somit unter Umständen eine bessere Performance als mit ETL-Tools erzielt werden kann. Zu beachten ist auch die relativ einfache und rein Server-basierte Installation innerhalb der HANA Datenbank.
Auf der anderen Seite ist die Web-basierte Oberfläche weniger intuitiv und ermöglicht weniger flüssiges Arbeiten als mit anderen ETL-Tools wie z.B. SAP Data Services. Ausserdem könnte HANA Smart Data Integration auch durch das Fehlen von Workflow-Funktionalitäten weniger geeignet sein für komplexere Projekte.