Datenbank Blog » Data Warehouse & Business Intelligence

Microsoft SSIS für SAP HANA nutzen

Microsoft SSIS für SAP HANA nutzen | Datenbank Blog

Ist es eigentlich möglich Microsoft SSIS für SAP Hana zu nutzen? Genau diese Frage wurde mir vor einigen Tagen gestellt. Zu Beginn hatte ich da meine Zweifel, ob das überhaupt möglich ist, da SAP die DataServices für ihre ETL-Prozesse anbietet und keine Fremdanbieter an dieser Schnittstelle teilhaben lässt. Nach einigen Versuchen bin ich zu folgendem Fazit gekommen: Ja es geht, wenn auch mit einigen Einschränkungen…

Vorbereitungen für Microsoft SSIS

Damit ich ein sinnvolles Testszenario entwickeln konnte, musste ich mir ein Programm suchen mit dem ich Massendaten erzeugen konnte, um einen kleinen ETL-Prozess nachbilden zu können. Dabei bin ich auf das Programm “TPC-H DBGen” gestoßen. Mit diesem Tool ist es möglich Massendaten von 1GB bis mehrere 100GB zu erzeugen.

1. Testszenario mit OLE DB Connections

Den ersten Versuch habe ich mit der Erstellung eines einfachen ETL-Prozesses auf OLE DB-Basis durchgeführt. Der Prozess besteht aus einer lokalen SQL Server Instanz, welche ich als Quelle verwende, einem Row Counter aus kosmetischen Gründen und dem Ziel auf der SAP Hana Instanz.

OLE DB Connection in SAP HANA benutzen

Nun wollte ich meine spezielle Tabelle in der SAP Hana Instanz ansprechen. Dafür musste ich eine neue Connection auf Basis des OLE DB SAP HANA MDX Provider erstellen. Nach der Erstellung bin ich zu folgendem Ergebnis gekommen:

OLE DB Connection ohne Initial Catalog

Ich konnte zwar meine SAP HANA Instanz ansprechen und eine erfolgreiche Testverbindung aufbauen, doch konnte ich nicht den Initial Catalog setzen, da in der Dropdwon Box eine leere Menge zurückgegeben wird. Also habe ich mich entschlossen einfach zwei Anführungszeichen einzutippen – sozusagen als BLANK-Platzhalter. Nachdem ich nun die Connection erstellt habe, wollte ich nun die passende Tabelle für das SSIS Mapping auswählen.

SAP HANA crashed initial catalog

Beim Auswählen meiner Tabelle auf der SAP HANA Instanz konnte ich plötzlich meinen Augen nicht trauen – Was ist denn nun passiert??? – plötzlich schloss sich mein Visual Studio, startete neu und meine SSIS Pakete waren weg. Nach mehreren Versuchen bin ich immer wieder zum gleichen Ergebnis gekommen. Nach einigem Durchstöbern von vielen ODBC- und SAP-Bibliotheken konnte ich herausfinden, dass der Initial Catalog bei der OLE DB Connection nicht mitgeliefert wird und daher das Visual Studio abstürzt.

Damit kam ich zum Entschluss, dass eine Lösung mit einer OLE DB Connection derzeit nicht möglich ist.

2. Testszenario mit ODBC Connections

Den zweiten Versuch wollte ich ähnlich wie den ersten Versuch aufbauen, doch als Grundlage habe ich diesmal ODBC Connections verwendet. Da meine Maschine schon ein 64-Bit Windows verwendet, musste ich die neuen ODBC Connections sowohl für den SQL Server als auch für die SAP HANA Instanz mit dem ODBC Manager (64-Bit) erstellen, den man hier finden kann.

64 Bit ODBC Manager

Des Weiteren musste ich noch mein Visual Studio auf 32 Bit downgraden.

Visual Studio in 32Bit Mode

Nachdem ich nun alle Vorbereitungen getroffen habe, konnte ich ein neues SSIS Paket auf ODBC Connection-Basis erstellen.

SAP Hana Connection auf ODBC Basis

Nun habe ich die neue Connection in der Destination zu SAP HANA erstellt und geöffnet.

ODBC SAP HANA

Nachdem dem Setzen der neuen SAP HANA Connection funktionierte das Auswählen meiner neuen Tabelle in der HANA Instanz sehr gut. Nun habe ich die richtige Tabelle ausgewählt und schließe den Dialog. Danach ließ ich den ETL-Prozess zum ersten Mal durchlaufen…

ETL ODBC und SAP HANA

Und wie man sieht, lief der ETL-Prozess sauber durch, ohne einen Fehler zu werfen.

Fazit zu Microsoft SSIS & SAP Hana

Wie ich gerade gezeigt habe, ist es durchaus möglich SAP HANA mit einem Microsoft SSIS Paket anzusprechen. Ein großes Problem scheint bei den verschiedenen Versionen von Treibern und 32- und 64-bit Varianten zu sein. Ich musste circa zwei Stunden knobeln bis ich die richtige Variante herausgefunden hatte – doch nun funktioniert es.

Ich hoffe, dass ich einigen mit diesem kleinen Post helfen konnte, dass Thema SSIS & SAP HANA leichter zu verstehen.

Euer Datenbanken-verstehen.de Team

Über den Autor

Markus

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*