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
truefest:sap_cortex_v6_compatibility_master_datasap_cortex_v6_compatibility_accounts_payablesap_cortex_v6_compatibility_financesap_cortex_v6_compatibility_inventorysap_cortex_v6_compatibility_purchasingsap_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:
- Erste Ausführung: Die Tabellen verarbeiten den gesamten Verlauf der Bewegungstransaktionen, um die Anfangsbestände zu ermitteln.
- 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.