データ基盤の概要

Cortex Framework のデータ基盤レイヤは、ソースシステムの最新のレコードの標準化されたクリーンな表現として機能します。BigQuery 内で再利用可能な高忠実度のテーブルとビューを提供することで、未加工の複製されたエンタープライズ システムのレコードと価値の高い分析消費データ間のギャップを解消します。

データ基盤レイヤはデータ プロダクト レイヤにデータを供給しますが、完全に単独で使用することもでき、次の機能が含まれています。

  • 独立したデプロイ: BigQuery 内にクリーンで準拠した標準化された運用データストア(ODS)を確立しようとしている組織は、データ基盤モジュールのみをデプロイできます。データ基盤を使用するためにデータ プロダクト レイヤをデプロイする必要はありません。
  • 直接利用: スタンドアロンのデータ基盤テーブルは、Cortex Framework で提供されるデータ プロダクトに依存することなく、既存のエンタープライズ データ メッシュ アーキテクチャ、カスタムの下流 ETL パイプライン、サードパーティの BI ツール、カスタム ML モデル、独立した AI エージェントを直接強化できる、一元化された高度に最適化された信頼できる情報源として機能します。
  • 高い拡張性: フレームワークは、基盤モジュールのビルドとコンパイル中に、カスタム テーブルの列(「Z」または「Y」で始まる列など)を自動的に認識して追加します。追加のテーブル(カスタム テーブル、または基盤に含まれていない標準テーブル)で拡張することは、最小限の労力で可能です。

サポートされるデータソース

データ基盤レイヤは、SAP ERP システムから複製された未加工データをサポートしています。

詳細については、ソースシステムの統合のドキュメントをご覧ください。

中核となる機能

このレイヤの主な目的は、次の方法で元データを標準化、クレンジングし、高忠実度のテーブルに変換することです。

  • スキーマ シールド: SAP などの未加工のトランザクション スキーマは頻繁に変更され、ナビゲートが困難です。基盤レイヤは、安定した標準化されたターゲット構造を提供することで、ダウンストリーム コンシューマーを未加工のテーブルの複雑さと基盤となるスキーマの変更から保護します。
  • ビジネス対応のメタデータとアノテーション: ビジネス ユーザーが技術データモデルを理解できるように、データ基盤レイヤではアノテーション(src/data_modules/{namespace}/{system}/data_foundation/{foundation_name}/annotations/)の広範なライブラリを使用します。ビルドプロセス中に、フレームワークは BigQuery テーブル メタデータ内の人が読めるビジネスの説明で技術ソースシステムの列を拡充します(たとえば、bukrs などの SAP 列を Company Code に変換します)。この豊富なメタデータにより、ビジネス アナリスト、BI ダッシュボード、エンタープライズ AI エージェントがテーブルをすぐに使用できるようになります。
  • 動的スキーマ適応: 動的テーブル スキーマをサポートします。基盤となる SQL モデルを手動で変更することなく、生レイヤからカスタム フィールド(SAP の Z* フィールドや Y* フィールド、他のソースのカスタム属性など)を自動的に取り込んで伝播します。
  • データの自動準拠と重複除去: 生データが変更ログとして到着するか、完全なスナップショットとして到着するかに関係なく、基盤レイヤは重複除去、データ型のキャスト、状態の再構築を自動的に処理します。これにより、すべてのレコードの正確な現在の状態を常にクエリできます。

CDC ソースと非 CDC ソース

Cortex Framework でネイティブに管理されるパイプラインの場合、構成は個々のテーブルレベルで適用されます。未加工のソースデータが増分変更ログとして到着するか、テーブル全体のスナップショットとして到着するかに基づいて、各テーブルの処理方法を構成できます。たとえば、CDC ソース内の個々のテーブルを isCdc: false として宣言し、スナップショット テーブルとして扱うことができます。

  • CDC 対応のソース: 変更データ キャプチャ ログとして複製された未加工データ(BigQuery Connector for SAPBigQuery Toolkit for SAP などのツールからの挿入、更新、削除などのオペレーション フラグとタイムスタンプを含む)の場合、Cortex Framework は、未加工ログを増分処理して、永続化され、継続的に更新される「最新の状態」の準拠テーブルにする専用の Dataform パイプラインを生成します。
  • 非 CDC(完全スナップショット/バッチ)ソース: CDC 変更ログを提供しないソース、またはテーブルが完全な抽出として定期的に複製されるソースの場合、Cortex Framework は、CDC 状態再構築ロジックなしで完全なテーブル スナップショットとしてデータを処理するようにパイプラインに指示します(データ基盤の isCdc 構成属性、table-settings 構成を参照)。

外部データの基盤

Cortex Framework では、個々のテーブルレベルで CDC 処理をネイティブに管理できるだけでなく、基盤全体レベルで既存の外部データ基盤と統合できるアーキテクチャの柔軟性も備えています。基盤全体を外部として宣言できます。この場合、Cortex Framework は CDC 処理全体がすでに実行されていると想定します。

  • Cortex で管理されるデータ基盤: Cortex Framework は、Dataform 変換パイプラインを構築してオーケストレートし、未加工のランディング ゾーンから読み取って、ターゲット基盤データセットで準拠テーブルを具体化します。
  • 外部データ基盤: 企業がすでに外部レプリケーション ツール、サードパーティ パイプライン、または Cortex Framework の外部で CDC 再構築とデータ クリーニングを実行する事前確立されたセマンティック レイヤを使用している場合は、外部データ基盤として登録できます(データ モジュール基盤の設定external フラグを参照)。外部として構成されている場合、Cortex Framework は組み込みの基盤変換パイプラインの生成をバイパスし、代わりにダウンストリーム データ プロダクトを既存のターゲット データセットに直接関連付けます。

データ基盤の構成オプション

グローバル レベルとモジュール レベルの構成は config.yaml ファイルで管理されますが、粒度の細かいテーブルレベルのオプションは、ソース固有の table_settings.yaml ファイルで構成されます(SAP システムの場合は commoneccs4 の各セクションで構成されます。詳細については、SAP ERP のデプロイ、テーブル設定の構成スタイルをご覧ください)。このファイルを使用すると、SQL コードを記述または変更することなく、個々のテーブルのマテリアライズ オプション、デプロイの最適化、BigQuery のパフォーマンス機能を制御できます。

  • 動的依存関係解決: デフォルト(deployAlways: false)では、Cortex Framework は、有効なダウンストリーム データ プロダクトによって依存関係としてアクティブに必要とされるデータ基盤レイヤ テーブルのみをデプロイしてコンパイルすることで、デプロイ フットプリントと実行コストを最適化します。この最適化をオーバーライドして、基盤テーブルを常にデプロイするように強制するには(これは、データ基盤をスタンドアロンで実行する場合や、カスタムの下流ワークロードの場合に特に便利です)、deployAlways: true を設定します。
  • 取り込みモード: 増分 CDC 状態の再構築または完全なスナップショット処理を使用してテーブルを処理するかどうかを制御します。
  • ターゲットの名前付けとタグ: ターゲットの準拠テーブル名をカスタマイズし、任意のメタデータタグ([sap, finance, hourly] など)を Dataform アクションに直接関連付けて、パイプラインの選択的実行(dataform run --tags ...)を有効にします。
  • クラスタリングの詳細: 最大 4 つの英数字列(bukrsgjahr など)でストレージ ブロックを並べ替えて、関連するデータを同じ場所に配置します。クラスタリングにより、これらの列でフィルタリングまたは結合を行うクエリのクエリ パフォーマンスが大幅に向上し、データ スキャン費用が削減されます。
  • パーティショニングの詳細: 大規模な履歴テーブルを時間(time または DATEtimeGrain: day | month | year)または整数範囲(integer)でセグメント化します。パーティショニングにより、クエリで特定の日付範囲または ID 間隔がリクエストされた場合に、完全なテーブル スキャンが回避されます。

データ基盤の拡張

追加のテーブルを使用してデータ基盤レイヤを拡張するには、次の複数の方法があります。

使用可能なデータ基盤テーブル

次の表に、Cortex Framework のデータ基盤レイヤに含まれるテーブルと関連する詳細を示します。

部門 SAP モジュール テーブル名 説明 サポート対象のソース Dataform タグ パーティションの詳細 クラスタの詳細
SAP ECC SAP S/4HANA
金融 CO bpge 予算値(全体) finance, sap_co, daily
bpja 予算値(年間) finance, sap_co, daily
bpvg Document Line Items finance, sap_co, daily
cepc Profit Center Master Data Table finance, sap_co, daily
cepct プロフィット センターのマスターデータのテキスト finance, sap_co, daily
ckmlcr Material Ledger: Period Totals Records Values finance, sap_co, daily
ckmlhd 品目元帳: ヘッダー レコード finance, sap_co, daily
cobk 管理オブジェクト: ドキュメント ヘッダー 財務、管理、毎日
coep 管理対象オブジェクト: 明細項目(期間別) 財務、管理、毎日
cooi コミットメントの管理: 明細項目 財務、管理、毎日
cosp 管理対象: 外部転記の費用合計 財務、管理、毎日
coss 管理対象: 内部転記の費用合計 財務、管理、毎日
cskb 費用要素(管理領域依存データ) finance, sap_co, daily
csks コストセンター マスター レコード finance, sap_co, daily
cskt コストセンターのテキスト finance, sap_co, daily
csku 費用要素のテキスト finance, sap_co, daily
jest 個々のオブジェクトのステータス finance, sap_co, daily
sethanahier0101 費用センター グループの階層表 finance、sap_co、monthly
sethanahier0106 収益センター グループの階層テーブル finance、sap_co、monthly
setheader ヘッダーとディレクトリを設定する finance、sap_co、monthly
setheadert セットの簡単な説明 finance、sap_co、monthly
setleaf セット内の値 finance、sap_co、monthly
setnode セット内の下位レベルのセット finance、sap_co、monthly
tj02t システム ステータス テキスト finance, sap_co, yearly
tka01 管理領域 finance, sap_co, yearly
tka02 管理領域の割り当て finance, sap_co, yearly
FI acdoca Universal Journal Entry Line Items finance、sap_fi、hourly rclnt、rbukrs
acdocu グループのジャーナル エントリ finance、sap_fi、hourly
adr6 メールアドレス(ビジネス アドレス サービス) finance、sap_fi、daily
adrc 住所(ビジネス アドレス サービス) finance、sap_fi、daily
adrct 住所テキスト(ビジネス住所サービス) finance、sap_fi、daily
anek Asset Posting Document Header finance、sap_fi、daily
anep アセットの広告申込情報 finance、sap_fi、daily
ankt アセット クラス: 説明 finance、sap_fi、hourly
anla アセット マスター レコード セグメント finance、sap_fi、hourly
anlb 減価償却の条件 finance、sap_fi、hourly
anlc Asset Value Record: Year(アセット値レコード: 年) finance、sap_fi、yearly
anlh メインアセット番号 finance、sap_fi、hourly
anlz 時間依存型アセット配分 finance、sap_fi、hourly
atras 米国債利回り表 finance、sap_fi、daily
bkpf 会計ドキュメントのヘッダー finance, sap_fi, hourly budat(時間/日) bukrs、gjahr
bsad ビューの生成されたテーブル finance、sap_fi、hourly
bsak ビューの生成されたテーブル finance、sap_fi、hourly
bseg Accounting Document Segment(会計ドキュメント セグメント) finance、sap_fi、hourly mandt、bukrs、gjahr
bsid ビューの生成されたテーブル finance, sap_fi, hourly
bsik ビューの生成されたテーブル finance、sap_fi、hourly
but000 Bp: 一般データ I finance、sap_fi、daily
but020 Bp: アドレス finance、sap_fi、daily
but0bk Bp: 銀行の詳細 finance、sap_fi、daily
faat_doc_it 固定資産管理: 統計明細 finance、sap_fi、daily
faat_plan_values アセット値: 計画値と再評価 finance、sap_fi、daily
faat_ydda アセット値: 年に依存するデータ finance、sap_fi、yearly
fagl_011pc Fin Statement Version: Financial Statement Version の項目 finance、sap_fi、monthly
fagl_011qt 財務諸表の構造: 財務諸表項目のテキスト finance、sap_fi、monthly
fagl_011zc 財務諸表のバージョン: Fs 項目から G/L 科目への割り当て finance、sap_fi、monthly
faglflexa 総勘定元帳: 実際の明細項目 finance、sap_fi、hourly
fincs_ref_vers_r 参照バージョン関係 finance、sap_fi、yearly
finsc_ld_cmp ユニバーサル仕訳帳の会社コード依存設定 finance、sap_fi、daily
finsc_ledger Universal Journal Entry Ledger finance、sap_fi、yearly
finsc_ledger_rep Unified Journal Entry Ledger(レポート用の補助テーブル) finance、sap_fi、daily
finsc_ledger_t Universal Journal Entry Ledger Text finance、sap_fi、yearly
ska1 G/L Account Master(勘定科目) finance、sap_fi、daily
skat G/L Account Master Record(勘定科目: 説明) finance、sap_fi、daily
t001 [Company Codes](会社コード) finance、sap_fi、once
t002 言語キー(コンポーネント Bc-I18) finance、sap_fi、once
t002t 言語のキーテキスト finance、sap_fi、once
t005 finance、sap_fi、yearly
t005k Communication: Country Dialling Code(コミュニケーション: 国番号) 構成、年単位
t005s 税金: リージョン(州)キー 構成、年単位
t005t 国名 構成、年単位
t005u 税金: 地域キー: テキスト 構成、年単位
t009 会計年度バリアント 構成を 1 回だけ
t009b 会計年度バリアント期間 構成を 1 回だけ
t090nat 減価償却キーのテキスト finance、sap_fi、hourly
t093b 償却領域の会社コード設定 finance、sap_fi、hourly
t093c 固定資産管理の会社コード設定 finance, sap_fi, hourly
t093t 減価償却領域のテキスト finance、sap_fi、hourly
t095t 勘定科目の決定名 finance、sap_fi、hourly
t098t 手動評価の理由の説明 finance、sap_fi、hourly
t881 Ledger Master finance、sap_fi、once
t881t Fi-Sl Ledger Text finance、sap_fi、once
tabw アセット取引の種類 finance、sap_fi、daily
tabwh アセット取引タイプのグループ テキスト finance、sap_fi、daily
tabwt アセット取引タイプのテキスト finance、sap_fi、daily
tcurc 通貨コード finance、sap_fi、once
tcurf コンバージョンの要因 finance、sap_fi、once
tcurr 為替レート finance、sap_fi、daily
tcurt 通貨コード名 finance、sap_fi、daily
tcurx 通貨の小数点以下の桁数 finance、sap_fi、daily
tf200 統合バージョン finance、sap_fi、yearly
tf201 Versions: Name finance、sap_fi、yearly
tvarvc バリエーション変数の表(クライアント固有) finance、sap_fi、daily
vwpanla Asset Master for Securities finance、sap_fi、daily
FSCM fdsb Cash Management and Forecast Summary レコード finance、sap_fscm、hourly
fqm_flow オペレーションによる 1 つの公開 finance、sap_fscm、hourly
PS prhi 作業分解図、エッジ(階層ポインタ) finance, sap_ps, hourly
proj プロジェクトの定義 finance, sap_ps, hourly
prps WBS 要素のマスターデータ finance, sap_ps, hourly
prte プロジェクト アイテムのデータをスケジュールする finance, sap_ps, hourly
rpsco プロジェクト情報データベース: 費用、収益、財務 finance, sap_ps, daily
TRM vtbfha 金融取引(Vtbfha) finance、sap_trm、hourly
vtbfhapo トランザクション フロー(Vtbfhapo) finance、sap_trm、hourly
vtbfhazu Transaction Activity(Vtbfhazu) finance、sap_trm、hourly
vtvbar Npvs of Otc Transactions(Vtvbar) finance、sap_trm、hourly
HR HCM hrrp_directory 階層ディレクトリ hr, sap_hcm, monthly
hrrp_node 階層ノード hr, sap_hcm, monthly
hrrp_nodet 階層ノードのテキスト hr, sap_hcm, monthly
IT BASIS dd01l ドメイン it, sap_basis, once
dd03l テーブル フィールド it、sap_basis、1 回
dd04t R/3 Dd: データ要素のテキスト it、sap_basis、1 回
dd07l ドメインの値 it、sap_basis、1 回
dd07t Dd: ドメインの固定値のテキスト(言語依存) it、sap_basis、1 回
dd08l 関係の定義 it、sap_basis、1 回
製造 PP afko Order Header Data PP Orders 製造、sap_pp、1 時間ごと
afpo Order Item 製造、sap_pp、1 時間ごと
aufk 注文マスターデータ 製造、sap_pp、1 時間ごと
mast Material to Bom Link 製造、sap_pp、月次
stas Boms - Item Selection 製造、sap_pp、月次
stko Bom ヘッダー 製造、sap_pp、月次
stpo Bom アイテム 製造、sap_pp、月次
セールス SD kna1 顧客マスターの一般データ sales、sap_sd、daily
konv 条件(トランザクション データ) sales、sap_sd、daily kdatu(時間/日) stunr
prcd_elements 料金要素 sales、sap_sd、hourly
t179 資料: 商品階層 sales、sap_sd、once
t179t Materials: Product Hierarchies: Texts sales、sap_sd、once
tspa 組織部門: 販売部門 sales, sap_sd, yearly
tspat 組織部門: 販売部門: テキスト sales, sap_sd, yearly
tvfst Billing : Blocking Reason Texts(請求: ブロックの理由のテキスト) sales, sap_sd, yearly
tvko 組織部門: 販売組織 sales, sap_sd, yearly
tvkot 組織部門: 販売組織: テキスト sales, sap_sd, yearly
tvlst Deliveries: Blocking Reasons/Scope: Texts(納品: ブロックの理由 / 範囲: テキスト) sales, sap_sd, yearly
tvtw 組織部門: 配信チャネル sales, sap_sd, yearly
tvtwt 組織部門: 配布チャネル: テキスト sales, sap_sd, yearly
vbak 販売伝票: ヘッダー データ sales、sap_sd、hourly audat(時間/日) vkorg
vbap 販売伝票: 明細データ sales、sap_sd、hourly werks、lgort
vbep 販売伝票: 納入日程行データ sales、sap_sd、hourly
vbfa 販売伝票のフロー sales、sap_sd、hourly
vbpa 販売伝票: パートナー sales、sap_sd、hourly
vbrk 請求書: ヘッダー データ sales、sap_sd、hourly
vbrp 請求書: 項目データ sales、sap_sd、hourly
vbuk 販売伝票: ヘッダーのステータスと管理データ sales、sap_sd、hourly
vbup 販売伝票: 品目のステータス sales、sap_sd、hourly
wb2_d_bvdetail Ccs: Detailed Statement for Settlement(Ccs: 解決に関する詳細な声明) sales、sap_sd、daily
wb2_d_settl_cal リベート: 決済スケジュール sales、sap_sd、daily
wbrk 代理店和解文書: ヘッダー sales、sap_sd、hourly
wbrp Agency Settlement Document: Item sales、sap_sd、hourly
wcocoh 条件契約: ヘッダー sales、sap_sd、daily
wcocoi 条件契約: アイテム sales、sap_sd、daily
サプライ チェーン LE likp SD ドキュメント: 納入伝票ヘッダー データ supply_chain、sap_le、hourly erdat(時間/月) vkorg
lips SD ドキュメント: 納入: 明細データ supply_chain、sap_le、hourly erdat(時間/月)
MM ekbe 購買伝票履歴(EKBE) supply_chain、sap_mm、hourly budat(時間/日) mandt, vgabe, ebeln, bwart
ekes ベンダーの確認(Ekes) supply_chain、sap_mm、hourly
eket Scheduling Agreement Schedule Lines(スケジューリング契約のスケジュール行) supply_chain、sap_mm、hourly eindt(時間/日) mandt、ebeln
ekkn 購買伝票での勘定設定(Ekkn) supply_chain、sap_mm、hourly
ekko 購入ドキュメントのヘッダー supply_chain、sap_mm、hourly bedat(時間/日) mandt、ebeln
ekpo 購入ドキュメントの項目 supply_chain、sap_mm、hourly aedat(時間/日) mandt、ebeln
lfa1 ベンダー マスター(全般セクション) supply_chain, sap_mm, daily
makt 品目の説明 supply_chain, sap_mm, daily spras
mara General Material Data supply_chain, sap_mm, daily
marc 品目のプラント データ supply_chain、sap_mm、hourly
mard マテリアルの保管場所データ supply_chain、sap_mm、hourly
matdoc Material Documents supply_chain、sap_mm、hourly
mbew マテリアル バリュエーション supply_chain, sap_mm, daily
mbewh Material Valuation: History(マテリアル バリュー: 履歴) supply_chain, sap_mm, daily
mch1 バッチ(バッチ管理がクロスプラントの場合) supply_chain, sap_mm, daily
mcha バッチ supply_chain, sap_mm, daily
mchb Batch Stocks supply_chain, sap_mm, daily
mkol ベンダーからの特別在庫 supply_chain, sap_mm, weekly
mseg ドキュメント セグメント: Material supply_chain、sap_mm、hourly
msfd ベンダーの販売注文在庫 supply_chain, sap_mm, weekly
mska Sales Order Stock supply_chain, sap_mm, weekly
msku お客様との特別在庫 supply_chain, sap_mm, weekly
mslb ベンダーとの特別在庫 supply_chain, sap_mm, weekly
rbco Document Item、Incoming Invoice、Account Assignment supply_chain、sap_mm、hourly
rbkp ドキュメントのヘッダー: 請求書の受領 supply_chain、sap_mm、hourly
rseg ドキュメント アイテム: 入庫請求書 supply_chain、sap_mm、hourly
t001k 評価エリア supply_chain, sap_mm, once
t001l 保存場所 supply_chain, sap_mm, once
t001w 植物/枝 supply_chain, sap_mm, once
t006 測定単位 supply_chain, sap_mm, yearly
t006a 言語依存ユニットに Internal を割り当てる 構成を 1 回だけ
t006t 寸法テキスト 構成を 1 回だけ
t023 マテリアル グループ supply_chain, sap_mm, once
t023t マテリアル グループの説明 supply_chain, sap_mm, once
t024 購買グループ supply_chain、sap_mm、1 回
t024e [Purchasing Organizations](購入組織) supply_chain, sap_mm, once
t134 マテリアル タイプ supply_chain, sap_mm, once
t134t マテリアル タイプの説明 supply_chain, sap_mm, once
t148t Special Stock Descriptions supply_chain, sap_mm, once
t156 移動タイプ supply_chain, sap_mm, once
t156t Movement Type Text 構成を 1 回だけ
t157e テキスト テーブル: 移動の理由 構成を 1 回だけ
t161 購入ドキュメントのタイプ(T161) supply_chain, sap_mm, once
t161t 購入ドキュメントのタイプのテキスト supply_chain, sap_mm, once