SAP HANA

In diesem Artikel werden das Herstellen einer Verbindung zwischen Tableau und einer SAP HANA-Datenbank und das Einrichten der Datenquelle beschrieben.

Hinweis: Dieser Connector nutzt JDBC-Treiber für Mac, Linux und Windows. Der JDBC-Treiber für Windows ist neu in Tableau, Version 2021.1. JDBC-Treiber für Mac und Linux wurden mit Tableau-Version 2020.2 eingeführt. Die JDBC-Treiberversion 2.3.4 ist die empfohlene Version.

Voraussetzungen

Stellen Sie zunächst diese Verbindungsinformationen zusammen:

  • Möchten Sie eine Verbindung mit einem oder mehreren Knoten herstellen?

    • Ein Knoten: Name des Servers, auf dem die Datenbank gehostet wird, zu der Sie eine Verbindung herstellen möchten, und die Portnummer, wenn Sie einen anderen als den Standardport verwenden

    • Mehrere Knoten: Name der Server, auf dem die Datenbank gehostet wird, zu der Sie eine Verbindung herstellen möchten, und die Portnummern

  • Authentifizierungsmethode:

    • Windows: Windows-Authentifizierung oder Benutzername und Kennwort

    • Mac: Kerberos oder Benutzername und Kennwort

  • Soll eine Verbindung zu einem SSL-Server hergestellt werden?

  • (Optional) SQL-Anfangsdatenanweisung, die bei jeder Verbindungsherstellung von Tableau ausgeführt wird

Treiber erforderlich

Damit dieser Connector mit der Datenbank kommunizieren kann, wird ein Treiber benötigt. Möglicherweise ist der erforderliche Treiber bereits auf Ihrem Computer installiert. Wenn der Treiber nicht auf Ihrem Computer installiert ist, wird in Tableau eine Meldung im Verbindungsdialogfeld angezeigt, die einen Link zu der Seite Treiber herunterladen(Link wird in neuem Fenster geöffnet) enthält. Dort finden Sie Treiber-Links und Installationsanweisungen.

Herstellen der Verbindung und Einrichten der Datenquelle

  1. Starten Sie Tableau, und wählen Sie unter Verbinden die Option SAP HANA aus. Eine umfassende Liste der Datenverbindungen wird angezeigt, wenn Sie unter Mit einem Server die Option Mehr auswählen. Gehen Sie dann wie folgt vor:

    1. Wählen Sie den Verbindungstyp aus:

      • Ein Knoten: Geben Sie den Namen des Servers, auf dem die Datenbank gehostet wird, zu der Sie eine Verbindung herstellen möchten, und die Portnummer ein, wenn Sie einen anderen als den Standardport verwenden.

      • Mehrere Knoten: Geben Sie den Hostnamen und die Portnummer von jedem Server ein, getrennt durch ein Komma. Beispiel:

        host1:30015,host2:30015,host3:30015.

        Weitere Informationen zur Unterstützung von SAP HANA für einen Failover finden Sie unter Konfigurieren von Clients für Failover(Link wird in neuem Fenster geöffnet) auf dem SAP-Hilfeportal.

    2. Legen Sie fest, wie Sie sich beim Server anmelden möchten:

      Unter Windows:

      • Wählen Sie die Option Windows-Authentifizierung verwenden, wenn Ihre Umgebung Single Sign-on (SSO, Einmaliges Anmelden) unterstützt. Weitere Informationen zu Single Sign-On und Anforderungen für die Umgebung finden Sie unter Unterstützung für SAP HANA Single Sign-On (SSO).

      • Alternativ wählen Sie die Option Spezifischen Benutzernamen und spezifisches Kennwort verwenden. Wenn der Server kennwortgeschützt ist und Sie sich nicht in einer Kerberos-Umgebung befinden, müssen Sie den Benutzernamen und das Kennwort eingeben.

      Bei einem Mac: Wählen Sie Kerberosoder Spezifischen Benutzernamen und spezifisches Kennwort verwenden aus.

      Wählen Sie beim Herstellen einer Verbindung mit einem SSL-Server die Option SSL anfordern aus.

    3. (Optional) Wählen Sie SQL-Anfangsdaten aus, um einen SQL-Befehl festzulegen, der zu Beginn jeder Verbindung ausgeführt wird, z. B. wenn Sie eine Arbeitsmappe öffnen, einen Extrakt aktualisieren, sich bei Tableau Server anmelden oder Inhalte in Tableau Server veröffentlichen. Weitere Informationen finden Sie unter Ausführen der SQL-Anfangsdaten.

    4. Wählen Sie Anmelden aus.

      Wenn Tableau keine Verbindung herstellen kann, überprüfen Sie die Richtigkeit Ihrer Anmeldeinformationen. Falls Sie weiterhin keine Verbindung herstellen können, kann der Computer den Server nicht finden. Wenden Sie sich an Ihren Netzwerkadministrator oder Datenbankadministrator.

  2. Gehen Sie auf der Datenquellenseite wie folgt vor:

    1. (Optional) Wählen Sie den Standard-Datenquellennamen oben auf der Seite aus, und geben Sie dann einen eindeutigen Datenquellennamen für die Verwendung in Tableau ein. Beispielsweise können Sie eine Benennungskonvention für die Datenquelle verwenden, die anderen Benutzern hilft, daraus abzuleiten, welche Datenquelle verbunden werden soll.

    2. Wählen Sie das Symbol für die Suche aus der Dropdown-Liste Schema aus, oder geben Sie den Namen des Schemas in das Textfeld ein, wählen Sie das Symbol für die Suche aus, und wählen Sie dann das Schema aus.

    3. Wählen Sie das Symbol für die Suche aus dem Textfeld Tabelle aus, oder geben Sie den Tabellennamen ein, wählen Sie das Symbol für die Suche aus, und wählen Sie dann die Tabelle aus.

      Tableau Desktop unterstützt zudem die Herstellung von Verbindungen zu SAP HANA-Tabellenfunktionen, die im linken Bereich der Seite "Datenquelle" unter Gespeicherte Prozeduren angezeigt werden.

    4. Ziehen Sie die Tabelle in den Arbeitsbereich, und klicken Sie dann auf die Blattregisterkarte, um Ihre Analyse zu starten.

      Standardmäßig werden Spaltenbeschriftungen anstatt Spaltennamen angezeigt.

      Verwenden Sie benutzerdefinierte SQL, um eine Verbindung zu einer bestimmten Abfrage herzustellen anstatt zur gesamten Datenquelle. Weitere Informationen finden Sie unter Herstellen einer Verbindung zu einer benutzerdefinierten SQL-Abfrage.

      Hinweis: Wenn Sie einen Self-Join mit einer Analyse-Ansicht erstellen und eine der Tabellen Variablen enthält, vergewissern Sie sich, dass sich die Tabelle mit den Variablen auf der linken Seite befindet. Andernfalls kann es sein, dass durch die Verknüpfung nicht die gewünschten Ergebnisse zurückgegeben werden.

Anmelden bei einem Mac

Wenn Sie Tableau Desktop auf einem Mac verwenden, geben Sie einen vollständig qualifizierten Domänennamen (beispielsweise "mydb.test.ourdomain.lan") anstelle eines relativen Domänennamens (beispielsweise "mydb" oder "mydb.test") ein.

Alternativ können Sie die Domäne der Liste der Suchdomänen für den Mac-Computer hinzufügen, sodass Sie zur Herstellung einer Verbindung nur den Servernamen angeben müssen. Zum Aktualisieren der Liste der Suchdomänen gehen Sie zu System-Voreinstellungen > Netzwerk > Erweitert, und öffnen Sie dann die Registerkarte DNS.

Konvertieren einer SAP HANA-Ebenen-Hierarchie in eine Benutzerhierarchie

Wenn Sie in einer beliebigen Tableau-Version eine SAP HANA-Datenquelle oder -Arbeitsmappe erstellen, können Sie Ihre eigene Hierarchie in Tableau erstellen, die ausschließlich für die Verwendung in Tableau bestimmt ist.

Ab Tableau 2019.4 unterstützt Tableau nicht nur die Unterstützung für das Erstellen Ihrer eigenen Hierarchie für die Verwendung in Tableau, sondern unterstützt jetzt auch in SAP HANA erstellte Ebenen-Hierarchien. Wenn Sie Tableau mit einer SAP HANA-Berechnungsansicht mit einer Ebenen-Hierarchie verbinden, wird die Struktur der SAP HANA-Ebenen-Hierarchie im Datenbereich angezeigt.

Wenn Sie die SAP HANA-Hierarchie in Tableau ändern möchten, müssen Sie die SAP HANA-Ebenen-Hierarchie in eine Benutzerhierarchie konvertieren. Wenn Sie eine SAP HANA-Ebenen-Hierarchie in eine Benutzerhierarchie konvertiert haben, können Sie sie nicht mehr umkehren. Wenn Sie die SAP HANA-Ebenen-Hierarchie anstelle der Benutzerhierarchie verwenden möchten, müssen Sie von vorne beginnen.

Führen Sie die folgenden Schritte aus, um in eine Benutzerhierarchie zu konvertieren:

  1. Wählen Sie links neben dem Blatt im Datenbereich die Hierarchie aus, und wählen Sie dann das Dropdown-Menü aus.
  2. Wählen Sie im Dropdown-Menü die Option In Benutzerhierarchie konvertieren aus.

Anpassen von JDBC-Verbindungen

Unter Mac und Linux verwendet SAP HANA eine JDBC-Verbindung, die Sie mithilfe einer Eigenschaftsdatei anpassen können. Weitere Informationen finden Sie unter Anpassen von JDBC-Verbindungen mit einer Eigenschaftsdatei(Link wird in neuem Fenster geöffnet) in Tableau Community.

Installieren von vertrauenswürdigen SSL-Zertifikaten auf einem Mac

Wenn Sie SSL/TLS zur Verschlüsselung der Kommunikation zwischen Tableau Desktop und Ihrer Datenbank verwenden wollen, müssen Sie u. U. Zertifikate zum Java-Zertifikatsvertrauensspeicher hinzufügen. Dies ist erforderlich, wenn Ihre Datenbank selbst signierte Zertifikate verwendet.

Hinweis: Ab Tableau Version 2020.2 können Sie ein benutzerdefiniertes Zertifikat in den "System"-Keychain importieren. Weitere Informationen finden Sie unter Einseitiges SSL für JDBC-Verbindungen.

Gehen Sie wie folgt vor, um Tableau Desktop mithilfe von SSL/TLS mit Ihrer Datenbank zu verbinden:

  1. Starten Sie die Terminal-Anwendung, und navigieren Sie zum Java Home-Verzeichnis, das sich üblicherweise unter dem Pfad /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home befindet, es sei denn, Sie haben das JDK installiert und die Umgebungsvariable JAVA_HOME eingerichtet.

  2. Führen Sie den folgenden Befehl aus. (Sie müssen möglicherweise den Terminal-Befehl sudo verwenden. Dieser wird von Administratoren zur Ausführung von Befehlen als anderer Benutzer, wie beispielsweise "root", genutzt).

    bin/keytool -importcert -keystore cacerts -alias <certificate name>  -file <path to certificate file>

Weitere Informationen zur Installation vertrauenswürdiger Zertifikate finden Sie in der Dokumentation zu Ihrer Java-Runtime-Umgebung.

Auswählen von Variablen und Eingabeparametern

Wenn die verwendete Tabelle erforderliche oder optionale Variablen oder Parameter enthält, wird das Dialogfeld für Variablen und Eingabeparameter geöffnet.

  • Die erforderlichen Variablen und Parameter werden mit ihrem aktuellen Wert oder mit *Erforderlich angezeigt.

  • Die optionalen Variablen und Parameter werden mit ihrem aktuellen Wert oder leer angezeigt.

  • Soll beim Öffnen der Arbeitsmappe eine Eingabeaufforderung für die Variable angezeigt werden, aktivieren Sie das Kontrollkästchen Eingabeaufforderung.

Wählen Sie eine Variable oder einen Parameter und danach einen zugehörigen Wert aus bzw. geben diesen ein. Wiederholen Sie den Vorgang für alle erforderlichen Werte sowie für sämtliche optionalen Werte, und wählen Sie dann OK aus.

Hinweis: Sie können SQL-Abfrage-basierte SAP HANA-Eingabeaufforderungen verwenden.

Unterstützung für SAP HANA Single Sign-On (SSO)

Wenn SAP HANA für die Unterstützung der einmaligen Anmeldung (Single Sign-On, SSO) konfiguriert ist, können Sie nach dem Anmelden beim SAP HANA-Server auf Daten zugreifen und Datenquellen und Arbeitsmappen in Tableau Server veröffentlichen, ohne den Benutzername und das Kennwort erneut eingeben zu müssen. Sie können zudem eine Datenquelle oder Arbeitsmappe so veröffentlichen, dass andere Benutzer mit SSO auf die veröffentlichten Datenquellen und Arbeitsmappen zugreifen können, ohne ihren Benutzernamen und das Kennwort eingeben zu müssen.

Um SSO verwenden zu können, müssen Sie Datenquellen und Arbeitsmappen in Tableau Server mit Authentifizierung mit den Anmeldeinformationen des Viewers veröffentlichen. Um die Authentifizierung mit den Anmeldeinformationen des Viewers zu aktivieren, müssen Sie eine Verbindung mit SAP HANA über die Windows-Authentifizierung auf einem Windows-Computer oder Kerberos auf einem Mac herstellen. Weitere Informationen finden Sie unter Veröffentlichen auf dem Server.

Wichtig: Ihre Umgebung muss für die Unterstützung von SSO für SAP HANA ordnungsgemäß konfiguriert sein:

Anmelden beim Server

Wenn in Ihrer Umgebung SSO eingerichtet ist, geben Sie zur Anmeldung bei SAP HANA einfach den Servernamen ein, wählen Sie bei einem Windows-Computer Windows-Authentifizierung verwenden bzw. bei einem Mac Kerberos aus und klicken Sie dann auf Anmelden.

Veröffentlichen auf dem Server

Wenn Sie eine Datenquelle oder Arbeitsmappe mit einem geeigneten Authentifizierungsmodus unter Tableau Server veröffentlichen, können die Benutzer in einer SSO-Umgebung darauf zugreifen, ohne ihre Anmeldedaten angeben zu müssen.

Befolgen Sie die folgenden Schritte, um SSO bei der Veröffentlichung einer Datenquelle oder einer Arbeitsmappe für Tableau Server zu aktivieren:

  1. Wählen Sie Server > Datenquelle veröffentlichen oder Server > Arbeitsmappe veröffentlichen aus.
  2. Klicken Sie unter "Datenquellen" auf die Option Bearbeiten.

  3. Gehen Sie im Dialogfeld "Datenquellen verwalten" wie folgt vor:

    1. Wählen Sie den Veröffentlichungstyp: In Arbeitsmappe eingebettet oder Unabhängig veröffentlicht.

    2. Wählen Sie für die Authentifizierung die Option Viewer-Anmeldeinformationen (Betrachter-Anmeldeinformationen).

  4. Klicken Sie auf Veröffentlichen.

Aktualisieren von HANA-Extrakten bei Verwendung von SSO

Wenn Sie Single Sign-on (SSO) zum Herstellen einer Verbindung zu SAP HANA verwenden und die Datenquelle oder die Arbeitsmappe auf einem Server veröffentlichen, können Sie aufgrund von Authentifizierungseinschränkungen keine Extraktaktualisierungen planen. Sie können jedoch die Extraktaktualisierung mit dem Dienstprogramm Tableau-Datenextraktion automatisieren.

Mit dem folgenden Befehl wird beispielsweise ein SAP HANA-Extrakt mit dem Namen "mydatasource" aktualisiert, der auf Tableau Server veröffentlicht wurde. Dieser Befehl enthält folgende Informationen:

  • Den Namen von Tableau Server

  • Den Namen der zu aktualisierenden Datenquelle

C:\Program Files\Tableau\Tableau 10.2\bin>tableau refreshextract --server https://mytableauserver --datasource mydatasource

Weitere Informationen zum Dienstprogramm finden Sie unter Befehlszeilenprogramm für die Tableau-Datenextraktion.

Leistungstipps

Sie können die Leistung verbessern, indem Sie eine oder beide der folgenden Funktionen aktivieren:

  • Abfrageparameterbindung
  • Zwischenspeicherung freigegebener Metadaten

In den folgenden Abschnitten wird beschrieben, wie diese Features verwendet werden.

Verwenden von Bindungsvariablen

Tableau kann Bindungsvariablen für Ihre SAP HANA-Abfragen verwenden. Dies verbessert die Leistung:

  • Für Abfragen: HANA kann eine Abfrage einmal kompilieren und mehrmals ausführen.
  • Für HANA-Bereitstellungen mit mehreren Knotenpunkten: Parametrisierte Abfragen werden optimal an den richtigen Knotenpunkt weitergeleitet.

Zum Aktivieren dieser Funktion kann Ihr Tableau Server-Administrator die Funktion "CAP_ODBC_QUERY_USE_PREPARE_PARAMETER_MARKER" in einer TDC-Datei hinzufügen.

Hinweis: Für diese Funktion ist Tableau 2018.3 oder höher erforderlich.
Trotz seines Namens kann CAP_ODBC_QUERY_USE_PREPARE_PARAMETER_MARKER mit JDBC ebenso wie ODBC verwendet werden.

Verwenden der Spaltenmetadatensammlung

Tableau unterstützt die Spaltenmetadatensammlung, wodurch die Ladezeit bei einigen Ansichten erheblich verbessert wird.

Wenn Tableau die Spaltenmetadaten für eine Tabelle oder Ansicht liest, wird standardmäßig eine vorbereitete Abfrage für die Tabelle verwendet. Dies ist in der Regel die genaueste Option, aber möglicherweise nicht die effizienteste.

Optional können Sie die Spaltenmetadatensammlung verwenden. Das heißt, Sie können vorbereitete Abfragemetadaten mithilfe einer TDC-Datei deaktivieren. In diesem Fall verwendet Tableau die ODBC-API "SQLColumns". Obwohl diese Methode schneller ist, ist sie möglicherweise nicht so genau. Deshalb sollten Sie diese Option mit Bedacht verwenden und nur dann, wenn sie ein guter Ansatz für Ihre Daten zu sein scheint.

Die Verwendung von Spaltenmetadaten über "SQLColumns" ist mit den folgenden Funktionen aktiviert:

  • CAP_ODBC_METADATA_SUPPRESS_EXECUTED_QUERY
  • CAP_ODBC_METADATA_SUPPRESS_PREPARED_QUERY

Hinweis: Um diese Funktionen auf temporäre Tabellen anzuwenden, müssen Sie Tableau Server 2019.3.6 oder höher installieren. Anschließend können Sie der TDC-Datei diese Funktionen hinzufügen.

TDC-Beispiel für SAP HANA

Ihre TDC-Datei sollte wie im folgenden Beispiel aussehen. In den meisten Fällen sind keine anderen Funktionen erforderlich. Vermeiden Sie insbesondere Funktionen wie CAP_ODBC_METADATA_SUPPRESS_SQLPRIMARYKEYS_API und CAP_ODBC_METADATA_SUPPRESS_SQLFORIEGNKEYS_API. Diese können die anfängliche Verbindungszeit beschleunigen, führen jedoch dazu, dass wir später weniger effiziente Abfragen generieren.

<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='saphana' enabled='true' version='9.3'>
<vendor name='saphana' />
<driver name='saphana' />
<customizations>
<customization name='CAP_ODBC_QUERY_USE_PREPARE_PARAMETER_MARKER' value='yes' />
</customizations>
</connection-customization>

Weitere Informationen zur Verwendung von TDC-Dateien finden Sie unter "Erstellen einer TDC-Datei" unter dem Thema Anpassen und Optimieren von ODBC-Verbindungen. Weitere Informationen finden Sie im Knowledge Base-Artikel mit dem Titel Verwenden einer TDC-Datei mit Tableau Server.

Wichtig: Stellen Sie sicher, dass "enabled='true'" in der Zeile "connection-customization" vorhanden ist.

Siehe auch

Vielen Dank für Ihr Feedback!