使用 Knowledge Catalog 建立基礎資料環境

處理資料時,您可能曾提出「這個資料欄名稱是什麼意思?」「這個損壞的資料集擁有者是誰?」或「這個資料表是否已獲准使用?」中繼資料標記會嘗試回答這些問題,但很快就會過時或不一致。Knowledge Catalog (舊稱 Dataplex Universal Catalog) 可解決這個問題,讓您直接將結構化中繼資料和明確的業務定義附加至資料資產。提供明確的資料脈絡資訊,可建立 AI 代理的基準,並為每位與資料互動的使用者奠定信任基礎。

本教學課程說明如何在 Knowledge Catalog 中建立資料情境。本教學課程專為資料監管者和業務分析師等使用者設計,將逐步說明如何透過使用者介面建立標準業務字詞和情境,然後自動執行這些工作流程。本教學課程會說明Knowledge Catalog 重要概念之間的關係。完成本課程後,您將瞭解如何讓資料容易搜尋且值得信賴。

目標

在本教學課程中,您將瞭解以下內容:

  • 使用組織詞彙,為商務字詞建立單一事實來源。
  • 使用切面類型建構及整理中繼資料。
  • 使用切面將中繼資料附加至資料資產。
  • 使用 Knowledge Catalog 搜尋功能,透過這項新的結構化中繼資料精準找出所需內容。

事前準備

開始之前,請先執行下列操作:

設定環境

本教學課程會使用 Cloud Shell,這是可在雲端執行的指令列環境。

  1. 在 Google Cloud 控制台右上方的工具列,點選「啟用 Cloud Shell」。佈建並連至環境預計只需要幾分鐘,

  2. 在 Cloud Shell 中設定 PROJECT_ID 和 LOCATION 變數,讓所有後續指令都以特定 Google Cloud 專案為目標。

    export PROJECT_ID=$(gcloud config get-value project)
    gcloud config set project $PROJECT_ID
    export LOCATION="us-central1"
    
  3. 啟用必要的 Google Cloud 服務。

    gcloud services enable \
      dataplex.googleapis.com \
      bigquery.googleapis.com 
    

建立 BigQuery 資料集並準備範例資料

使用下列程式碼建立 BigQuery 資料集,並將一些範例 CSV 交易載入資料表。建立資料表後,Knowledge Catalog 會探索該資料表,並在目錄中為其建立項目。

項目是 Knowledge Catalog 中資料資產的代表。這就像目錄中的記錄,您可以附加中繼資料。您不必直接在 BigQuery 資料表中新增內容 (或擴增內容),而是將內容新增至 Knowledge Catalog 中的項目。

# Create the BigQuery Dataset in the us-central1 region
bq --location=$LOCATION mk --dataset \
    --description "Sample retail data for foundational data context tutorial" \
    $PROJECT_ID:retail_data

# Create a temporary CSV file with the sample data
echo "transaction_id,user_email,gmv,transaction_date
1001,test@example.com,150.50,2025-08-28
1002,user@example.com,75.00,2025-08-28" > /tmp/transactions.csv

# Load the data from the temporary CSV file into a BigQuery table
bq load \
    --source_format=CSV \
    --autodetect \
    retail_data.transactions \
    /tmp/transactions.csv

# (Optional) Clean up the temporary file
rm /tmp/transactions.csv

執行 SELECT 查詢,驗證設定:

bq query --nouse_legacy_sql "SELECT * FROM retail_data.transactions"

輸出內容範例:

+----------------+------------------+-------+------------------+
| transaction_id |    user_email    |  gmv  | transaction_date |
+----------------+------------------+-------+------------------+
|           1001 | test@example.com | 150.5 |       2025-08-28 |
|           1002 | user@example.com |  75.0 |       2025-08-28 |
+----------------+------------------+-------+------------------+

使用組織詞彙建立通用詞彙

良好的資料脈絡取決於明確的定義。舉例來說,開發人員不應猜測名為 gmv 的資料欄是指交易總額,還是包含稅金和退貨。組織詞彙可為整個機構的這些定義建立單一事實來源。隊友或 AI 代理分析資料時,會沿用這個精確的業務脈絡。共用定義可統一財務、銷售和營運等團隊的指標,並協助 AI 代理避免產生幻覺。

請按照下列步驟建立詞彙表,並定義第一個字詞:

  1. 前往 Google Cloud 控制台的 Knowledge Catalog「Glossaries」(詞彙表) 頁面。

    前往「Glossaries」(詞彙表)

  2. 按一下「Create Business Glossary」(建立組織詞彙)。

  3. 輸入下列詳細資訊:

    • 顯示名稱:Retail Business Glossary
    • 位置:us-central1 (Iowa)
  4. 點選「建立」。

  5. 按一下「建立類別」。

  6. 將類別命名為 Sales Metrics,然後按一下「建立」。

  7. 選取「銷售指標」類別,然後點選「新增字詞」。

  8. 為字詞命名 Gross Merchandise Value 點選「建立」。

  9. 按一下「商品交易總額」詞彙,開啟詳細資料頁面。

  10. 按一下「總覽」旁的「新增」。輸入下列詳細資料:The total value of merchandise sold over a given period of time before the deduction of any fees or expenses. This is a key indicator of e-commerce business growth.

  11. 按一下 [儲存]。

您已建立詞彙表字詞,現在可以連結至貴機構的資料項目。

使用切面類型定義技術中繼資料

使用非結構化中繼資料標記時,目錄項目通常會不一致。舉例來說,一個表格可能標記為 owner:bob,另一個則標記為 steward:alice@example.com。如要大規模整理中繼資料,您需要一致的結構定義。

這時切面類型就能派上用場。切面類型是中繼資料藍圖,可讓您設定明確的規則和必填欄位。要求資料監管員提供有效電子郵件地址等標準欄位,可讓下游指令碼自動驗證及保護中繼資料。

如要建立切面類型,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Metadata types」(中繼資料類型) 頁面,然後點選「Knowledge Catalog」(Knowledge Catalog)Aspect types 分頁標籤。

    前往「切面類型」

  2. 在「自訂」分頁中,按一下「建立」。

  3. 輸入下列詳細資訊:

    • 顯示名稱:Data Asset Context
    • 位置:us-central1 (Iowa)
  4. 在「範本」部分,按一下「新增欄位」,建立下列三個欄位:

    • 欄位 1:

      • 顯示名稱:Data Steward
      • 類型:Text
      • 「為必填項目」:勾選核取方塊。
      • 文字類型:Plain text
    • 欄位 2 (按一下「新增欄位」):

      • 顯示名稱:Data Sensitivity
      • 類型:Enum
      • Is Required:保留選用。
      • 值:新增 Public、Internal 和 Confidential
    • 欄位 3 (按一下「新增欄位」):

      • 顯示名稱:Last Review Date
      • 是否為必填欄位:選填。
      • 類型:Date and time
  5. 按一下 [儲存]。

您現在擁有資料治理相關中繼資料欄位的面向類型,例如資料管理員、機密程度和審查日期。在下一節中,您要將這個結構定義套用至表格項目,方法是附加含有這些欄位特定值的層面。

為項目充實業務和技術背景資訊

資料欄名稱通常會縮寫或含糊不清。將資料欄連結至組織詞彙中的字詞,可提供清楚一致的定義。在這個步驟中,您會將 Gross Merchandise Value 詞彙連結至名為 gmv 的資料欄,並使用切面類型將切面附加至資料表項目,藉此充實 retail_data.transactions 資料表的項目。

如要說明 retail_data.transactions 中的 gmv 欄位,請將其連結至 Gross Merchandise Value 字詞。

  1. 前往 Google Cloud 控制台的 Knowledge Catalog「Search」(搜尋) 頁面。

    前往「搜尋」

  2. 按一下「篩選器」開啟「篩選器」面板。

  3. 在「範圍」部分,選取「目前的專案」。

  4. 搜尋 retail_data.transactions,然後點選傳回的交易資料表。

  5. 按一下「結構定義」分頁標籤。

  6. 選取「gmv」欄旁的核取方塊,然後按一下「新增商家字詞」。

  7. 選取「Gross Merchandise Value」。

將切面附加至資料表項目

除了將業務字詞連結至資料欄,您也可以將切面附加至資料表項目,擷取資料表層級的中繼資料,例如資料擁有權和機密性。

切面是切面類型的例項,具有中繼資料欄位的特定值。將切面附加至項目時,Knowledge Catalog 會根據切面類型中定義的結構定義,檢查您提供的資訊,確保一致性。

如要定義 retail_data.transactions 資料表的擁有權和機密程度,請附加 Data Asset Context 類型:

  1. 在 retail_data.transactions 項目頁面的「詳細資料」分頁中,點選「選用切面」旁的「新增」。
  2. 從清單中選取 Data Asset Context。
  3. 在欄位中輸入值:

    • 資料管理員: finance-team@example.com
    • 資料敏感度:選取「內部」。
    • 上次審查日期:選取今天的日期。
  4. 按一下 [儲存]。

透過豐富的零售交易範例資料,您已在 Knowledge Catalog 中建立穩固的資料情境基礎。

使用增強型中繼資料搜尋項目

您現在可以使用 Knowledge Catalog 搜尋功能,根據您設定的業務情境尋找項目。舉例來說,您可以找出特定機密等級的所有資產,或搜尋詞彙表字詞,找出基礎資料表。

  1. 前往 Google Cloud 控制台的 Knowledge Catalog「Search」(搜尋) 頁面。

    前往「搜尋」

  2. 按一下「篩選器」開啟「篩選器」面板。

  3. 在「範圍」部分,選取「目前的專案」。

  4. 在搜尋列中輸入 Find tables where the Data Asset Context aspect has Internal sensitivity.

  5. 您應該會在結果清單中看到 retail_data.transactions 資料表。

  6. 清除搜尋列,然後輸入 Find tables with the Gross Merchandise Value term attached.

  7. 您應該會再次看到結果中的 retail_data.transactions 資料表,因為該資料表的 gmv 欄直接連結至這個商家字詞。

將 AI 代理程式連結至 Knowledge Catalog 時,系統會自動沿用這些經過擴充的中繼資料。舉例來說,當您要求代理程式擷取內部銷售指標時,代理程式會讀取「資料機密程度」層面 (您已設為「內部」) 和連結的交易總額詞彙。這項共用情境資訊有助於代理驗證資料來源、遵守存取政策,並避免產生幻覺。

清除所用資源

為避免產生費用,請刪除您在本教學課程中建立的資源。

刪除範例資料集

如要刪除範例 BigQuery 資料集和所有資料表,請使用下列指令。這個動作無法復原。

# Re-run these exports if your Cloud Shell session timed out
export PROJECT_ID=$(gcloud config get-value project)

# Manually type this command to confirm you are deleting the correct dataset
bq rm -r -f --dataset $PROJECT_ID:retail_data

刪除 Knowledge Catalog 構件

  1. 前往 Google Cloud 控制台的 Knowledge Catalog「Metadata types」(中繼資料類型) 頁面,然後點選「Aspect types」(層面類型) 分頁標籤。

    前往「切面類型」

  2. 選取 Data Asset Context 方面類型,然後按一下「刪除」。

  3. 前往 Google Cloud 控制台的 Knowledge Catalog「Glossaries」(詞彙表) 頁面。

    前往「字彙表」

  4. 選取「Gross Merchandise Value」字詞,然後按一下「刪除」。

  5. 選取「Sales Metrics」類別,然後按一下「刪除」。

  6. 選取 Retail Business Glossary,然後按一下「刪除」。

後續步驟

如要進一步瞭解如何使用 Knowledge Catalog 策劃目錄及建構代理程式,請參閱下列資源:

  • 管理切面及豐富中繼資料:瞭解如何定義自訂結構定義,以及在「管理切面及豐富中繼資料」中附加結構化中繼資料。
  • 管理組織詞彙:如要瞭解如何為組織建立標準化詞彙,請參閱「管理組織詞彙」。
  • 使用 Terraform 管理:瞭解如何使用 Terraform 佈建自訂切面類型和詞彙表。
  • 大規模處理術語:使用「關於匯入及匯出術語表和詞條連結」中的 JSON 檔案,大量擴充中繼資料。
  • 使用代理擴充中繼資料:建構 AI 代理來擷取脈絡,並在「建構代理來擴充中繼資料」中擴充資料資產。
  • 探索更多用途:在「用途」中,瞭解其他可自訂的工作流程和情境。