Kompatibilität mit Cortex Framework v6

Die Kompatibilitätsinhalte für Version 6 bieten eine schemakompatible Ebene für Cortex Framework v6-Arbeitslasten innerhalb der Cortex Framework v7-Architektur. So können Sie zu Cortex Framework v7 migrieren, ohne vorhandene Analyse-Assets wie Looker-Dashboards oder semantische LookML-Modelle zu beschädigen.

Unterstützte Datenquellen

Das Framework bietet Kompatibilitätsinhalte für Version 6 für SAP ECC- und SAP S/4HANA-Datenquellen.

Funktionsweise

Die Kompatibilitätsinhalte für Version 6 fungieren als Adapter zwischen den v7-Datenmodellen und Ihren Legacy-Berichts-Assets:

  • Schemakompatible Ansichten: Namen, Spalten und Groß-/Kleinschreibung von Berichtsansichten werden genau so angezeigt, wie sie in Cortex Framework (Version 6) verwendet wurden.
  • Zielisolation: Kompatibilitätsansichten werden von den Cortex Framework-Kerntabellen isoliert, indem sie in einem separaten Namespace (cortex_v6_compatibility) und einem dedizierten BigQuery-Ziel-Dataset bereitgestellt werden.

Kompatibilitätsinhalte bereitstellen

Führen Sie die folgenden Schritte aus, um die Kompatibilitätsinhalte für Cortex Framework v6 bereitzustellen:

  • Konfigurieren Sie ein dediziertes BigQuery-Ziel-Dataset.
  • Aktivieren Sie die Kompatibilitätsmodule für Version 6 in der Datei config.yaml.
  • Führen Sie die Build- und Bereitstellungsskripts für das Google Cloud Cortex Framework aus.
  • Führen Sie die Dataform-Pipelines aus.

Dediziertes Ziel-Dataset

Sie müssen die Kompatibilitätsinhalte für Version 6 in einem separaten BigQuery-Dataset bereitstellen. So werden Namespace-Shadowing und physische Tabellenkollisionen vermieden, da viele Tabellen, die von den Kompatibilitätsinhalten verwendet werden, identische physische Namen (z. B. cost_centers, profit_centers, billing und deliveries) mit den Cortex Framework v7-Kerntabellen haben.

Fügen Sie cortex_v6_compatibility_target der Datei config.yaml hinzu, um das dedizierte BigQuery-Dataset zu erstellen:

data:
  datasets:
    - id: product_target
      projectId: YOUR_TARGET_PROJECT_ID
      datasetId: prod_sap_dataproducts # Core v7 tables
    - id: cortex_v6_compatibility_target
      projectId: YOUR_TARGET_PROJECT_ID
      datasetId: prod_sap_cortex6 # Compatibility v6 tables

Cortex Framework konfigurieren

Führen Sie die folgenden Aufgaben aus, um die Kompatibilitätsebene in der Datei config.yaml zu registrieren und zu aktivieren:

  • Richten Sie das dedizierte Ziel-Dataset ein.
  • Registrieren Sie den Kompatibilitäts-Namespace.
  • Legen Sie das Attribut „enabled“ für alle folgenden Kompatibilitätsmodule für Cortex Framework v6 auf true fest:

  • sap_cortex_v6_compatibility_master_data

  • sap_cortex_v6_compatibility_accounts_payable

  • sap_cortex_v6_compatibility_finance

  • sap_cortex_v6_compatibility_inventory

  • sap_cortex_v6_compatibility_purchasing

  • sap_cortex_v6_compatibility_sales

Das folgende Beispiel zeigt die Konfigurationsänderungen, die erforderlich sind, um sap_cortex_v6_compatibility_inventory zu aktivieren:

data:
  datasets:
    - id: cortex_v6_compatibility_target
      projectId: YOUR_TARGET_PROJECT_ID
      datasetId: prod_sap_cortex6

  namespaces:
    - name: cortex_v6_compatibility
      path: ../src/data_modules/cortex_v6_compatibility

  modules:
    products:
      - moduleId: sap_cortex_v6_compatibility_inventory
        modulePath: cortex_v6_compatibility.sap.products.inventory
        enabled: true # If using configuration file based on config.yaml.example, ensure the `enabled` flag is set to `true`
        syncToKc: false
        dependencyBindings:
          sapModule: erp
          sapMasterData: sap_cortex_v6_compatibility_master_data
          sapSales: sap_cortex_v6_compatibility_sales
        dataTargetId: cortex_v6_compatibility_target
        moduleSettings:
          targetCurrencies: ['USD']
          rateType: 'M'
          languages: ['E']

#    You must ensure the `enabled` flag is set to `true` for all of the listed dependent modules. In this example:
#   `sap_cortex_v6_compatibility_master_data`
#   `sap_cortex_v6_compatibility_sales`

Nutzungsvoraussetzungen

Wir empfehlen dringend, alle Kompatibilitätsmodule für Cortex Framework v6 gleichzeitig zu aktivieren. Die Kompatibilitätsinhalte enthalten modulübergreifende Abhängigkeiten. So sind beispielsweise Abrechnungsansichten von Stammdatentabellen und Ansichten für Inventar-Snapshots von Kalenderdimensionen abhängig. Wenn Sie sie zusammen aktivieren, werden Abhängigkeitsfehler in Dataform vermieden.

Inventar-Snapshots

Sie müssen die Tabellen für Inventar-Snapshots (stock_weekly_snapshots und stock_monthly_snapshots) als inkrementelle Tabellen konfigurieren und ausführen. In Cortex Framework v6 wird mit Inventar-Snapshots eine laufende kumulative Summe der Lagerbestandsmengen und -werte berechnet:

  1. Erste Ausführung: Die Tabellen verarbeiten den gesamten Verlauf der Bewegungstransaktionen, um die Anfangsbestände zu ermitteln.
  2. Nachfolgende Ausführungen: Dataform verarbeitet nur die Bewegungen, die seit der letzten Snapshot-Ausführung gebucht wurden, und fügt sie den kumulativen Summen der vorherigen Periode hinzu.

Wenn Sie diese Tabellen im Modus „Vollständige Aktualisierung“ (nicht inkrementell) ausführen, wird bei jeder Ausführung der gesamte Bewegungsverlauf von Grund auf neu berechnet. Dieser Ansatz ist sehr ineffizient und teuer und kann zu falschen kumulativen Berechnungen führen, wenn die Quelltabellen Datumslücken enthalten. Behalten Sie den Materialisierungstyp für diese Tabellen auf „inkrementell“ (Standardkonfiguration) bei.

Kompatibilitätsinhalte erstellen und bereitstellen

Folgen Sie der Anleitung in der Dokumentation zur Bereitstellung und nach der Bereitstellung, um die Kompatibilitätsinhalte zu erstellen und bereitzustellen.