Oracle EBS との統合
Oracle EBS(E-Business Suite)との統合では、Incortaを使用したデータ の取り込みにより、Order to Cash データモデルがサポートされます。Incorta は、ホスト型インスタンスまたはプライベート インスタンスを使用して、Oracle から BigQuery CDC データセットにデータを取り込み、CDC 処理を行います。その後、Cortex Framework は、Managed Service for Apache Airflow を使用して BigQuery ジョブをオーケストレートし、CDC データを変換してレポート アセットに具体化します。
次の図は、Oracle EBS の運用ワークロードを介して Oracle EBS データを利用できるようにする方法を示しています。

デプロイ構成
次の表に、Oracle EBS ワークロードを構成するためのパラメータを示します。
config.json ファイルは、Oracle EBS を含む任意のデータソースからデータを転送するために必要な設定を構成します。このファイルには、Oracle EBS
の次のパラメータが含まれています。
| パラメータ | 意味 | デフォルト値 | 説明 | 一致する Oracle ソース フィールド |
|---|---|---|---|---|
OracleEBS.itemCategorySetIDs |
商品アイテムのカテゴリ セット | [1100000425] |
商品アイテムの分類に使用するセットのリスト。 | MTL_ITEM_CATEGORIES.CATEGORY_SET_ID |
OracleEBS.currencyConversionType |
通貨換算タイプ | "Corporate" |
集計テーブルで使用する通貨換算のタイプ。 | GL_DAILY_RATES.CONVERSION_TYPE |
OracleEBS.currencyConversionTargets |
通貨換算のターゲット | ["USD"] |
集計テーブルに含めるターゲット通貨のリスト。 | GL_DAILY_RATES.TO_CURRENCY |
OracleEBS.languages |
言語 | ["US"] |
商品アイテムの説明などのフィールドの翻訳を表示する言語のリスト。 | FND_LANGUAGES.LANGUAGE_CODE |
OracleEBS.datasets.cdc |
CDC データセット | - | CDC データセット。 | - |
OracleEBS.datasets.reporting |
レポート データセット | "REPORTING_OracleEBS" |
レポート データセット。 | - |
データの取り込み
Oracle から BigQuery にデータを取り込む方法については、Incorta の担当者にお問い合わせください。また、 Oracle EBS for Google Cortex Setup Guide をご覧ください。
推奨構成
Incorta では、さまざまな間隔でデータ取り込みジョブをスケジュールできますが、最適なパフォーマンスとデータの更新速度を維持するため、Incorta データ取り込みジョブを毎日実行するようにスケジュールすることをおすすめします。ユースケースで削除されたデータを処理する必要がある場合は、 Incorta ドキュメントの ソースの削除の処理の手順に沿って、それらを有効にしてください。
レポートの構成
このセクションでは、環境に必要なレポートの構成について説明します。
Managed Airflow Airflow 接続
BigQuery オペレータがレポート変換を実行するために使用する oracleebs_reporting_bq という名前の BigQuery
Airflow 接続を作成します。詳細については、
Airflow 接続を管理するのドキュメントをご覧ください。
マテリアライザーの設定
具体化の設定は
src/OracleEBS/config/reporting_settings.yamlにあります。
デフォルトでは、ディメンション、
ヘッダー、および
集計テーブルは
毎日具体化されます。レポートレイヤ
テーブルも日付でパーティション分割されます。
パーティション分割とクラスタリングは、必要に応じてカスタマイズできます。詳細については、
クラスタの設定
とテーブルパーティショニングをご覧ください。
データモデル
このセクションでは、Oracle EBS Order to Cash 論理データモデルについて説明します。各サブセクションでは、次の Oracle EBS エンティティ リレーション図(ERD)について説明します。
ベース ファクトビュー
これらは ERD の青いオブジェクトで、一部の列名のエイリアス以外の変換がない CDC テーブルのビューです。
ディメンション テーブル
これらは ERD の紫色のオブジェクトで、レポート テーブルで使用される関連するディメンション属性が含まれています。デフォルトでは、これらのディメンションは デプロイ構成 パラメータ値に基づいてフィルタされます。この統合では、日付属性に Cortex K9 グレゴリオ暦ディメンションも使用します。これはデフォルトでデプロイされます。
ヘッダー テーブル
これらは ERD の緑色のオブジェクトで、ヘッダーレベルで注文や請求書などの事業体を記述する結合されたファクトとディメンションが含まれています。ヘッダー
テーブルは、各エンティティに対応するプライマリ イベントの日付(ORDERED_DATE や INVOICE_DATE など)でパーティション分割されます。
ネストされた繰り返し行
SalesOrders テーブルと SalesInvoices テーブルには、
ネストされた繰り返しフィールド
named LINES が含まれています。これらのフィールドは、さまざまな注文明細行と請求書明細行を関連するヘッダーの下にグループ化します。これらのネストされたフィールドをクエリするには、提供されているサンプルスクリプト(src/OracleEBS/src/reporting/ddls/samples/)に示すように、UNNEST
演算子を使用して要素を行にフラット化します。
ネストされた繰り返し属性
一部のテーブルには、ITEM_CATEGORIES や ITEM_DESCRIPTIONS
など、追加のネストされた繰り返しフィールドが含まれています。同じ属性の複数の値がエンティティに適用される場合があります。これらの繰り返し属性をネスト解除する場合は、指標の過剰なカウントを避けるために、単一の属性値にフィルタしてください。
適用済みの未払金
SalesAppliedReceivables は、エンティティが請求書自体を参照することも、現金領収書付きの請求書を参照することもできるという点で、一意のテーブルです。そのため、ネストされた(繰り返しではない)INVOICE フィールドと CASH_RECEIPT フィールドがあります。CASH_RECEIPT フィールドは、APPLICATION_TYPE = 'CASH' の場合にのみ入力されます。
集計テーブル
これらは ERD の赤いオブジェクトで、ヘッダー テーブルから日次指標まで集計されます。これらの各テーブルも、プライマリ
イベントの日付でパーティション分割されます。集計テーブルには、加算指標(カウント、合計など)のみが含まれ、平均や比率などの指標は含まれません。つまり、ユーザーは、月次など、より高い粒度で集計する際に適切に導出できるように、非加算指標を導出する必要があります。
src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql
などのサンプル スクリプトをご覧ください。
通貨換算額
各集計テーブルは、CurrencyRateMD ディメンションを使用して、デプロイ構成で指定された各ターゲット通貨に換算された通貨指標を含むネストされた
繰り返しフィールド AMOUNTS を作成します。これらの指標を使用する場合は、過剰なカウントを避けるために、レポート作成のために単一のターゲット通貨にフィルタするか、ターゲット通貨でグループ化してください。これは、src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql
などのサンプル スクリプトでも確認できます。
ネストされた行の属性と指標
SalesOrdersDailyAgg テーブルには、行レベルの属性と指標(ITEM_CATEGORY_NAME や
AMOUNTS など)とヘッダーレベルの属性と指標(BILL_TO_CUSTOMER_NAME や NUM_ORDERS
など)を区別するために、LINES という名前のネストされた繰り返しフィールドが含まれています。過剰なカウントを避けるため、これらの粒度を個別にクエリしてください。
請求書にもヘッダーと行の概念がありますが、テーブル SalesInvoicesDailyAgg には行レベルの指標のみが含まれているため、SalesOrdersDailyAgg
と同じ構造にはなりません。
次のステップ
- 他のデータソースとワークロードの詳細については、 データソースとワークロードをご覧ください。
- 本番環境へのデプロイの手順の詳細については、 Cortex Framework Data Foundation のデプロイの前提条件をご覧ください。
