本文說明如何使用組織詞彙匯出公用程式,從 Knowledge Catalog (舊稱 Dataplex Universal Catalog) 將詞彙表、類別和字詞擷取至 Google 試算表,以便進行大量管理和報表作業。
glossary_export 公用程式會從 Knowledge Catalog 組織詞彙擷取中繼資料,並在 Google 試算表中填入結構化結構定義,包括說明、資料管理員和標籤。
事前準備
匯出字彙表之前,請先完成下列必要條件。
設定服務帳戶
如要執行匯出公用程式,您必須設定服務帳戶,並具備存取 Google Sheets API 和模擬使用者憑證的必要權限:
找出或建立服務帳戶。
選取現有服務帳戶,或在執行匯入公用程式的專案中建立新的服務帳戶。詳情請參閱「建立服務帳戶」。記下服務帳戶電子郵件地址 (例如
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com)。設定服務帳戶模擬。
如要在本機執行匯出公用程式指令碼,您的使用者帳戶必須具備模擬服務帳戶的權限。將服務帳戶的服務帳戶權杖建立者角色 (
roles/iam.serviceAccountTokenCreator) 授予使用者帳戶。詳情請參閱「管理服務帳戶的存取權」。
授予服務帳戶 Google 試算表
Editor存取權。開啟要用於匯入程序的 Google 試算表,按一下「共用」,然後將服務帳戶電子郵件地址新增為
Editor。這項權限可讓服務帳戶讀取或寫入試算表中的資料。
必要的角色
為確保服務帳戶具備必要權限,能將字彙表匯出至 Google 試算表,請要求管理員將下列 IAM 角色授予服務帳戶:
- Dataplex 管理員 (
roles/dataplex.admin) 專案 - 專案的 Dataplex Catalog 管理員 (
roles/dataplex.catalogAdmin) - 專案的 Dataplex Catalog 編輯者 (
roles/dataplex.catalogEditor)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
管理員或許也能透過自訂角色或其他預先定義的角色,授予服務帳戶必要權限。
啟用 API
如要匯出字彙表,請在專案中啟用下列 API:
啟用 API 時所需的角色
如要啟用 API,您需要服務使用情形管理員 IAM 角色 (roles/serviceusage.serviceUsageAdmin),其中包含 serviceusage.services.enable 權限。瞭解如何授予角色。
設定 Git 存放區
複製 dataplex-labs 存放區:
git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs/dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import/dataplex-glossary/export
安裝依附元件
安裝必要的 Python 依附元件:
pip3 install -r requirements.txt
如果安裝套件時發生任何問題,請設定新的 Python 開發環境。
驗證及設定服務帳戶模擬
初始化 Google Cloud CLI,並使用應用程式預設憑證 (ADC) 搭配服務帳戶模擬功能進行驗證:
# Set your service account email address SA_EMAIL="SERVICE_ACCOUNT_EMAIL" # Authenticate ADC using service account impersonation and required scopes gcloud auth application-default login \ --impersonate-service-account="${SA_EMAIL}" \ --scopes="https://www.googleapis.com/auth/spreadsheets"
將 SERVICE_ACCOUNT_EMAIL 替換為服務帳戶電子郵件 ID。例如:
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
設定匯出目標 Google 試算表
建立空白 Google 試算表或使用現有試算表。匯出指令碼會寫入第一個工作表。確認您已授予服務帳戶 Google 試算表的存取權。Editor
將字彙表匯出至 Google 試算表
執行 glossary-export.py 指令碼。執行時,這項公用程式會提示您輸入目標 Google 試算表,以及要匯出的特定字彙表名稱:
python3 glossary-export.py
您可以在本機執行路徑的 logs/ 目錄中查看執行記錄。這些記錄有助於稽核轉移程序,並找出遭略過的項目或格式警告。
驗證匯出的字彙表資料
匯出指令碼會在 Google 試算表中填入下列資料欄: 驗證匯出的資料。
| 欄位 | 說明 |
|---|---|
id |
詞彙表中的詞彙或類別專屬 ID。 |
parent |
父類別的 ID。 |
display_name |
字詞或類別的顯示名稱。 |
description |
簡短說明該字詞或類別。 |
overview |
詞彙或類別的富文字說明 (支援 HTML 標記)。 |
type |
資料列類型:TERM 或 CATEGORY。 |
contact1_email |
字詞或類別主要資料管理員的電子郵件地址。 |
contact1_name |
術語或類別的主要資料管理員名稱。 |
contact2_email |
學期或類別的次要資料管理員電子郵件地址。 |
contact2_name |
術語或類別的次要資料管理員名稱。 |
label1_key |
第一個指派標籤的鍵。 |
label1_value |
第一個指派標籤的值。 |
label2_key |
第二個指派標籤的鍵。 |
label2_value |
第二個指派標籤的值。 |
後續步驟
- 瞭解如何管理組織詞彙。
- 瞭解如何使用 JSON 檔案匯入字彙表。
- 瞭解如何從 Google 試算表匯入字彙表。
- 進一步瞭解中繼資料管理。