SAP Datasphere und Microsoft Power BI kommen in vielen Unternehmen zusammen vor: Datasphere als zentrale Datenschicht mit den SAP-Daten, Power BI als Werkzeug für Berichte und Dashboards. Die Verbindung zwischen beiden ist keine Frage des Ob, sondern des Wie. Zwei Wege stehen zur Wahl, und sie liefern unterschiedliche Ergebnisse.
Zwei Wege
ODBC verbindet Power BI direkt mit der Datenbank von Datasphere. Dafür wird der SAP-HANA-Client mit dem ODBC-Treiber auf dem Rechner installiert, und Datasphere bekommt einen Datenbankbenutzer. Der Weg ist schnell und für große Datenmengen geeignet, braucht aber eine lokale Installation und einen Eintrag in der IP-Allowlist.
OData nutzt die Schnittstelle, die Datasphere für den Datenzugriff über HTTP anbietet. Es gibt nichts zu installieren, die Verbindung ist eine URL. Dafür ist der Weg bei großen Datenmengen langsamer, und die Daten werden immer nach Power BI importiert.
Verbindung über ODBC
In Datasphere sind drei Dinge nötig:
- Datenbankbenutzer anlegen. In der Space-Verwaltung des gewünschten Space unter Database Access einen Datenbankbenutzer mit Lesezugriff anlegen. Der Benutzername setzt sich aus dem Space-Namen und einem Suffix zusammen. Host, Port und Passwort stehen in den Benutzerdetails; sie werden für die Verbindung gebraucht. Dafür ist die Rolle eines Datenbank-Administrators in Datasphere erforderlich.
- Sichten freigeben. Analytic Models sind automatisch für den Zugriff freigegeben. Eine Sicht muss einzeln mit Expose for consumption freigegeben werden, oder der Space wird so eingestellt, dass neue Sichten automatisch freigegeben sind.
- IP-Adresse freischalten. Die Adresse des Rechners, von dem die Verbindung kommt, gehört in die IP-Allowlist unter der Systemkonfiguration. Für geplante Aktualisierungen im Power-BI-Dienst ist das die Adresse des Daten-Gateways.
Auf dem Rechner mit Power BI Desktop:
- SAP-HANA-Client installieren, in der 64-Bit-Fassung, passend zu Power BI. Danach erscheint der Treiber
HDBODBCin der ODBC-Datenquellen-Verwaltung von Windows. - Datenquelle anlegen mit Host und Port aus den Benutzerdetails, in der Regel Port 443, und die Verbindung mit dem Datenbankbenutzer testen.
- In Power BI verbinden über Daten abrufen und den ODBC-Connector mit der angelegten Datenquelle. Der Navigator zeigt die freigegebenen Sichten und Analytic Models des Space.
Der generische ODBC-Connector importiert die Daten. Wer DirectQuery möchte, also Abfragen zur Laufzeit gegen Datasphere, nimmt den Connector SAP HANA-Datenbank in Power BI; er setzt denselben Treiber voraus.
Verbindung über OData
- Zugriff in Datasphere einrichten. Die OData-Schnittstelle wird je Space freigegeben, die Anmeldung läuft über einen OAuth-Client, der in der Administration von Datasphere angelegt wird. Für ein Analytic Model oder eine Sicht liefert Datasphere die URL des OData-Dienstes.
- In Power BI verbinden über Daten abrufen und OData mit dieser URL. Die Anmeldung gegen Datasphere ist der aufwendigere Teil der Einrichtung; je nach Connector ist sie unterschiedlich gelöst.
- Laden. Power BI liest die Metadaten des Dienstes, danach werden die gewünschten Objekte ausgewählt und importiert. Geplante Aktualisierungen sind im Power-BI-Dienst für OData-Quellen ohne Gateway möglich.
Die Schnittstelle kennt zwei Arten von Zugriff: relational auf Sichten mit Fakten und Dimensionen und analytisch auf Analytic Models. Die beiden Arten verhalten sich unterschiedlich, siehe unten.
Was in Power BI ankommt
Das Objekt in Datasphere und der Weg bestimmen, was Power BI zu sehen bekommt. Am Beispiel einer Faktensicht mit einer Assoziation zu einer Dimension, die eine Hierarchie trägt:
| Weg und Objekt | Felder der Assoziation | Hierarchie | Aggregation |
|---|---|---|---|
| ODBC, Sicht | nein | nein | wie in der Sicht definiert |
| ODBC, Analytic Model | nein | nein | nein, die Daten kommen auf Einzelsatzebene |
| OData relational, Sicht | nein | nein | wie in der Sicht definiert |
| OData analytisch, Analytic Model | ja | nein | ja, wie im Analytic Model definiert |
Drei Dinge gelten für alle Wege: Power BI übernimmt die technischen Feldnamen, nicht die Beschreibungen. Hierarchien aus Datasphere kommen nicht an. Und Kennzahlen sind in Power BI zunächst Spalten; Maße, Formatierung und Beziehungen entstehen im Power-BI-Modell.
Modellierung in Power BI
Aus der Tabelle folgt die Arbeitsweise. Wer über ODBC geht, lädt Fakten- und Dimensionssichten getrennt und baut das Sternschema in Power BI nach: Beziehungen zwischen den Tabellen, Maße in DAX, Hierarchien in den Dimensionen. Das Analytic Model hilft auf diesem Weg nicht, weil seine Assoziationen und Aggregationen nicht mitkommen.
Wer über OData auf das Analytic Model zugreift, bekommt ein fertiges Ergebnis mit den Feldern der verbundenen Dimensionen und der Aggregation aus Datasphere. Das passt für Berichte, die genau diese Sicht brauchen, und weniger für ein wiederverwendbares Modell mit vielen Dimensionen.
In beiden Fällen lohnt es sich, in Datasphere sauber zu benennen und zu dokumentieren: Technische Namen landen eins zu eins in Power BI, und wer dort umbenennt, pflegt zwei Stellen.
Aktualisierung und Berechtigungen
Importierte Daten sind eine Kopie. Ihre Aktualisierung plant der Power-BI-Dienst; bei ODBC läuft sie über ein Daten-Gateway, auf dem der SAP-HANA-Client installiert ist, bei OData direkt aus der Cloud. Mit der Kopie wandert auch die Verantwortung: Was Datasphere an Berechtigungen und Datenschutz regelt, gilt in Power BI nicht automatisch.
Der Datenbankbenutzer ist ein technischer Benutzer. Dürfen nicht alle Empfänger eines Berichts alles sehen, müssen Zeilenberechtigungen in Power BI nachgebildet werden, etwa über Row-Level Security. Das ist vor dem ersten Bericht zu klären, nicht danach.
Empfehlung
- Große Datenmengen, eigenes Modell in Power BI: ODBC mit getrennten Fakten- und Dimensionssichten. Schnell, belastbar, mit Gateway auch im Dienst aktualisierbar.
- Fertige Auswertung aus einem Analytic Model, moderate Datenmengen: OData mit analytischem Zugriff. Keine Installation, Assoziationen und Aggregation kommen mit.
- In beiden Fällen: Sichten bewusst freigeben, nur die Felder exponieren, die Power BI braucht, und die Berechtigungen auf der Power-BI-Seite vor dem Rollout festlegen.