Konfigurasi deployment

Dokumen ini menjelaskan opsi konfigurasi deployment untuk Cortex Framework di seluruh area berikut:

Panduan ini juga menyediakan Panduan cara dengan petunjuk langkah demi langkah untuk kasus penggunaan dan skenario deployment umum.

File konfigurasi: config/config.yaml

File config/config.yaml — biasanya diinisialisasi dari template config/config.yaml.example — berfungsi sebagai konfigurasi utama untuk deployment Cortex Framework. File ini menentukan parameter penting, termasuk project eksekusi target Google Cloud , set data BigQuery sumber dan tujuan, serta spesifikasi Dataform seperti nama repositori dan ruang kerja.

Bagian berikut memberikan perincian mendetail tentang struktur config/config.yaml.

Lingkungan build

Project lingkungan build adalah project yang ditagih untuk tindakan build, seperti tugas BigQuery (membaca DD03L).

buildEnvironment:
  buildProjectId: YOUR_BUILD_PROJECT_ID

Tabel berikut menjelaskan parameter lingkungan build.

Parameter Arti Nilai default Deskripsi
buildEnvironment.buildProjectId Buat project ID YOUR_BUILD_PROJECT_ID Google Cloud Project ID tempat operasi build dijalankan.

Ringkasan bagian data

Bagian data: dari file konfigurasi menentukan sumber data, target, dan modul spesifik untuk fondasi data dan produk data Anda. Struktur umumnya adalah sebagai berikut:

data:
   # Geographic location for BigQuery datasets (for example: US, EU, us-central1)
   # For full list see: https://docs.cloud.google.com/cortex/docs/supported-locations
  bigQueryLocation: US
  # List of namespaces for data foundation and product modules.
  namespaces:
    - name: cortex
      path: cortex
  # List of source datasets.
  sources:
    - ...
  # List of target datasets.
  targets:
    - ...

  # Configuration for data foundation and product modules.
  modules:
    # List of foundation modules.
    foundation:
    - ... 
    # List of data product modules.
    product:
    - ...

Data: Lokasi BigQuery

Menentukan lokasi set data sumber dan target BigQuery.

Parameter Arti Nilai default Deskripsi
data.bigQueryLocation Lokasi BigQuery US Lokasi set data BigQuery (misalnya, US, us-central1, atau europe-west1).

Data: Namespace Cortex

Menentukan namespace Cortex Framework.

Parameter Arti Nilai default Deskripsi
data.namespaces.name Nama namespace - Nama namespace Cortex Framework. Misalnya, cortex.
data.namespaces.path Jalur namespace - Jalur namespace Cortex Framework untuk subdirektori yang digunakan dalam folder src dan config. Misalnya, cortex.

Data: Sumber BigQuery dan set data target

Daftar sumber menentukan set data BigQuery tempat data mentah dari sistem sumber telah direplikasi atau di-streaming ke dalamnya.

Target menentukan daftar set data BigQuery tempat set data yang diproses Dataform akan disimpan.

Setiap sumber dan target dirujuk dari modul menggunakan ID uniknya.

# Data source and target mapping
sources:
  - id: sap_raw
    projectId: YOUR_SOURCE_PROJECT_ID
    datasetId: cortex_sap_raw

targets:
  - id: sap_foundation
    projectId: YOUR_TARGET_PROJECT_ID
    datasetId: cortex7_sap_data_foundation

Tabel berikut menjelaskan parameter pemetaan target dan sumber data.

Parameter Arti Nilai default Deskripsi
data.sources.id Source ID (ID Sumber) - Menentukan 'id' untuk set data sumber yang akan diambil datanya. Misalnya, sap_raw.
data.sources.projectId ID Project Sumber YOUR_SOURCE_PROJECT_ID Merujuk ke Google Cloud Project ID dengan data sumber.
data.sources.datasetId ID Set Data BigQuery Sumber - Mereferensikan ID Set Data BigQuery dengan data sumber. Misalnya, cortex_sap_raw.
data.targets.id ID Target - Menentukan 'id' untuk set data target. Misalnya, sap_foundation.
data.targets.projectId Project ID Target YOUR_TARGET_PROJECT_ID Merujuk pada Google Cloud Project ID untuk data target.
data.targets.datasetId ID Set Data BigQuery Target - Mereferensikan ID Set Data BigQuery untuk data target. Misalnya, cortex7_sap_data_foundation.

Data: Modul

Modul menentukan struktur dan komponen pipeline data Dataform.

Data: Modul: Dasar

Bagian ini mengonfigurasi modul lapisan fondasi data yang memproses data dari lapisan mentah (aliran CDC) ke dalam representasi data sumber yang distandardisasi dan terbaru. Jika sumber menyediakan tampilan langsung pada data terbaru, atau transformasi tersebut dilakukan oleh konektor sistem sumber, modul dapat dikonfigurasi sebagai sumber fondasi data eksternal.

modules:
  # List of foundation modules.
  foundation:
    # Unique identifier for the module instance.
    - moduleId: erp
      # Type of the module (namespaced, for example, cortex.sap).
      type: cortex.sap
      # Reference to the source dataset ID.
      dataSourceId: sap_raw
      # Reference to the target dataset ID.
      dataTargetId: sap_foundation
      # Module-specific configuration settings.
      moduleSettings:
        # SAP version (for example, ecc, s4).
        sapVersion: ecc
        # SAP client number.
        mandt: "100"
      # Whether the module is enabled.
      # enabled: true
      # Whether the foundation is external (does not create target dataset).
      # external: false
      # Path to the table settings configuration file.
      # tableSettings: "custom_table_settings.yaml"

Tabel berikut menjelaskan parameter modul fondasi data untuk konfigurasi modules.foundation.

Parameter Arti Nilai default Deskripsi
moduleId ID Modul erp ID unik untuk instance modul transformasi fondasi data tertentu.
type Jenis Logika Modul cortex.sap Menentukan logika bisnis atau template yang diterapkan (misalnya, cortex.sap).
dataSourceId Link Sumber sap_raw Mereferensikan 'id' dari daftar data.sources untuk menarik data dari.
dataTargetId Link Target sap_foundation Merujuk 'id' dari daftar target untuk mengirim data ke.
moduleSettings.sapVersion Versi Sistem SAP ecc Hanya berlaku untuk sumber data SAP. Menentukan logika khusus sumber untuk sistem ecc (ECC) atau s4 (S/4HANA).
moduleSettings.mandt Klien SAP (Mandant) 100 Hanya berlaku untuk sumber data SAP. ID klien SAP 3 digit yang digunakan untuk memfilter baris data.
enabled Pengaktifan modul true Menentukan apakah modul diaktifkan.
external Yayasan eksternal false Menentukan apakah fondasinya eksternal (tidak membuat set data target).
tableSettings Setelan tabel data_modules/cortex/data_foundation/sap/mytable_settings.yaml Jalur ke file konfigurasi Setelan tabel kustom, relatif terhadap file konfigurasi ini.

Data: Modul: Produk

Modul produk data menentukan agregasi, penghitungan, dan gabungan yang diperlukan untuk mengubah data mentah menjadi insight yang memenuhi kasus penggunaan bisnis tertentu.

Konfigurasi produk data memungkinkan penetapan ID unik, definisi dependensi, serta referensi modul fondasi data dan set data target tempat hasil akan disimpan.

Konfigurasi mendetail dari produk data tertentu ditentukan dalam file yang dirujuk oleh kunci: tableSettings.

modules:
  # List of data product modules.
  product:
    # Unique identifier for the data product instance.
    - moduleId: sap_purchasing_organizational_structure
      # Type of the data product (namespaced).
      type: cortex.purchasing_organizational_structure
      # Map of module dependencies.
      dependsOn:
        sapModule: erp
      # Reference to the target dataset ID.
      dataTargetId: product_target
      # Whether the module is enabled.
      # enabled: true
      # Path to the table settings configuration file.
      # tableSettings: "custom_table_settings.yaml"

Tabel berikut menjelaskan parameter modul produk data untuk konfigurasi modules.product.

Parameter Arti Nilai default Deskripsi
moduleId ID Modul - ID unik untuk instance modul transformasi tertentu.
type Jenis Logika Modul - Menentukan logika bisnis atau template yang diterapkan, yang ditentukan di folder src/data_modules/{namespace}/data_product.
dataTargetId Link Target product_target Merujuk 'id' dari daftar target untuk mengirim data ke.
dependsOn Dependensi Upstream sapModule: erp Menentukan modul dasar yang harus ada sebelum modul produk dapat dibuat.
enabled Pengaktifan modul true Menentukan apakah modul diaktifkan.
tableSettings Setelan tabel src/data_modules/{namespace}/data_product/{product_name}/table_settings.default.yaml Jalur ke file konfigurasi Setelan tabel kustom, relatif terhadap file konfigurasi ini.

Lingkungan deployment

Cortex Framework menggunakan Dataform untuk mengatur transformasi SQL dalam BigQuery. Blok deployment: menentukan konfigurasi Dataform, yang bertanggung jawab atas eksekusi pipeline data, termasuk project repositori, lokasi, nama repositori, dan nama ruang kerja Dataform.

deployment:
  targets:
    - type: dataform
      enabled: true
      targetSettings:
        repositoryProjectId: YOUR_REPO_PROJECT_ID
        repositoryRegion: us-central1
        repositoryName: cortex-repository
        workspaceName: dev
        # serviceAccount: "example@example.com"

Tabel berikut menjelaskan parameter lokasi target deployment (deployment.targets:).

Parameter Arti Nilai Default Deskripsi
type Jenis deployment dataform Jenis target deployment.
enabled Diaktifkan/ Dinonaktifkan true Menentukan apakah target deployment tertentu diaktifkan atau dinonaktifkan.
targetSettings.repositoryProjectId Project ID repositori YOUR_REPO_PROJECT_ID ID Google Cloud Project tempat repositori Dataform dikelola.
targetSettings.repositoryRegion Region repositori us-central1 Region Google Cloud untuk repositori Dataform (misalnya, us-central1 atau europe-west1).
targetSettings.repositoryName Nama repositori cortex-repository Nama spesifik repositori Dataform.
targetSettings.workspaceName Nama Workspace dev Ruang kerja Dataform tertentu yang digunakan untuk siklus deployment.
targetSettings.serviceAccount Email akun layanan - Email akun layanan default untuk eksekusi repositori Dataform.

File konfigurasi: table_settings.yaml

Panduan ini menjelaskan cara menggunakan file table_settings.yaml untuk mengonfigurasi tabel produk data dan fondasi data di Google Cloud Cortex Framework.

File table_settings.yaml khusus modul data mengontrol cara tabel sumber mentah disesuaikan dan cara model data analitis diwujudkan dalam BigQuery. Dengan menggunakan file ini, Anda dapat mengonfigurasi tag, strategi materialisasi, dan fitur performa BigQuery lanjutan seperti partisi atau pengelompokan.

Resolusi dependensi dinamis

Secara default, Cortex Framework mengoptimalkan jejak deployment dan waktu eksekusi hanya dengan men-deploy dan mengompilasi tabel dasar yang diperlukan sebagai dependensi produk data yang diaktifkan. Jika tabel yang dikonfigurasi di table_settings.yaml tidak memiliki produk data hilir aktif yang bergantung padanya, tabel tersebut akan dikecualikan dari deployment.

Untuk mengganti pengoptimalan ini dan memaksa deployment tabel dasar, Anda dapat menyetel atribut deployAlways ke true (lihat Referensi parameter gaya fondasi data).

Di Google Cloud Cortex Framework, setiap modul (dasar atau produk) dapat diberi file setelan tabel tertentu dalam file konfigurasi deployment: config/config.yaml menggunakan properti tableSettings.

Jalur konfigurasi

  • Setelan Kustom (Direkomendasikan): Untuk menyesuaikan perilaku tabel, salin file default ke direktori konfigurasi Anda, ubah, dan rujuk jalur file tersebut di config/config.yaml. Jalur yang direkomendasikan adalah:
    • Modul dasar: config/namespace_path/data_foundation/foundation_module_id/table_settings.yaml (misalnya, config/cortex/data_foundation/sap/table_settings.yaml)
    • Modul produk: config/namespace_path/data_product/product_module_id/table_settings.yaml (misalnya, config/cortex/data_product/accounting_documents/table_settings.yaml)
  • Penggantian Default: Jika tableSettings tidak ada, framework akan otomatis kembali ke:
    • Modul dasar: definitions/data_foundation/namespace_path/table_settings.default.yaml
    • Modul produk: definitions/data_product/product_module_id/table_settings.default.yaml

Gaya konfigurasi

Ada dua gaya skema yang berbeda untuk table_settings.yaml, bergantung pada kategori modul:

  1. Gaya Data Foundation: Pemetaan berbasis daftar yang menentukan hubungan skema sumber ke target, penanganan CDC (Change Data Capture), dan tata letak BigQuery.
  2. Gaya Produk Data: Pemetaan berbasis peta (kamus) yang menentukan cara tampilan atau tabel analitik diwujudkan (misalnya, sebagai tampilan, tabel, atau tabel inkremental) dan dioptimalkan.

Kedua gaya mendukung tiga bagian tingkat root untuk memisahkan konfigurasi menurut versi sistem sumber (terutama digunakan untuk SAP Data Foundation dan produk yang bergantung pada SAP):

  • ecc: Setelan hanya diterapkan saat men-deploy sistem sumber SAP ECC.
  • s4: Setelan hanya diterapkan saat men-deploy sistem sumber SAP S/4HANA.
  • common: Setelan diterapkan terlepas dari versi SAP (digunakan untuk setelan yang disesuaikan atau universal).

Gaya fondasi data

Dalam modul Data Foundation, file table_settings.yaml disusun sebagai daftar item tabel di bawah kunci ecc, s4, dan common. Setiap item memetakan tabel sumber mentah ke tabel target yang disesuaikan dan mengonfigurasi setelan BigQuery-nya.

Contoh sintaksis YAML

common:
  - source:
      tableName: bkpf
      isCdc: true
    target:
      tableName: bkpf # Optional: defaults to source tableName if omitted
      tags: [sap, common, finance, hourly]
      clusterDetails:
        columns: [bukrs, gjahr]
      partitionDetails:
        column: budat
        partitionType: time
        timeGrain: day
    deployAlways: false

Referensi parameter

Parameter Jenis Wajib Default / Contoh Deskripsi
ecc | s4 | common string Tidak [] Versi atau dialek sistem sumber.
[].deployAlways boolean Tidak false Jika true, tabel selalu di-deploy dan dibuat, meskipun aturan pengoptimalan mungkin akan melewatinya. Lihat juga Penyelesaian masalah dependensi dinamis
Setelan sumber

Menentukan karakteristik tabel masuk mentah.

Parameter Jenis Wajib Default / Contoh Deskripsi
tableName string Ya bkpf Nama tabel sumber mentah di BigQuery (tidak peka huruf besar/kecil).
isCdc boolean Tidak true Menunjukkan apakah tabel sumber berisi log Pengambilan Data Perubahan (CDC).

true (default): Framework memproses log CDC (menggunakan stempel waktu data dan flag operasi) untuk merekonstruksi status terbaru yang sesuai.

false: Tabel diproses sebagai snapshot penuh.

Setelan target

Menentukan tata letak tabel yang disesuaikan output dalam set data target.

Parameter Jenis Wajib Default / Contoh Deskripsi
tableName string Tidak *(Sama seperti sumber)* Nama tabel yang disesuaikan target yang akan dibuat. Jika tidak ditentukan, framework akan menggunakan tableName sumber secara default.
tags array[string] Tidak [sap, finance] Daftar tag metadata yang dilampirkan ke tindakan yang disesuaikan di Dataform. String ini bersifat arbitrer dan tidak perlu didaftarkan sebelumnya atau ditentukan dalam konfigurasi lain; string ini dapat langsung digunakan untuk memfilter eksekusi pipeline (misalnya, menggunakan dataform run --tags ...).
clusterDetails map Tidak Opsional. Konfigurasi pengelompokan BigQuery. Lihat Detail pengelompokan.
partitionDetails map Tidak Opsional. Konfigurasi pembuatan partisi BigQuery. Lihat Detail partisi.

Gaya produk data

Dalam modul Produk Data, file table_settings.yaml disusun sebagai kamus (peta) di bawah kunci ecc, s4, dan common. Kunci kamus mewakili nama tabel atau tampilan analitis, dan nilai menentukan setelan perwujudan dan performanya.

Contoh sintaksis YAML

s4:
  customers:
    materializationType: incremental
    tags: [sap, dataproduct, masterdata]
    clusterDetails:
      columns: [mandt, ktokd]

Referensi parameter

Parameter Jenis Wajib Default / Contoh Deskripsi
ecc | s4 | common map Tidak {} Peta aset analisis target (tabel atau tampilan) ke konfigurasinya.
[table_name].materializationType string Tidak incremental Cara aset analitik dibuat di BigQuery.

Nilai yang Diizinkan:

  • incremental: Hanya memproses data baru atau yang diperbarui sejak proses terakhir. Direkomendasikan untuk set data transaksional besar guna menghemat biaya.
  • table: Membangun ulang tabel sepenuhnya dari awal pada setiap kali dijalankan.
  • view: Men-deploy aset sebagai tampilan SQL BigQuery (tabel virtual).
[table_name].tags array[string] Tidak [sap, dataproduct] Tag metadata yang dilampirkan ke aset analitik di Dataform. String ini bersifat arbitrer dan tidak perlu didaftarkan sebelumnya; string ini dapat langsung digunakan untuk menjalankan pipeline secara selektif.
[table_name].clusterDetails map Tidak Opsional. Konfigurasi pengelompokan BigQuery. Lihat Detail pengelompokan.
[table_name].partitionDetails map Tidak Opsional. Konfigurasi pembuatan partisi BigQuery. Lihat Detail partisi.

Konfigurasi BigQuery lanjutan

Kedua gaya ini memiliki struktur yang sama untuk mengoptimalkan penyimpanan BigQuery dan performa kueri melalui Pengelompokan dan Partisi.


Detail pengelompokan

Pengelompokan menempatkan data bersama berdasarkan nilai dalam kolom tertentu. BigQuery mengurutkan data dalam setiap blok penyimpanan menggunakan kolom ini, yang secara signifikan mempercepat kueri yang memfilter (WHERE) atau menggabungkan (JOIN) data di dalamnya.

clusterDetails:
  columns: [bukrs, gjahr]
Referensi parameter
Parameter Jenis Wajib Contoh Deskripsi
columns array[string] Ya [bukrs, gjahr] Daftar terurut yang berisi hingga empat nama kolom untuk mengelompokkan tabel.

Batasan: Kolom harus alfanumerik dan hanya berisi garis bawah. Urutan kolom dalam daftar menentukan hierarki pengurutan.


Detail partisi

Partisi membagi tabel besar menjadi segmen fisik yang lebih kecil berdasarkan nilai kolom tanggal, stempel waktu, atau bilangan bulat. Hal ini mencegah BigQuery memindai seluruh tabel saat kueri hanya meminta rentang hari, bulan, atau ID tertentu.

partitionDetails:
  column: budat
  partitionType: time
  timeGrain: day
Referensi parameter
Parameter Jenis Wajib Contoh Deskripsi
column string Ya budat Nama kolom yang digunakan untuk memartisi tabel. Hanya boleh berisi karakter alfanumerik dan garis bawah. Jenis kolom harus cocok dengan partitionType.
partitionType string Ya time Strategi partisi.

Nilai yang Diizinkan:

  • time: Membuat partisi menurut unit waktu (kolom Tanggal, Stempel Waktu, atau Tanggal Waktu).
  • DATE: Mempartisi secara eksplisit menurut kolom Tanggal.
  • integer: Mempartisi menurut rentang bilangan bulat.
timeGrain string Tidak day Wajib jika partitionType adalah time atau DATE. Menentukan perincian partisi waktu.

Nilai yang Diizinkan: hour, day, month, year (tidak peka huruf besar/kecil).

rangeStart integer Tidak 1 Wajib jika partitionType adalah integer. Nilai awal partisi pertama (inklusif).
rangeEnd integer Tidak 1000 Wajib jika partitionType adalah integer. Nilai akhir partisi terakhir (eksklusif).
rangeInterval integer Tidak 10 Wajib jika partitionType adalah integer. Lebar setiap interval partisi.

Contoh

Contoh berikut menunjukkan template konfigurasi untuk modul fondasi data dan produk data, yang menguraikan cara menyesuaikan tabel target, mengoptimalkan tata letak penyimpanan di BigQuery, dan mengonfigurasi jenis perwujudan.

1. Contoh setelan tabel fondasi data kustom

Contoh ini menunjukkan cara mengonfigurasi lapisan fondasi dengan tabel transaksional yang dikelompokkan dan dipartisi (seperti bseg dan ekbe) bersama dengan tabel data standar:

# ==============================================================================
# S/4HANA-Specific Tables
# ==============================================================================
s4:
  # ACDOCA is a massive table in S/4HANA; clustering is vital
  - source:
      tableName: acdoca
    target:
      tags: [sap, s4, finance, transactional, hourly]
      clusterDetails:
        columns: [rclnt, rbukrs, gjahr]

# ==============================================================================
# ECC-Specific Tables
# ==============================================================================
ecc:
  - source:
      tableName: faglflexa
    target:
      tags: [sap, ecc, finance, transactional, hourly]

# ==============================================================================
# Common Tables (ECC & S/4HANA)
# ==============================================================================
common:
  # Financial document header (partitioned by posting date)
  - source:
      tableName: bkpf
      isCdc: true
    target:
      tags: [sap, common, finance, hourly]
      clusterDetails:
        columns: [bukrs, gjahr]
      partitionDetails:
        column: budat
        partitionType: time
        timeGrain: day

  # Purchasing document items (partitioned by creation date)
  - source:
      tableName: ekpo
    target:
      tags: [sap, common, logistics, purchasing, hourly]
      clusterDetails:
        columns: [mandt, ebeln]
      partitionDetails:
        column: aedat
        partitionType: time
        timeGrain: month

  # Standard master data table (no partitioning/clustering needed)
  - source:
      tableName: lfa1
    target:
      tags: [sap, common, masterdata, vendor, daily]

2. Contoh setelan tabel produk data kustom

Contoh ini menunjukkan cara mengonfigurasi jenis materialisasi untuk produk data analitik hilir. Kami menetapkan sales_documents transaksional sebagai inkremental untuk mengoptimalkan performa build dan menghemat biaya, sementara tabel data non-transaksional seperti customers dibuat sebagai tabel standar:

# settings applied for both ECC and S/4HANA pipelines
common:
  # Transactional data product - incremental build
  sales_documents:
    materializationType: incremental
    tags: [sap, dataproduct, sales, transactional]
    clusterDetails:
      columns: [vkorg, vbeln]
    partitionDetails:
      column: audat
      partitionType: time
      timeGrain: day

  # Master data product - full table rebuild
  customers:
    materializationType: table
    tags: [sap, dataproduct, masterdata]
    clusterDetails:
      columns: [mandt, ktokd]

  # Aggregated reporting view - virtual view
  sales_performance_summary:
    materializationType: view
    tags: [sap, dataproduct, sales, reporting]

Panduan cara kerja

Bagian ini memberikan panduan langkah demi langkah untuk tugas konfigurasi umum dan skenario deployment kustom.

Menyesuaikan cakupan tabel dalam modul fondasi data

Untuk menambahkan atau menghapus tabel dalam modul fondasi data yang ada tanpa membuat modul baru atau menjalankan instance pipeline terpisah:

  • Salin konfigurasi table_settings.default.yaml default ke direktori konfigurasi ruang kerja Anda (misalnya, config/cortex/data_foundation/sap/table_settings.yaml).
  • Di file baru, tambahkan tabel kustom atau hapus tabel standar yang tidak digunakan di bawah kunci ecc, s4, atau common sesuai kebutuhan:
common:
  - source:
      tableName: custom_table_name
    target:
      tags: [custom_tag]
  • Perbarui config/config.yaml untuk mereferensikan jalur setelan tabel kustom Anda di properti tableSettings modul:
data:
  modules:
    foundation:
      - moduleId: erp
        type: cortex.sap
        # Link to the custom table settings file:
        tableSettings: config/cortex/data_foundation/sap/table_settings.yaml

Mengonfigurasi beberapa instance modul fondasi data

Untuk men-deploy dua atau lebih instance pipeline terpisah dari jenis modul yang sama (misalnya, mendukung beberapa instance SAP, untuk menyegmentasikan tabel, mengisolasi lingkungan, atau menargetkan set data target yang berbeda):

Sebelum memulai: * Pastikan tabel sumber ada di set data mentah sumber Anda. * Pastikan skema set data target dikonfigurasi. * Saat bekerja dengan modul dasar data SAP, pastikan tabel metadata DD03L berisi kolom dan informasi deskriptor untuk tabel kustom yang ingin Anda masukkan. Lihat persyaratan SAP ERP untuk mengetahui detailnya.

Petunjuk:

  • Dalam file config/config.yaml, tambahkan konfigurasi target di bagian data.targets untuk menentukan set data target bagi setiap instance pipeline:
data:
  targets:
    - id: data_foundation_core
      projectId: target_project_id
      datasetId: data_foundation_sap_core
    - id: data_foundation_custom
      projectId: target_project_id
      datasetId: data_foundation_sap_custom
  • Tentukan beberapa instance modul dalam daftar data.modules.foundation. Beri setiap instance moduleId unik, ID set data targetnya sendiri, dan konfigurasi tableSettings secara opsional:
data:
  modules:
    foundation:
      # Core SAP ERP foundation module instance
      - moduleId: erp_core
        type: cortex.sap
        dataSourceId: sap_raw
        dataTargetId: data_foundation_core
        tableSettings: "cortex-framework-core/src/data_modules/cortex/data_foundation/sap/table_settings.default.yaml"
      # Custom tables pipeline instance
      - moduleId: erp_custom
        type: cortex.sap
        dataSourceId: sap_raw
        dataTargetId: data_foundation_custom
        tableSettings: "config/cortex/data_foundation/sap/table_settings_custom.yaml"
  • Buat file config/cortex/data_foundation/sap/table_settings_custom.yaml yang menentukan cakupan kustom. E.g.:
common:
  - source:
      tableName: custom_sap_table_name
    target:
      tags: [sap, s4, hourly]
      clusterDetails:
        columns: [carrid, connid]
      partitionDetails:
        column: fldate
        partitionType: time
        timeGrain: day
  • Terapkan perubahan dengan menjalankan skrip deployment (uv run cortex-build-and-deploy), lalu jalankan tindakan Dataform seperti yang dijelaskan dalam Langkah-langkah pasca-deployment.