Einbindung in Oracle EBS
Die Oracle EBS-Integration (E-Business Suite) unterstützt Order-to-Cash-Datenmodelle mit Datenaufnahme über Incorta. Incorta verwendet eine gehostete oder private Instanz, um die Daten aus Oracle in ein BigQuery-CDC-Dataset aufzunehmen und die CDC-Verarbeitung zu übernehmen. Das Cortex Framework transformiert und materialisiert die CDC-Daten dann in Berichts-Assets. Dazu werden BigQuery-Jobs mit Managed Service for Apache Airflow orchestriert.
Das folgende Diagramm zeigt, wie Oracle EBS-Daten über die operative Oracle EBS-Arbeitslast verfügbar sind:

Konfiguration des Deployments
In der folgenden Tabelle finden Sie die Parameter zum Konfigurieren des Oracle EBS-Arbeitslasttyps: Die Datei config.json konfiguriert die Einstellungen, die zum Übertragen von Daten aus einer beliebigen Datenquelle, einschließlich Oracle EBS, erforderlich sind. Diese Datei enthält die folgenden Parameter für Oracle EBS:
| Parameter | Bedeutung | Standardwert | Beschreibung | Übereinstimmendes Oracle-Quellfeld |
|---|---|---|---|---|
OracleEBS.itemCategorySetIDs |
Artikelkategoriesets | [1100000425] |
Liste der Sets, die zum Kategorisieren von Elementen verwendet werden sollen. | MTL_ITEM_CATEGORIES.CATEGORY_SET_ID |
OracleEBS.currencyConversionType |
Währungsumrechnungs-Conversion-Typ | "Corporate" |
Der Typ der Währungsumrechnung, der in aggregierten Tabellen verwendet werden soll. | GL_DAILY_RATES.CONVERSION_TYPE |
OracleEBS.currencyConversionTargets |
Ziele für die Währungsumrechnung | ["USD"] |
Liste der Zielwährungen, die in zusammengefasste Tabellen aufgenommen werden sollen. | GL_DAILY_RATES.TO_CURRENCY |
OracleEBS.languages |
Sprachen | ["US"] |
Liste der Sprachen, in denen Übersetzungen von Feldern wie Artikelbeschreibungen angezeigt werden sollen. | FND_LANGUAGES.LANGUAGE_CODE |
OracleEBS.datasets.cdc |
CDC-Dataset | - | CDC-Dataset. | - |
OracleEBS.datasets.reporting |
Berichts-Dataset | "REPORTING_OracleEBS" |
Berichts-Dataset. | - |
Datenaufnahme
Wenden Sie sich an einen Incorta-Mitarbeiter und lesen Sie die Einrichtungsanleitung für Oracle EBS für Google Cortex, um Informationen zum Erfassen von Daten aus Oracle in BigQuery zu erhalten.
Empfohlene Konfigurationen
Incorta unterstützt die Planung von Datenaufnahmemethoden in verschiedenen Intervallen. Für optimale Leistung und Datenaktualität empfehlen wir jedoch, Incorta-Datenaufnahmemethoden so zu planen, dass sie täglich ausgeführt werden. Wenn in Ihrem Anwendungsfall gelöschte Daten verarbeitet werden müssen, aktivieren Sie diese gemäß der Anleitung in der Incorta-Dokumentation unter Handling source deletes (Quelllöschungen verarbeiten).
Berichtskonfigurationen
In diesem Abschnitt werden die erforderlichen Berichtskonfigurationen für Ihre Umgebung beschrieben.
Managed Airflow-Airflow-Verbindung
Erstellen Sie eine BigQuery-Airflow-Verbindung mit dem Namen oracleebs_reporting_bq, die vom BigQuery-Operator zum Ausführen von Reporting-Transformationen verwendet wird. Weitere Informationen finden Sie in der Dokumentation zum Verwalten von Airflow-Verbindungen.
Materializer-Einstellungen
Die Einstellungen für die Materialisierung finden Sie unter src/OracleEBS/config/reporting_settings.yaml.
Standardmäßig werden die Tabellen dimension, header und aggregate täglich materialisiert. Die Tabellen der Berichtsebene sind ebenfalls nach Datum partitioniert.
Partitionen und Clustering können bei Bedarf angepasst werden. Weitere Informationen finden Sie unter Clustereinstellungen und Tabellenpartition.
Datenmodell
In diesem Abschnitt wird das logische Datenmodell „Oracle EBS Order to Cash“ beschrieben. In jedem Unterabschnitt wird das folgende Entity-Relationship-Diagramm (ERD) für Oracle EBS erläutert.
Faktentabellen
Das sind die blauen Objekte im ERD. Sie sind Ansichten von CDC-Tabellen ohne Transformationen, abgesehen von einigen Aliasen für Spaltennamen.
Dimensionstabellen
Das sind die violetten Objekte im ERD, die die relevanten Dimensionsattribute enthalten, die von den Berichtstabellen verwendet werden. Standardmäßig werden diese Dimensionen anhand der Parameterwerte der Bereitstellungskonfiguration gefiltert, sofern zutreffend. Bei dieser Integration wird auch die Dimension „Cortex K9-Gregorianischer Kalender“ für Datumsattribute verwendet, die standardmäßig bereitgestellt wird.
Tabellen mit Kopfzeilen
Das sind die grünen Objekte im ERD. Sie enthalten die verknüpften Fakten und Dimensionen, die Geschäftseinheiten wie Bestellungen und Rechnungen auf Kopfzeilenebene beschreiben. Die Headertabellen werden nach einem primären Ereignisdatum partitioniert, das jeder Einheit entspricht, z. B. ORDERED_DATE oder INVOICE_DATE.
Verschachtelte und wiederkehrende Zeilen
Die Tabellen SalesOrders und SalesInvoices enthalten verschachtelte wiederkehrende Felder mit dem Namen LINES. In diesen Feldern werden die verschiedenen Bestell- und Rechnungszeilen unter den zugehörigen Überschriften gruppiert. Verwenden Sie zum Abfragen dieser verschachtelten Felder den Operator UNNEST, um die Elemente in Zeilen zu vereinfachen, wie in den bereitgestellten Beispielscripts (src/OracleEBS/src/reporting/ddls/samples/) gezeigt.
Verschachtelte und wiederholte Attribute
Einige Tabellen enthalten zusätzliche verschachtelte wiederholte Felder wie ITEM_CATEGORIES oder ITEM_DESCRIPTIONS, in denen mehrere Werte desselben Attributs für die Entität gelten können. Wenn Sie diese wiederholten Attribute entnesten, müssen Sie die Daten nach einem einzelnen Attributwert filtern, um eine Überzählung von Messwerten zu vermeiden.
Verrechnete Forderungen
SalesAppliedReceivables ist eine eindeutige Tabelle, da die Einheiten entweder auf Rechnungen oder auf eine Rechnung mit einem Kassenbeleg verweisen können. Daher gibt es verschachtelte (aber nicht wiederholte) Felder INVOICE und CASH_RECEIPT, wobei das Feld CASH_RECEIPT nur ausgefüllt wird, wenn APPLICATION_TYPE = 'CASH'.
Aggregierte Tabellen
Das sind die roten Objekte im ERD, die von den Kopfzeilentabellen bis hin zu täglichen Messwerten aggregiert werden. Jede dieser Tabellen ist auch nach dem Datum des primären Ereignisses partitioniert. Die aggregierten Tabellen enthalten nur additive Messwerte (z. B. Anzahl, Summen) und keine Messwerte wie Durchschnittswerte und Verhältnisse. Das bedeutet, dass Nutzer die nicht additiven Messwerte ableiten müssen, damit sie beim Aggregieren auf einer höheren Granularität, z. B. monatlich, richtig abgeleitet werden können.
src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql ist ein Beispielskript.
Beträge für die Währungsumrechnung
Jede zusammengefasste Tabelle verwendet die Dimension CurrencyRateMD, um ein verschachteltes wiederholtes Feld vom Typ AMOUNTS zu erstellen, das Währungsstatistiken enthält, die in die einzelnen Zielwährungen umgerechnet wurden, die in der Bereitstellungskonfiguration angegeben sind.
Wenn Sie diese Messwerte verwenden, sollten Sie Berichte nach einer einzelnen Zielwährung filtern oder nach Zielwährungen gruppieren, um eine Überzählung zu vermeiden. Das ist auch in den Beispielskripten wie src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql zu sehen.
Geschachtelte Zeilenattribute und ‑messwerte
Die Tabelle SalesOrdersDailyAgg enthält ein verschachteltes wiederholtes Feld mit dem Namen LINES, um zwischen Attributen und Messwerten auf Zeilenebene (z. B. ITEM_CATEGORY_NAME und AMOUNTS) und Attributen und Messwerten auf Headerebene (z. B. BILL_TO_CUSTOMER_NAME und NUM_ORDERS) zu unterscheiden. Achten Sie darauf, diese Granularitäten separat abzufragen, um eine Überzählung zu vermeiden.
Rechnungen haben zwar auch Kopfzeilen und Zeilen, die Tabelle SalesInvoicesDailyAgg enthält jedoch nur Messwerte auf Zeilenebene und hat daher nicht dieselbe Struktur wie SalesOrdersDailyAgg.
Nächste Schritte
- Weitere Informationen zu anderen Datenquellen und Arbeitslasten finden Sie unter Datenquellen und Arbeitslasten.
- Weitere Informationen zu den Schritten für die Bereitstellung in Produktionsumgebungen finden Sie unter Voraussetzungen für die Bereitstellung der Cortex Framework Data Foundation.
