步驟 5:設定部署作業

本頁說明部署 Cortex Framework 資料基礎的第五個步驟,這是 Cortex Framework 的核心。在這個步驟中,您會修改 Cortex Framework Data Foundation 存放區中的設定檔,以符合您的需求。

設定檔

部署作業的行為是由 Cortex Framework Data Foundation 中的設定檔 config.json 控制。這個檔案包含全域設定,以及各項工作負載的特定設定。按照下列步驟,視需要編輯 config.json 檔案:

  1. 從 Cloud Shell 開啟 config.json 檔案。
  2. 根據下列參數編輯 config.json 檔案:

    參數 意義 預設值 說明
    testData 部署測試資料 true 來源資料集所在的專案,以及建構作業的執行位置。注意:只有在原始資料集空白且沒有資料表時,系統才會執行測試資料部署作業
    deploySAP 部署 SAP true 執行 SAP 工作負載 (ECC 或 S/4 HANA) 的部署作業。
    deploySFDC 部署 Salesforce true 執行 Salesforce 工作負載的部署作業。
    deployMarketing 部署行銷活動 true 為行銷來源 (Google Ads、CM360 和 TikTok) 執行部署作業。
    deployOracleEBS 部署 Oracle EBS true 執行 Oracle EBS 工作負載的部署作業。
    deployDataMesh 部署資料網格 true 執行 Data Mesh 的部署作業。 詳情請參閱「資料網格使用者指南」。
    enableTaskDependencies 依附於工作的 DAG false 啟用工作相關 DAG,系統就會在單一 DAG 中,依據依附元件順序執行支援的 SQL 資料表。詳情請參閱「以工作為依附元件的 DAG」。
    turboMode 渦輪模式部署。 true 在同一個 Cloud Build 程序中,以步驟形式執行所有檢視區塊建構作業,並行執行可加快部署速度。如果設為 false,每個報表檢視畫面都會在自己的連續建構步驟中產生。建議您只在測試資料或解決報表欄與來源資料不符的問題後,才將此值設為 true
    projectIdSource 來源專案 ID - 來源資料集所在的專案,以及建構作業的執行位置。
    projectIdTarget 目標專案 ID - 使用者面向資料集的目標專案。
    targetBucket 儲存產生的 DAG 指令碼的目標 Bucket - 先前建立的 Bucket,用於產生 DAG (和 Dataflow 臨時檔案)。請勿使用實際的 Airflow 值區。
    location 地點或區域 "US" BigQuery 資料集和 Cloud Storage 值區所在位置。

    請參閱「BigQuery 資料集位置」一節列出的限制。

    testDataProject 測試控管工具的來源 kittycorn-public 示範部署的測試資料來源。當 testDatatrue 時適用。

    除非您有自己的測試架構,否則請勿變更這個值。

    k9.datasets.processing K9 資料集 - 處理中 "K9_PROCESSING" 執行 K9 設定檔中定義的跨工作負載範本 (例如日期維度)。下游工作負載通常需要這些範本。
    k9.datasets.reporting K9 資料集 - 報表 "K9_REPORTING" 執行 K9 設定檔中定義的跨工作負載範本和外部資料來源 (例如:天氣)。預設為註解。
    DataMesh.deployDescriptions 資料網格 - 資產說明 true 部署 BigQuery 資產結構定義說明。
    DataMesh.deployLakes 資料網格 - 湖泊和區域 false 部署 Dataplex Universal Catalog 湖泊和區域,依處理層整理資料表,啟用前須先完成設定。
    DataMesh.deployCatalog 資料網格 - 目錄標記和範本 false 部署 Data Catalog 標記,允許 BigQuery 資產或欄位使用自訂中繼資料,啟用前需要設定。
    DataMesh.deployACLs 資料網格 - 存取權控管 false 在 BigQuery 資產上部署資產、資料列或資料欄層級的存取權控管,啟用前需要先進行設定。
  3. 視需要設定所需的工作負載。如果工作負載的部署參數 (例如 deploySAPdeployMarketing) 設為 False,就不需要設定這些參數。詳情請參閱「步驟 3:決定整合機制」。

如要進一步自訂部署作業,請參閱下列選用步驟

報表檢視畫面的效能最佳化

您可以建立報表構件做為檢視區塊,或透過 DAG 定期重新整理資料表。一方面,檢視區塊會在每次執行查詢時計算資料,因此結果一律是最新狀態。另一方面,資料表只會執行一次計算,且可多次查詢結果,不會產生更高的運算成本,執行時間也更快。每位顧客可根據自身需求建立專屬設定。

系統會將具體化結果更新至資料表。您可以在這些資料表中新增分區叢集,進一步微調資料表。

每個工作負載的設定檔都位於 Cortex Framework Data Foundation 存放區的下列路徑中:

資料來源 設定檔
Operational - SAP src/SAP/SAP_REPORTING/reporting_settings_ecc.yaml
Operational - Salesforce Sales Cloud src/SFDC/config/reporting_settings.yaml
Operational - Oracle EBS src/oracleEBS/config/reporting_settings.yaml
行銷 - Google Ads src/marketing/src/GoogleAds/config/reporting_settings.yaml
行銷 - CM360 src/marketing/src/CM360/config/reporting_settings.yaml
行銷 - Meta src/marketing/src/Meta/config/reporting_settings.yaml
行銷 - Salesforce Marketing Cloud src/marketing/src/SFMC/config/reporting_settings.yaml
行銷 - TikTok src/marketing/src/TikTok/config/reporting_settings.yaml
行銷 - YouTube (搭配 DV360) src/marketing/src/DV360/config/reporting_settings.yaml
行銷 - Google Analytics 4 src/marketing/src/GA4/config/reporting_settings.yaml
行銷 - 跨媒體和產品連結洞察 src/marketing/src/CrossMedia/config/reporting_settings.yaml

自訂報表設定檔

reporting_settings 檔案會決定如何為報表資料集建立 BigQuery 物件 (資料表或檢視區塊)。使用下列參數說明自訂檔案。請注意,這個檔案包含兩個部分:

  1. bq_independent_objects:所有可獨立建立的 BigQuery 物件,不需任何其他依附元件。啟用 Turbo mode 後,系統會在部署期間平行建立這些 BigQuery 物件,加快部署程序。
  2. bq_dependent_objects:所有 BigQuery 物件,由於依附於其他 BigQuery 物件,因此必須依特定順序建立。Turbo mode 不適用於本節。

部署工具會先建立 bq_independent_objects 中列出的所有 BigQuery 物件,然後建立 bq_dependent_objects 中列出的所有物件。為每個物件定義下列屬性:

  1. sql_file:建立指定物件的 SQL 檔案名稱。
  2. type:BigQuery 物件類型。可能的值包括:
    • view:如果希望物件是 BigQuery 檢視區塊。
    • table:如果想讓物件成為 BigQuery 資料表。
    • script:用於建立其他類型的物件 (例如 BigQuery 函式和儲存程序)。
  3. 如果 type 設為 table,可以定義下列選用屬性:
    • load_frequency:Composer DAG 的執行頻率,用於重新整理這個資料表。如要瞭解可能的值,請參閱 Airflow 說明文件
    • partition_details:資料表的分區方式。這個值為選填。詳情請參閱「資料表分區」一節。
    • cluster_details:資料表叢集方式。這個值為選填。詳情請參閱「叢集設定」一節。
」一文。

資料表分區

您可以使用特定設定檔,透過自訂叢集和分區選項設定具體化資料表。這項功能可大幅提升大型資料集的查詢效能。這個選項僅適用於 SAP cdc_settings.yaml 和所有 reporting_settings.yaml 檔案。

如要啟用資料表分區,請指定下列partition_details

- base_table: vbap
  load_frequency: "@daily"
  partition_details: {
    column: "erdat", partition_type: "time", time_grain: "day" }

使用下列參數控管特定資料表的分區詳細資料:

屬性 說明
column 用來將 CDC 資料表分區的資料欄。 資料欄名稱。
partition_type 分割區類型。 "time",用於時間分區。詳情請參閱時間戳記分區資料表"integer_range",適用於以整數為基礎的分區。詳情請參閱整數範圍說明文件
time_grain 用於分區的時間部分。partition_type = "time" 時為必填。 "hour""day""month""year"
integer_range_bucket 值區範圍 partition_type = "integer_range" 為必要欄位 "start" = 起始值、 "end" = 結束值,且 "interval" = 範圍間隔。

如要進一步瞭解選項和相關限制,請參閱「BigQuery 資料表分割」。

叢集設定

如要啟用資料表叢集處理,請指定 cluster_details

  - base_table: vbak
    load_frequency: "@daily"
    cluster_details: {columns: ["vkorg"]}

使用下列參數控管特定資料表的叢集詳細資料:

屬性 說明
columns 資料表叢集處理依據的資料欄。 資料欄名稱清單。例如 "mjahr""matnr"

如要進一步瞭解選項和相關限制,請參閱資料表叢集說明文件

後續步驟

完成這個步驟後,請繼續執行下列部署步驟:

  1. 建立工作負載
  2. 複製存放區
  3. 決定整合機制
  4. 設定元件
  5. 設定部署作業 (本頁面)。
  6. 執行部署作業