Meerdere objecten repliceren vanuit SAP via SAP CDC

Van toepassing op: Azure Data Factory Azure Synapse Analytics

Tip

Data Factory in Microsoft Fabric is de volgende generatie van Azure Data Factory, met een eenvoudigere architectuur, ingebouwde AI en nieuwe functies. Als u nieuw bent in gegevensintegratie, begint u met Fabric Data Factory. Bestaande ADF-workloads kunnen upgraden naar Fabric om toegang te krijgen tot nieuwe mogelijkheden voor gegevenswetenschap, realtime analyses en rapportage.

In dit artikel wordt een oplossingssjabloon beschreven die u kunt gebruiken om meerdere ODP-objecten van SAP te repliceren via SAP CDC-connector naar Azure Data Lake Gen2 in Delta-indeling met sleutelpartitie.

Over deze oplossingssjabloon

Deze sjabloon leest een extern configuratiebestand in json-formaat uit uw opslagruimte, dat uw SAP ODP-contexten, SAP ODP-objecten en sleutelkolommen van het SAP-bronsysteem bevat, evenals uw containers, mappen en partities uit de Azure Data Lake Gen2-doellocatie. Vervolgens wordt elk van het SAP ODP-object gekopieerd van het SAP-systeem naar Azure Data Lake Gen2 in Delta-indeling.

De sjabloon bevat drie activiteiten:

  • Lookup haalt de lijst met SAP ODP-objecten op die worden geladen en het bestemmingsopslagpad van een extern controlebestand in uw Azure Data Lake Gen2-opslag.
  • ForEach haalt de lijst met SAP ODP-objecten op uit de opzoekactiviteit en doorloopt elk object naar de toewijzingsgegevensstroomactiviteit.
  • Gegevensstroommapping repliceert elk SAP ODP-object van het SAP-systeem naar Azure Data Lake Gen2 in Delta-indeling. De eerste volledige belasting wordt uitgevoerd in de eerste uitvoering en voert vervolgens automatisch incrementele belasting uit in de volgende uitvoeringen. De wijzigingen worden samengevoegd in Azure Data Lake Gen2 in Delta-indeling.

Een extern controlebestand in json-indeling is vereist in deze sjabloon. Het schema voor het besturingsbestand is zoals hieronder.

  • checkPointKey is uw aangepaste sleutel voor het beheren van het controlepunt van uw gewijzigde gegevensopname in ADF. Hier vindt u meer informatie.
  • sapContext is uw SAP ODP-context van het bron-SAP-systeem. Hier vindt u meer informatie.
  • sapObjectName is de naam van het SAP ODP-object dat moet worden geladen vanuit het SAP-systeem. Hier vindt u meer informatie.
  • sapRunMode is om te bepalen hoe u sap-object wilt laden. Dit kan "fullLoad", "incrementalLoad" of "fullAndIncrementalLoad" zijn.
  • sapKeyColumns zijn de sleutelkolomnamen van SAP ODP-objecten die worden gebruikt voor deduplicatie in de mappinggegevensstroom.
  • sapPartitions zijn een lijst met partitievoorwaarden die leiden tot afzonderlijke extractieprocessen in het verbonden SAP-systeem.
  • deltaContainer is uw containernaam in de Azure Data Lake Gen2 als bestemmingsopslag.
  • deltaFolder is jouw mapnaam in de Azure Data Lake Gen2 als doellocatie.
  • deltaKeyColumns zijn uw kolommen die worden gebruikt om te bepalen of een rij uit de bron overeenkomt met een rij uit de sink wanneer u een rij wilt bijwerken of verwijderen.
  • deltaPartition is de kolom die wordt gebruikt om partities te maken voor elke unieke waarde in een dergelijke kolom om gegevens naar Delta-indeling te schrijven op Azure Data Lake Gen2 via een Spark-cluster dat wordt gebruikt door de toewijzingsgegevensstroom. Hier vindt u meer informatie

Hieronder ziet u een voorbeeld van een configuratiebestand:

[
  {
    "checkPointKey":"CheckPointFor_ZPERFCDPOS$F",
    "sapContext": "ABAP_CDS",
    "sapObjectName": "ZPERFCDPOS$F",
    "sapRunMode": "fullAndIncrementalLoad",
    "sapKeyColumns": [
      "TABKEY"
    ],
    "sapPartitions": [
	[{
        "fieldName": "TEXTCASE",
        "sign": "I",
        "option": "EQ",
        "low": "1"
       },
       {
        "fieldName": "TEXTCASE",
        "sign": "I",
        "option": "EQ",
        "low": "X"
      }]
    ],
    "deltaContainer":"delta",
    "deltaFolder":"ZPERFCDPOS",
    "deltaKeyColumns":["TABKEY"],
    "deltaPartition":"TEXTCASE",
    "stagingStorageFolder":"stagingcontainer/stagingfolder"
  },
  {
    "checkPointKey":"CheckPointFor_Z0131",
    "sapContext": "SAPI",
    "sapObjectName": "Z0131",
    "sapRunMode": "incrementalLoad",
    "sapKeyColumns": [
      "ID"
    ],
    "sapPartitions": [],
    "deltaContainer":"delta",
    "deltaFolder":"Z0131",
    "deltaKeyColumns":["ID"],
    "deltaPartition":"COMPANY",
    "stagingStorageFolder":"stagingcontainer/stagingfolder"
  }
]

Deze oplossingssjabloon gebruiken

  1. Maak en upload een controlebestand in JSON-formaat naar uw Azure Data Lake Gen2 als doelopslag. De standaardcontainer voor het opslaan van het besturingsbestand is demo en de standaardnaam van het besturingselementbestand is SapToDeltaParameters.json.

  2. Ga naar de sjabloon Meerdere tabellen van SAP ODP repliceren naar Azure Data Lake Storage Gen2 in delta-indeling en klik erop.

    Schermopname van de SAP CDC-zoeksjabloon.

  3. Klik op Continue en voer de gekoppelde service in die als bron is verbonden met het SAP-systeem en de gekoppelde service die is verbonden met Azure Data Lake Gen2 als doel. Hier vindt u meer informatie over de gekoppelde SAP CDC-service. Houd er rekening mee dat het externe beheerbestand moet worden geüpload naar hetzelfde account van Azure Data Lake Gen2.

    Schermopname van een SAP CDC-sjabloon voor gebruik.

  4. Klik op Deze sjabloon gebruiken en u ziet dat de pijplijn gereed is voor gebruik.

    Schermopname van SAP CDC-pijplijn.