Freigeben über


Transformieren von Daten aus einer SAP ODP-Quelle unter Verwendung des SAP CDC-Connectors in Azure Data Factory oder Azure Synapse Analytics

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

In diesem Artikel wird beschrieben, wie Sie mithilfe des SAP CDC-Connectors den Zuordnungsdatenfluss zum Transformieren von Daten aus einer SAP ODP-Quelle verwenden. Weitere Informationen finden Sie im Einführungsartikel zu Azure Data Factory oder Azure Synapse Analytics. Eine Einführung in die Transformation von Daten mit Azure Data Factory und Azure Synapse Analytics finden Sie unter Zuordnungsdatenfluss oder im Tutorial zum Zuordnungsdatenfluss.

Tipp

Informationen zur allgemeinen Unterstützung des SAP-Datenintegrationsszenarios finden Sie im Whitepaper zur SAP-Datenintegration mit Azure Data Factory. Dort finden Sie auch eine detaillierte Einführung in die einzelnen SAP-Connectors, einen Vergleich und Leitfäden.

Unterstützte Funktionen

Dieser SAP CDC-Connector wird für die folgenden Funktionen unterstützt:

Unterstützte Funktionen IR
Zuordnungsdatenfluss (Quelle/–) ①, ②

① Azure Integration Runtime ② Selbstgehostete Integration Runtime

Dieser SAP CDC-Connector verwendet das SAP ODP-Framework, um Daten aus SAP-Quellsystemen zu extrahieren. Eine Einführung in die Architektur der Lösung finden Sie unter Einführung und Architektur von SAP Change Data Capture (CDC) im SAP Knowledge Center.

Das SAP ODP-Framework ist in allen aktuellen SAP NetWeaver-basierten Systemen enthalten, einschließlich SAP ECC, SAP S/4HANA, SAP BW, SAP BW/4HANA und SAP LT Replication Server (SLT). Informationen zu den Voraussetzungen und den mindestens benötigten Versionen finden Sie unter Voraussetzungen und Konfiguration.

Der SAP CDC-Connector unterstützt die Standardauthentifizierung oder Secure Network Communications (SNC), wenn SNC konfiguriert ist.

Aktuelle Einschränkungen

Für den SAP CDC-Connector gelten aktuell in Data Factory die folgenden Einschränkungen:

  • Sie können ODQ-Abonnements in Data Factory nicht zurücksetzen oder löschen (verwenden Sie zu diesem Zweck die Transaktion „ODQMON“ im angeschlossenen SAP-System).
  • Sie können mit der Lösung keine SAP-Hierarchien verwenden.

Voraussetzungen

Informationen zur Verwendung dieses SAP CDC-Connectors finden Sie unter Voraussetzungen und Setup für den SAP CDC-Connector.

Erste Schritte

Sie können eines der folgenden Tools oder SDKs verwenden, um die Kopieraktivität mit einer Pipeline zu verwenden:

Erstellen eines verknüpften Diensts für den SAP CDC-Connector über die Benutzeroberfläche

Führen Sie die in Vorbereiten des verknüpften SAP CDC-Diensts beschriebenen Schritte aus, um einen verknüpften Dienst für den SAP CDC-Connector im Azure-Portal zu erstellen.

Dataset-Eigenschaften

Befolgen Sie die Anweisungen unter Vorbereiten des SAP CDC-Quelldatasets, um ein SAP CDC-Dataset vorzubereiten.

Transformieren von Daten mit dem SAP CDC-Connector

Der unformatierte SAP ODP-Änderungsfeed ist schwierig zu interpretieren, und ihn richtig auf eine Senke zu aktualisieren, kann eine Herausforderung darstellen. Beispielsweise müssen technische Attribute, die jeder Zeile zugeordnet sind (z. B. ODQ_CHANGEMODE), verstanden werden, um die Änderungen richtig auf die Senke anzuwenden. Außerdem kann ein Extrakt von Änderungsdaten aus ODP mehrere Änderungen am gleichen Schlüssel enthalten (z. B. denselben Kundenauftrag). Deshalb ist es wichtig, die Reihenfolge der Änderungen zu berücksichtigen und gleichzeitig die Leistung zu optimieren, indem die Änderungen parallel verarbeitet werden. Darüber hinaus erfordert die Verwaltung eines Change Data Capture-Feeds auch die Überwachung des Zustands, z. B. um integrierte Mechanismen für die Fehlerwiederherstellung bereitzustellen. Azure Data Factory-Zuordnungsdatenflüsse kümmern sich um all diese Aspekte. Daher ist die SAP CDC-Konnektivität Teil des Zuordnungsdatenflusses. Daher können sich Benutzer auf die erforderliche Transformationslogik konzentrieren, ohne sich mit den technischen Details der Datenextraktion beschäftigen zu müssen.

Erstellen Sie zunächst eine Pipeline mit einem Zuordnungsdatenfluss.

Screenshot: Hinzufügen einer Datenflussaktivität zur Pipeline

Geben Sie als Nächstes einen verknüpften Stagingdienst und einen Stagingordner in Azure Data Lake Gen2 an, der als Zwischenspeicher für aus SAP extrahierte Daten dient.

Hinweis

  • Der verknüpfte Stagingdienst kann keine selbstgehostete Integration Runtime verwenden.
  • Der Stagingordner sollte als ein interner Speicher des SAP CDC-Connectors betrachtet werden. Bei weiteren Optimierungen der SAP CDC-Runtime können sich Implementierungsdetails wie das für die Stagingdaten verwendete Dateiformat ändern. Wir empfehlen deshalb, den Stagingordner nicht für andere Zwecke zu verwenden, z. B. als Quelle für andere Kopieraktivitäten oder Zuordnungsdatenflüsse.

Screenshot: Angeben eines Stagingordners in Datenflussaktivität

Der Prüfpunktschlüssel wird von der SAP CDC-Runtime verwendet, um Statusinformationen zum Change Data Capture-Prozess zu speichern. Dadurch können sich beispielsweise SAP CDC-Zuordnungsdatenflüsse automatisch von Fehlersituationen erholen oder zu erkennen, ob bereits ein Change Data Capture-Prozess für einen bestimmten Datenfluss eingerichtet wurde. Es ist deshalb wichtig, für jede Quelle einen eindeutigen Prüfpunktschlüssel zu verwenden. Andernfalls werden Statusinformationen einer Quelle von einer anderen Quelle überschrieben.

Hinweis

  • Um Konflikte zu vermeiden, wird standardmäßig eine eindeutige ID als Prüfpunktschlüssel generiert.
  • Wenn Sie Parameter verwenden, um denselben Datenfluss für mehrere Quellen zu nutzen, stellen Sie sicher, dass Sie den Prüfpunktschlüssel mit eindeutigen Werten pro Quelle parametrisieren.
  • Die Eigenschaft Prüfpunktschlüssel wird nicht angezeigt, wenn der Ausführungsmodus innerhalb der SAP CDC-Quelle auf Vollständig bei jeder Ausführung festgelegt ist (siehe nächster Abschnitt), da in diesem Fall kein Change Data Capture-Prozess eingerichtet wird.

Screenshot der Eigenschaft „Prüfpunktschlüssel“ in der Datenflussaktivität.

Parametrisierte Prüfpunktschlüssel

Prüfpunktschlüssel sind erforderlich, um den Status von Änderungsdaten-Erfassungsprozessen zu verwalten. Für eine effiziente Verwaltung können Sie den Prüfpunktschlüssel parametrisieren, um Verbindungen mit verschiedenen Quellen zu ermöglichen. Im Folgenden wird erläutert, wie Sie einen parametrisierten Prüfpunktschlüssel implementieren können:

  1. Erstellen Sie einen globalen Parameter, um den Prüfpunktschlüssel auf Pipelineebene zu speichern und Konsistenz bei allen Ausführungen sicherzustellen:

    "parameters": {
     "checkpointKey": {
         "type": "string",
         "defaultValue": "YourStaticCheckpointKey"
     }
    } 
    
  2. Legen Sie den Prüfpunktschlüssel programmgesteuert fest, um die Pipeline bei jeder Ausführung mit dem gewünschten Wert aufzurufen. Hier ist ein Beispiel für einen REST-Aufruf mithilfe des parametrisierten Prüfpunktschlüssels:

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/pipelines/{pipelineName}?api-version=2018-06-01
    Content-Type: application/json
    {
        "properties": {
            "activities": [
                // Your activities here
            ],
            "parameters": {
                "checkpointKey": {
                    "type": "String",
                    "defaultValue": "YourStaticCheckpointKey"
                }
            }
        }
    }
    

Ausführlichere Informationen finden Sie unter Erweiterte Themen für den SAP CDC-Connector.

Eigenschaften von Mapping Data Flow

Führen Sie die folgenden Schritte aus, um einen Zuordnungsdatenfluss zu erstellen, der den SAP CDC-Connector als Quelle verwendet:

  1. Wechseln Sie in ADF Studio zum Abschnitt Datenflüsse des Hubs Erstellen. Klicken Sie auf die Schaltfläche ..., um das Dropdownmenü Datenflussaktionen einzublenden, und wählen Sie dann das Element Neuer Datenfluss aus. Aktivieren Sie den Debugmodus mithilfe der Schaltfläche Datenfluss debuggen in der oberen Leiste der Datenflusscanvas.

    Screenshot: Schaltfläche zum Debuggen des Datenflusses im Zuordnungsdatenfluss

  2. Wählen Sie im Zuordnungsdatenfluss-Editor Quelle hinzufügen aus.

    Screenshot: „Quelle hinzufügen“ im Zuordnungsdatenfluss

  3. Wählen Sie auf der Registerkarte Quelleinstellungen ein vorbereitetes SAP CDC-Dataset aus, oder klicken Sie auf die Schaltfläche Neu, um ein neues Dataset zu erstellen. Alternativ können Sie in der Eigenschaft Quellentyp auch Inline auswählen und fortfahren, ohne ein explizites Dataset zu definieren.

    Screenshot: Option zur Datasetauswahl in den Quelleinstellungen der Zuordnungsdatenflussquelle

  4. Wählen Sie auf der Registerkarte Quelloptionen die Option Vollständig bei jeder Ausführung aus, wenn Sie bei jeder Ausführung Ihres Zuordnungsdatenflusses vollständige Momentaufnahmen laden möchten. Wählen Sie Bei der ersten Ausführung vollständig und dann inkrementell aus, wenn Sie einen Änderungsfeed aus dem SAP-Quellsystem abonnieren möchten, einschließlich einer anfänglichen vollständigen Datenmomentaufnahme. In diesem Fall führt die erste Ausführung Ihrer Pipeline eine Deltainitialisierung durch, d. h. sie erstellt ein ODP-Deltaabonnement im Quellsystem und gibt eine aktuelle vollständige Datenmomentaufnahme zurück. Nachfolgende Pipelineausführungen geben nur inkrementelle Änderungen ab der vorherigen Ausführung zurück. Die Option Nur inkrementelle Änderungen erstellt ein ODP-Deltaabonnement, ohne dass bei der ersten Ausführung eine vollständige Datenmomentaufnahme zurückgegeben wird. Auch hier geben nachfolgende Pipelineausführungen nur inkrementelle Änderungen ab der vorherigen Ausführung zurück. Für beide Optionen zum inkrementellen Laden muss der Schlüssel des ODP-Quellobjekts in der Eigenschaft Schlüsselspalten angegeben werden.

    Screenshot: Eigenschaft zum Ausführungsmodus in den Quelloptionen der Zuordnungsdatenflussquelle

    Screenshot: Schlüsselspaltenauswahl in den Quelloptionen der Zuordnungsdatenflussquelle

  5. Folgen Sie für die Registerkarten Projektion, Optimieren und Überprüfen den Anweisungen in Zuordnungsdatenfluss.

Optimieren der Leistung von vollständigen oder anfänglichen Ladevorgängen mit Quellpartitionierung

Wenn der Ausführungsmodus auf Vollständig bei jeder Ausführung oder Vollständig bei der ersten Ausführung, dann inkrementell festgelegt ist, werden auf der Registerkarte Optimieren ein Auswahl- und Partitionierungstyp namens Quelle angeboten. Mit dieser Option können Sie Bedingungen für mehrere Partitionen (d. h. Filter) angeben, um ein großes Quelldataset in mehrere kleinere Teile aufzuteilen. Für jede Partition löst der SAP CDC-Connector einen separaten Extraktionsprozess im SAP-Quellsystem aus.

Screenshot: Partitionierungsoptionen zum Optimieren der Zuordnungsdatenflussquelle

Wenn Partitionen gleich groß sind, kann die Quellpartitionierung den Durchsatz der Datenextraktion linear erhöhen. Um solche Leistungsverbesserungen zu erreichen, sind ausreichende Ressourcen im SAP-Quellsystem, auf dem virtuellen Computer, auf dem die selbstgehostete Integration Runtime gehostet wird, und der Azure Integration Runtime erforderlich.