Advanced Analytics mit der SAP HANA Predictive Analysis Library

Wer Algo­rithmen zur Verbes­serung von Forecast-Prozessen oder Anomalie-Iden­­ti­­fi­­zierung einsetzen will, braucht als SAP HANA-Nutzer keine teure Machine-Learning-Software zu erwerben oder Daten­bank­schnitt­stellen zu errichten. Dank der Predictive Analysis Library (PAL) lassen sich Advanced Analytics Anwen­dungen direkt auf der SAP HANA Datenbank durchführen.

Analytics nativ auf der Datenbank mit HANA-In-Memory-Power

Die PAL ist ein Bestandteil der Appli­cation Function Library (AFL) und ermög­licht die Nutzung von populären Machine Learning Algo­rithmen, um beispiels­weise Prognosen zu erstellen. Der große Vorteil besteht darin, dass die Daten direkt dort, wo sie entstehen oder gehalten werden (z.B. im SAP ERP System S/4HANA oder im BW/4HANA bzw. on HANA​​​​​​​), mit den Algo­rithmen analy­siert werden können. Dies reduziert der Umfang aufwän­diger ETL-Prozesse deutlich. Insbe­sondere bei der Nutzung von Trans­ak­ti­ons­daten auf Bele­gebene entstehen übli­cher­weise schnell riesige Daten­mengen, die nun nicht mehr über Schnitt­stellen oder gar manuelle Exports erst an Analytics-Tools weiter­ge­reicht werden müssen.

Der zweite große Vorteil der Predictive Analysis Library liegt in der Rechen­leistung, über die HANA-Daten­­banken in der Regel verfügen. Bedingt durch die In-Memory-Archi­­tektur sind HANA-Daten­­banken meist mit mehreren Hundert Gigabyte oder sogar Terabyte Arbeits­speicher ausge­stattet. Dies ermög­licht kurze Kalku­la­ti­ons­zeiten selbst bei rechen­in­ten­siven Algo­rithmen wie Random Forests mit Tausenden Entschei­dungs­bäumen und einer Vielzahl von Variablen. Im Gegensatz zur anderen SAP onPremise Advanced Analytics Lösung (SAP Predictive Analytics) entstehen bei der Nutzung der HANA PAL keine zusätz­lichen Lizenz­ge­bühren. Dafür wird im Gegenzug eine größere Expertise hinsichtlich der analy­ti­schen Funk­tionen vorausgesetzt.

Modeling mittels Flow­graphs oder Scripting

Das Model­lieren geschieht entweder im HANA Studio oder über die Web IDE im Browser. Während die Analytics Modelle in HANA 1.0 mittels Wrapper Proce­dures geschrieben werden müssen, bietet HANA 2.0 nun die Möglichkeit Flow­graphs im Web-basierten Modeler zu verwenden. In Flow­graphs werden einzelne Funk­tionen als graphische Objekte darge­stellt und mitein­ander verbunden. So entsteht ein Fluss­dia­gramm, das den Weg der Daten durch die einzelnen Prozess­schritte und Algo­rithmen abbildet. Die Funk­tionen werden aus einem Repo­sitory per Drag & Drop eingefügt und verfügen über Einga­be­felder für die anzu­pas­senden Parameter. Die notwen­digen Proce­dures und Tabellen werden im Hinter­grund auto­ma­tisch angelegt. Je nach Anwen­dungsfall kann auf diese Weise sogar ganz auf das Schreiben von Code verzichtet werden.

Beispiel für die Nutzung von Flow­graphs zur Modellierung

Alter­nativ können die Modell-Parameter und zu nutzenden Tabellen auch weiterhin per SQL definiert und die gewünschten vorge­fer­tigten Funk­tionen per Call aufge­rufen werden.

 

Auszug aus SQL-Code zur Model­lierung mittels Decision Tree Algorithmus

 

Zurück­schreiben der Ergeb­nisse direkt in die HANA Datenbank

Nachdem die Daten den ange­legten Prozess im Analytics Model durch­laufen haben, werden die Ergeb­nisse in (neue) HANA Tabellen geschrieben. Ange­nommen man erstellt ein Cash Fore­casting Modell, welches auf Basis von ERP-Auftrags- und Rech­nungs­daten Prognosen zum Zeitpunkt von Geld­ein­gängen liefern soll. Nachdem die Daten aus den entspre­chenden ERP-Tabellen und Views ausge­lesen und aufbe­reitet wurden, berechnet das Advanced Analytics Modell für die nächsten Tage einen Forecast für den jewei­ligen Gesamt-Geld­­eingang. Dieser Forecast wird in einer HANA-Tabelle abgelegt. Somit können die Reporting-Tools auf die Ergeb­nisse zugreifen und diese visuell anspre­chend aufbe­reitet in Cash Management Reports darstellen. Da sich der gesamte End-to-End-Prozess auto­ma­ti­sieren lässt, kann der Forecast jederzeit mit aktuellen Daten neu erstellt werden – entweder per Knopf­druck oder z.B. als Job, der jede Nacht durch­ge­führt wird.

Stan­dard­al­go­rithmen werden durch R‑Integration und die External Machine Learning Library (EML) erweitert

In der PAL sind die popu­lärsten Algo­rithmen wie Decision Trees, Random Forests, Naive Bayes, Support Vector Machines, Multiple Lineare Regression, K‑Means Clus­tering oder Back Propa­gation Neural Networks zu finden. Darüber hinaus kann auf verschiedene Zeit­­rei­hen­analyse-Modelle wie ARIMA oder Expo­nential Smoothing zurück­ge­griffen werden. Die Algo­­rithmen-Parameter lassen sich mittels Parameter-Tabellen justieren.

Für den Fall, dass sehr spezielle Einstel­lungen notwendig sind oder der gewünschte Algo­rithmus nicht im PAL-Repo­­sitory vorhanden ist, können über eine R‑Integration oder die External Machine Learning Library (EML) die schier unbe­grenzten Möglich­keiten der Program­mier­sprache R oder sogar Tensorflow-Modelle für Deep Learning genutzt werden. Außerdem ist eine HANA-Python-Verbindung möglich. Mittels Datenbank-Konne­k­­toren (wie pyHDB oder pyodbc) können in Python geschriebene Analytics-Anwen­­dungen auf Daten in den HANA-Tabellen zugreifen und die Ergeb­nisse auch wieder dorthin zurückschreiben.

HANA PAL verein­facht und beschleunigt den Advanced Analytics-Prozess 

Analytics-Prozesse wie Kunden-Segmen­­tie­­rungen, Anomaly Detec­tions oder Forecasts können mit Hilfe der HANA Predictive Analysis Library verein­facht und vor allem beschleunigt werden – dies gilt insbe­sondere für Unter­nehmen, die bereits SAP ERP oder SAP BW Appli­ka­tionen auf HANA Daten­banken einsetzen. Die Auto­ma­ti­sie­rungs­funk­tionen sowie die Inte­gration von R und die Schnitt­stellen und Konnek­toren zu Tensorflow und Python ermög­lichen überdies ein breites Spektrum an Anwen­dungs­sze­narien und Use Cases.

Bei Fragen zu den Einsatz­mög­lich­keiten der HANA Predictive Analysis Library steht das verovis-Team gerne als kompe­tenter Ansprech­partner zur Verfügung.

 

Weitere News
  • verovis beim CCH Tagetik DACH InTouch Event

    Von Team #verovis

  • MS Azure Webinar – Building a modern Data Warehouse

    Von Team #verovis

  • Power Apps & Power BI richtig für das Target Setting einsetzen

    Von Team #verovis