Im vorherigen Teil wurden Daten von Steuergeräten in ein CSV-File geschrieben, dies wurde per Kafka in Hadoop importiert und via Hive-Adapter bzw. Impala-Adpater in einer HANA-Datenbank gelesen. Diese Adapter stellen eine komfortable Möglichkeit dar, um auf die Hadoop-Daten lesend zuzugreifen.
Diese Adapter ermöglichen allerdings nicht einen schreibenden Zugriff auf die Tabellen. Will man z.B. Daten, die nicht mehr besonders wichtig sind, aber dennoch nicht gelöscht werden sollen („cold data“) in das Hadoop verschieben, so geht das nicht über diese Adapter.
Eine einfache Möglichkeit, Daten zwischen einem ABAP-System und Hadoop hin- oder herzuverschieben, bietet die Middleware GLUE, die von unserer Partnerfirma Datavard entwickelt und vertrieben wird. Sie bietet die Möglichkeit, vom ABAP aus Tabellen in Hadoop zu definieren (diese heissen dann GLUE-Tabellen) und zwar so ähnlich wie man das in der SE11 macht. Der Inhalt dieser Tabellen lässt sich so einfach wie mit der SE16 anzeigen, und auch das Schreiben in diese Tabellen ist sehr einfach. Die GLUE-Software setzt einen Applikationsserver auf Linux voraus, es ist aber keine HANA-Datenbank zwingend vorausgesetzt, die Software funktioniert auch auf klassischen Datenbanken.
Zusätzlich zu diesem Extraktor (er entspricht in etwa einer Transformation) wird eine Variante definiert (sie entspricht in etwa einem DTP). Diese Variante kann dann als Job eingeplant werden und führt dann den Datentransfer durch. Nach der Durchführung kann man im entsprechenden Job-Log sehen, wie der Transfer durchgeführt wurde (hier am Beispiel der Tabelle zcssensorl):
Wie früher im Blog bereits erwähnt, benötigt man im Allgemeinen nicht nur einen Austausch von Daten, sondern auch eine Orchestrierung von Ereignissen. GLUE bietet dabei die Steuerung zentral aus dem ABAP heraus an. Mit Hilfe des Script Editors können im ABAP Befehle an das Hadoop definiert werden, z.B.
Insgesamt bietet GLUE einen komfortablen Weg, aus dem ABAP heraus Hadoop anzusprechen und zu benutzen. Dem Anwender eröffnet sich damit die Hadoop-Welt, ohne dass er sich tief in die Einzelheiten dieser Technik einarbeiten muss.