SAP BusinessObjects ist in vielen Unternehmen das zentrale Werkzeug, wenn es darum geht, auch Nicht-SAP-Daten auszuwerten. Häufig werden dafür klassische SQL-Datenbanken wie Microsoft SQL Server oder Oracle an SAP BusinessObjects angebunden. Über ein vordefiniertes Universum lassen sich diese Daten dann komfortabel mit SAP Web Intelligence (WebI) analysieren.

Der Clou dabei: WebI nutzt die Definitionen aus dem Universum, um eigenständig den jeweils benötigten und vor allem optimierten SQL-Code zu generieren. Dieser wird direkt auf der SQL-Datenbank ausgeführt, und die Ergebnisse werden anschliessend im Bericht visualisiert. So profitieren die Anwender von performanten Abfragen und einer flexiblen Darstellung der Daten.
Als Berater durfte ich über die Jahre hinweg zahlreiche Projekte mit SAP BusinessObjects, SAP Data Services und aktuell auch mit SAP Datasphere begleiten. Die Welt dieser Tools ist mir bestens vertraut: Seit mehr als 20 Jahren arbeite ich intensiv mit diesen Technologien.
In diesem Blog gehe ich der Frage nach, ob es heute möglich ist, mit der SAP Analytics Cloud in Kombination mit SAP Datasphere Daten aus einer On-Premise-Datenbank genauso effizient und optimiert abzufragen wie früher mit WebI und Universum.
Kann die neue Lösung tatsächlich eine echte Alternative bieten? Finden wir es heraus!
Versuchsanlage
Für meinen Testfall liegen die Daten in einer lokalen Oracle-Datenbank. Der Zugriff auf diese Daten erfolgt über SAP HANA Smart Data Integration (SDI), sodass die Daten in SAP Datasphere verfügbar gemacht und dort eingebunden werden können.
Im ersten Schritt habe ich einzelne Tabellen der lokalen Datenbank als sogenannte Remote Tables im Inbound-Layer der SAP Datasphere angebunden. Über die Schichten Harmonization, Propagation und Reporting werden diese Tabellen dann per SQL-Views weiterverarbeitet. Ziel ist es, die Daten in ein Analytic Model mit Fakten und den dazugehörigen Dimensionen zu überführen – und das, ohne die Daten jemals physisch in SAP Datasphere zu speichern.
Anschliessend werden die erstellten Analytic Models aus SAP Datasphere in der SAP Analytics Cloud (SAC) eingebunden, um die Daten dort zu visualisieren.
Im Mittelpunkt des Tests steht die Analyse der von SAP generierten SQL-Abfragen: Werden tatsächlich nur die für den jeweiligen Report benötigten Daten aus der lokalen Datenbank abgefragt? Oder werden – wie es manchmal bei anderen Tools vorkommt – auch unnötige Datenmengen übertragen, die für die Visualisierung gar nicht gebraucht werden? Genau diese Fragestellung habe ich mir im Detail angeschaut.
Das Analytic Model

Schrittweise Erstellung der Story
Schritt 1 - Analytic Modell auswählen
Es wird eine neue Story auf Basis des Analytic Models aus der SAP Datasphere erstellt:

Initial wird in der Story eine erste Kennzahl angezeigt und somit wurde auch bereits ein SQL gegen die lokale Source-Datenbank abgesetzt:

Der hierzu abgesetzte SQL sieht bereits vielversprechend aus, es wurde nur die angezeigte Kennzahl aus der Datenbank abgerufen:

Schritt 2 - Filter hinzufügen
Nun wird der Story eine Filterung hinzugefügt:

Beim Auswählen des Filters wird eine Liste aller verfügbaren Werte angezeigt. Auch diese Werte werden selbstverständlich direkt aus der Datenbank geladen – und zwar mit folgendem SQL:

Sobald der Filter ausgewählt und bestätigt ist, aktualisiert sich das Dashboard automatisch:

Aus Sicht der Datenbank wird dadurch erneut eine Abfrage ausgelöst, da zuvor lediglich die Flächen-Summe abgefragt wurde.

Schritt 3 - Dimensionen hinzufügen
Jetzt möchte ich weitere Dimensionen zur Story hinzufügen:

Dies führt dazu, dass ein entsprechendes SQL ausgeführt wird:

Eine weitere Dimension wird hinzugefügt:

Interessanterweise wird jetzt nicht mehr ein SQL mit beiden Dimensionen ausgeführt, sondern ein separates SQL, das gezielt nur die Description sowie die jeweiligen Summen pro Description abruft:

Fazit
Diese Tests zeigen, dass die SAP Analytics Cloud in Verbindung mit SAP Datasphere fähig ist, optimierte SQL-Abfragen auf die Datenquelle abzusetzen und wirklich nur die Daten aus der Datenbank zu laden, die im Report benötigt werden. Damit erfüllt die Kombination aus SAP Analytics Cloud und SAP Datasphere die zentrale Anforderung, ausschliesslich die im Report angezeigten Daten aus einer angebundenen Datenbank abzurufen.
Vereinbaren Sie jetzt Ihren Expert Call. Wir freuen uns über Ihre Nachricht.
