Zugriff auf Remote-Systeme definieren

Objective

After completing this lesson, you will be able to erläutern Sie die Datenvirtualisierungstechnologie, und beschreiben Sie die Eigenschaften einer Remote-Source.

Zugriff auf Daten aus externen Systemen

Beim Zugriff auf externe Systeme aus SAP HANA Cloud oder On-Premise stellen Sie eine Kommunikation zwischen zwei Systemen her. Lassen Sie uns ein Basisszenario beschreiben und die Schlüsselkonzepte bereitstellen.

Diese Folie zeigt, wie Sie mit einer Remote-Source auf ein externes System zugreifen.

Lassen Sie uns zunächst die Bedeutung von Quelle und Ziel in dieser Abbildung verdeutlichen. Um dies zu vereinfachen, wird allgemein davon ausgegangen, dass das Remote-System das Quellsystem ist, während das lokale SAP-HANA-System, von dem aus auf es zugegriffen wird, das Zielsystem ist.

Achtung

SAP-HANA-Datenbereitstellungstechnologien beschränken den Datenfluss NICHT auf eine einzelne Richtung (Quelle zu Ziel), d.h. das Lesen aus dem Quellsystem. Je nach Art der Quelle können einige Szenarios das Schreiben in das Quellsystem umfassen.

Ein Schlüsselartefakt, das den Zugriff auf Remote-Systeme ermöglicht, ist die Remote-Source. Dies ist ein Datenbankobjekt, das im Zielsystem (SAP HANA) angelegt wurde und ein Quellsystem referenziert, z.B. eine andere SAP-HANA-Datenbank (Cloud oder On-Premise), ein SAP-ASE-System oder ein Datei-Repository.

Schließlich legen Sie in einem Schema der Zieldatenbank virtuelle Tabellen an, die eine Remote-Quelle UND ein Remote-Objekt im Quellsystem referenzieren, auf das diese Remote-Quelle Zugriff gewährt.

Notiz

Eine Remote-Source gewährt Zugriff auf ein einzelnes Remote-System, Sie können jedoch mehrere Remote-Sources in einem einzigen SAP-HANA-System anlegen.

Konzentrieren wir uns auf Sicherheit und halten Sie sie vorerst einfach. Ein lokaler Benutzer legt die Remote-Quellen an und stellt die Anmeldeinformationen eines Remote-Benutzers bereit. Dieser entfernte Benutzer mit seinen Berechtigungen wird verwendet, um auf das Remote-System zuzugreifen und darin zu arbeiten.

SAP HANA Smart Data Access und Smart Data Integration

Für den Zugriff auf externe Daten aus einem SAP-HANA-Cloud- oder On-Premise-System können Sie verschiedene Technologien verwenden. In diesem Kurs konzentrieren wir uns auf zwei Technologien, die verwendet werden, wenn SAP HANA das Ziel für Föderations- oder Replikationsszenarios ist:

Die beiden Technologien sind:

  • SAP HANA Smart Data Access
  • SAP HANA Smart Data Integration

Diese beiden Technologien teilen sich viele Konzepte, Komponenten und Schnittstellen. Sie verwenden dieselben Datenbankobjekte auf der Zielseite (SAP HANA), Sicherheitskonzepte usw. Insbesondere für die Datenföderation (Ad-hoc-Zugriff auf Daten ohne Replikation eines vollständigen Datensatzes) bieten sie sehr ähnliche Funktionen.

Diese Folie bietet einen Überblick über SAP HANA Smart Data Access.

SAP HANA Smart Data Access basiert auf integrierten Adaptern, die auf der SAP-HANA-Datenbank ausgeführt werden. Es gibt hauptsächlich zwei Arten von Adaptern: ODBC- und REST-API-Adapter. Die REST-API-Adapter sind nur in SAP HANA Cloud verfügbar.

Diese Folie bietet einen Überblick über SAP HANA Smart Data Integration.

In SAP HANA Smart Data Integration kommen zwei zusätzliche Komponenten ins Spiel.

  • Datenbereitstellungsserver

    Dieser Service wird in der SAP-HANA-Instanz ausgeführt. Sie muss aktiviert werden, um jede SDI-Konnektivität zu unterstützen.

  • Datenbereitstellungs-Agent

    Diese Komponente ist eine Anwendung, die On-Premise in Ihrem Unternehmensnetzwerk ausgeführt wird. Dieser Agent stellt eine Verbindung zum Datenbereitstellungsserver her und stellt SDI-Adapter bereit, damit sie von Remote-Sources verwendet werden können.

    Beachten Sie, dass OData-Adapter auf dem Datenbereitstellungsserver ausgeführt werden und nicht den Datenbereitstellungs-Agent verwenden.

    Notiz

    Technisch gesehen kann der Datenbereitstellungs-Agent auf demselben Host wie eine SAP-HANA-Datenbank ausgeführt werden, wie in einigen Demos in diesem Kurs gezeigt. Abhängig von der geplanten Arbeitslast und um technische Best Practices einzuhalten, wird sie jedoch am häufigsten auf einem separaten Host installiert.

Übersicht über die unterstützten Quellsysteme

SAP HANA Smart Data Access und SAP HANA Smart Data Integration decken eine breite Palette von Quelldatenbanken ab, die sich in der Cloud oder On-Premise befinden. Für einige davon haben Sie je nach den Besonderheiten Ihres Szenarios die Wahl zwischen der einen und der anderen Technologie.

Adapter können auf Datenbankebene funktionieren, wie dies bei SAP-HANA-Adaptern, SAP ASE, SAP IQ, SAP HANA Cloud Data Lake und vielen mehr der Fall ist. Beispiel: Oracle, Microsoft SQL Server, Azure SQL Server oder Azure Data Explorer (ADX).

Andere Adapter können auf Anwendungsserverebene arbeiten. Dies ist der Fall für den ABAP-Adapter, der in SAP Smart Data Integration verfügbar ist. Dieser Adapter stellt eine Verbindung zum ABAP-Server her und verwendet ABAP-Funktionen, um die Daten bereitzustellen.

Es gibt auch einige SDI-Adapter, um eine Verbindung zu einem SAP-ECC-System (SAP ERP Central Component) herzustellen. Im Vergleich zum ABAP-Adapter erfolgt die Verbindung in erster Linie über das zugrunde liegende Datenbanksystem (z.B. SAP ASE oder Microsoft SQL Server), liest aber auch das SAP ABAP Dictionary, um ordnungsgemäß auf technische, ABAP-spezifische Tabellen wie Cluster- oder Pool-Tabellen zuzugreifen.

Als letztes Beispiel könnte das Quellsystem eine andere Art von Speicher für semistrukturierte oder unstrukturierte Daten sein, z.B. AliCloud OSS, Amazon S3, Google Cloud Storage oder Azure Blob Storage. In diesem Fall können Sie den vollständigen Satz von SAP-HANA-Adaptern prüfen, um zu prüfen, was mit jedem Quellsystem verwendet werden kann.

Notiz

In einigen Szenarien ist es möglich, einen Datenimport/-export aus Cloud-Speicherservices wie AliCloud OSS direkt in die SAP-HANA-Datenbank oder in SAP HANA, Data Lake, zu erwägen. Obwohl die Funktionen möglicherweise eingeschränkt sind, kann dies der einfachste Ansatz sein, der Ihrem Zweck dient.

Funktionen von SAP HANA zu SAP HANA

Lassen Sie uns besprechen, welche Virtualisierungsszenarien zwischen zwei SAP-HANA-Systemen unterstützt werden, mit SAP HANA Cloud und SAP HANA On-Premise (Version 2.0 SPS05, SPS06 oder SPS07).

Mit SAP HANA Smart Data Access und SAP HANA Smart Data Integration werden alle Szenarien unterstützt, unabhängig davon, ob Quelle und Ziel Cloud oder On-Premise sind. Ein Szenario erfordert besondere Aufmerksamkeit: Das Verbinden eines SAP-HANA-Cloud-Ziels mit einer SAP-HANA-On-Premise-Quelle mit SAP HANA Smart Data Access erfordert eine Instanz des SAP Cloud Connector, die als Reverse Proxy fungiert, um in das Unternehmensnetzwerk zu gelangen, in dem SAP HANA On-Premise ausgeführt wird.

Achtung

Diese Informationen gelten nur für Virtualisierungsszenarien. Wenn wir Datenreplikationsszenarios berücksichtigen, kann die Liste der unterstützten Szenarios unterschiedlich sein.

Eigenschaften der Remote-Quelle

Remote-Source definieren

Um SAP HANA mit einem externen System zu verbinden, muss eine Remote-Source definiert werden. Eine Remote-Source hat mehrere Eigenschaften:

Diese Folie zeigt die verschiedenen Optionen, die mit Remote-Sources verfügbar sind.
  • Name

    Der Name der Remote-Quelle muss in der Zieldatenbank eindeutig sein.

  • Adapter

    Der Adapter definiert den Typ der Quelldatenbank oder des Quellsystems, auf das Sie mit der Remote-Source zugreifen möchten, und indirekt die entsprechende Lösung (SAP HANA Smart Data Access oder SAP HANA Smart Data Integration).

  • Ablageort

    Der Speicherort einer Remote-Source bezieht sich auf den Ort, an dem sich der Adapter befindet.

    • Für SAP HANA Smart Data Access laufen die Adapter immer auf dem Indexserver der SAP-HANA-Zielinstanz.

      In einer SQL-Anweisung zum Anlegen einer Remote-Quelle wird diese Eigenschaft einfach nicht erwähnt.

    • Für SAP HANA Smart Data Integration werden die Adapter auf Datenbereitstellungs-Agents oder auf dem Datenbereitstellungsserver (für OData-Adapter) ausgeführt.
  • Configuration

    Der Konfigurationsabschnitt einer Remote-Source-Definition enthält wichtige Informationen über das Zielsystem, einschließlich der Art und Weise, wie Sie eine Verbindung zum Zielsystem herstellen. Diese Informationen werden wie folgt verwendet:

    • Zur Identifizierung des Quellsystems.

      Beispiel: Host und Port, Referenz auf eine Webdienst-URL oder Referenz auf einen Datenquellennamen oder DSN. Dazu gehören alle zusätzlichen Einstellungen, die spezifisch für das Remote-System sind.

    • Zur Identifizierung der zu verwendenden SAP-Cloud-Connector-Instanz beim Herstellen einer Verbindung zu einem SAP-On-Premise-System über den SAP Cloud Connector
    • Bereitstellung zusätzlicher Konfigurationen für das Verhalten der Remote-Source, z.B. des DML-Modus (Lese-/Schreibmodus oder schreibgeschützt) oder einiger performance-bezogener Einstellungen
    • Zum Übergeben einiger sicherheitsbezogener Informationen, z.B. Zertifikate
  • Zugangsdaten

    Die Anmeldeinformationen definieren die Art und Weise, wie eine Sitzung über die Remote-Quelle mit dem Remote-System verbunden wird.

    Dies kann beispielsweise der Name und das Kennwort eines technischen Benutzers, die Erwähnung sekundärer Anmeldeinformationen (Zuordnung technischer Benutzer aus dem Remote-System zu lokalen Benutzern) oder eine zertifikatsbasierte Authentifizierungsmethode (X.509) sein.

Remote-Quelle und Zielschema

Im Gegensatz zu vielen Datenbankobjekten in SAP HANA, wie Tabellen, Views, Funktionen usw., ist eine Remote-Quelle kein Schemaobjekt. Daher hängt sie von keinem Schema ab, und eine bestimmte Remote-Quelle kann virtuelle Objekte bedienen, die in mehr als einem Schema definiert sind.

Die Abbildung zeigt eine SAP-HANA-Datenbank, die mit zwei verschiedenen Remote-Systemen verbunden ist. Jede davon ist über eine dedizierte Remote-Quelle verbunden. Mehrere virtuelle Objekte, die sich in verschiedenen Schemas oder HDI-Containern dieser Datenbank befinden, sind jeweils mit einer Remote-Source verbunden.

In der Abbildung sehen Sie zwei Remote-Sources, von denen jede zwei oder drei Schemas oder HDI-Container bedient. Ebenso kann ein Schema oder ein HDI-Container Daten aus mehreren Remote-Quellen verwenden, wie dies bei Schema 2 und HDI-Container 1 der Fall ist.

Notiz

Abhängig von den Empfehlungen Ihrer IT-Organisation können Sie einen Ansatz verfolgen, bei dem sich Remote-Objekte systematisch in einem dedizierten Schema befinden.

Vorbereitungsschritte zum Anlegen einer Remote-Source

Bevor Sie eine Remote-Source anlegen, sind mehrere Schritte erforderlich. Diese Schritte sind in der Regel in der Rolle eines Systemadministrators enthalten, werden hier jedoch für allgemeines Interesse bereitgestellt.

Diese Folie zeigt die Schritte zum Anlegen und Prüfen einer Remote-Source.

Beachten Sie, dass es keine besondere technische oder Sicherheitsvoraussetzung für das Anlegen einer Remote-Source gibt. Der lokale Benutzer benötigt nur die Berechtigung CREATE REMOTE SOURCE. Für eine Remote-Quelle, die mit einer SQL-Anweisung angelegt wurde, muss die SQL-Anweisung natürlich syntaktisch korrekt sein.