Knowledge Catalog (舊稱 Dataplex Universal Catalog) 是全代管服務,可自動探索及清查分散式資料和 AI 資產。這項服務會建立統一且可搜尋的知識庫,管理 Google Cloud 和其他環境中的資料,確保您的資料分析和 AI 模型是以符合法規的可靠資訊為基礎建構而成。
用途
加速 AI 和資料分析的資料探索。運用 AI 技術生成的資料洞察資訊,自動產生業務背景,解決資料冷啟動問題。資料科學家、分析師和 AI 代理程式可使用自然語言語意搜尋,即時探索、瞭解及驗證資料品質,不必等待手動工程支援。
為 AI 代理建立基準,並管理資料產品。策劃統一脈絡圖,將實體資料集與業務語意和使用關係連結。這可確保下游生成式 AI 應用程式使用 Model Context Protocol (MCP) 等標準介面存取資料時,會依據經過認證且企業核准的事實,大幅減少 AI 幻覺。
探索暗資料:使用非結構化資料探索掃描或獨立的非結構化資料資料剖析,自動找出並掃描原始非結構化檔案 (例如 Cloud Storage 中的 PDF),然後擷取實體和關係。系統會將
Graph Profile方面附加至代表物件資料表的目錄項目,並將非結構化資料轉換為 BigQuery 中可查詢的資產,以供進階分析和基礎 AI 代理程式使用。詳情請參閱「關於非結構化資料洞察」。簡化法規遵循和語意防護措施。自動追蹤資料沿襲,以便繪製機密資訊 (包括個人識別資訊 (PII)) 在資料資產中的流動和轉換方式。這項做法可建立值得信賴的資料基礎,確保傳統分析工作流程和自主 AI 模型,都能在安全且符合政策的範圍內運作。
Knowledge Catalog 的運作方式
您可以將 Knowledge Catalog 視為企業的自動智慧型資料庫。系統會自動從 BigQuery 等儲存系統擷取技術中繼資料,不必手動為中繼資料建立索引。
然後,您就能以業務內容 (例如資料品質分數或擁有權) 擴充中繼資料,並將資料整理成邏輯群組。確保使用者在搜尋目錄時,找到的資產不僅可供探索,也受到有效安全政策的控管。
此外,Knowledge Catalog 可使用中繼資料變更記錄,近乎即時地串流中繼資料變更。中繼資料變更記錄會將中繼資料建立、更新或刪除的通知,傳送至您指定的 Pub/Sub 主題。Pub/Sub 是一種非同步且可擴充的訊息服務。接著,您可以使用訂閱端用戶端訂閱 Pub/Sub 主題,接收這些通知。您可以透過程式輔助方式處理中繼資料變更、觸發工作流程,或與其他系統整合,根據這些通知採取行動。舉例來說,當表格結構定義變更時,您可以利用這些通知自動觸發資料品質檢查。詳情請參閱「中繼資料變更記錄」。
術語
Knowledge Catalog 的中繼資料管理功能以以下概念為基礎:
- 項目
項目代表資料資產,與 Data Catalog 中的項目類似。
示例:名為
test-project.sales_data.customer_orders的 BigQuery 資料表會以項目形式表示。項目的資料欄代表資料資產的特定子區段,例如 BigQuery 資料表中的單一資料欄,或 JSON 檔案中的欄位。您可以透過資料欄將中繼資料附加至項目內的個別欄位,而不只是整個項目。您不會直接定義資料欄,而是將
schema類型的層面附加至項目時,系統會建立資料欄。資料欄也稱為路徑。舉例來說,如要說明
customer_orders項目中的email_address欄位含有個人識別資訊 (PII),可以將層面附加至email_address欄位。如要進一步瞭解項目,請參閱「項目」。
- 項目連結
項目連結會在 Knowledge Catalog 中建立兩個資料資產 (項目) 之間的關係。連結可以是
synonym、related items或schema-join等對稱 (非單向) 連結,也可以是definition等非對稱 (單向) 連結,並明確指定來源和目標。連結可以參照整個項目或特定路徑 (例如結構定義中的單一資料欄),但schema-join項目連結除外。示例:
synonym項目連結會將「利潤」這個業務術語與「收益」建立同義關係。如要進一步瞭解進入連結,請參閱
EntryLinks。- 項目連結類型
項目連結類型是項目連結的可重複使用範本,用於說明兩個項目之間的關係。每個項目連結都是項目連結類型的例項。項目連結的方向性是在項目連結類型層級定義。
舉例來說,如要指出連結項目中的資料可根據結構定義聯結,可以使用
schema-join項目連結類型。如要說明資料表中的資料欄意義,您可以透過definition項目連結類型,在這些資料欄和組織詞彙詞彙之間建立連結。Knowledge Catalog 支援下列項目連結類型:
synonym、related、definition和schema-join。- 面向
切面是一組相關的中繼資料欄位。您可以將切面附加至項目,整體描述項目或項目連結。大部分中繼資料都是由項目中的切面描述,這與 Data Catalog 中的標記類似。不過,切面會儲存在項目或項目連結中,而不是獨立資源。
舉例來說,如要定義
customer_orders項目中的所有資料欄 (例如order_id、order_date和email_address),可以將schema層面附加至customer_orders項目。如要指定email_address資料欄包含電子郵件地址,可以將schema層面附加至email_address資料欄。如要進一步瞭解層面,請參閱「層面」。
如要進一步瞭解如何使用層面來提升資料品質,請參閱重複使用資料品質規則。
- 項目類型
項目類型是建立項目的範本,可建立必要的中繼資料元素,並列出這類項目所需的切面。項目類型會指定特定資料資產所需的切面類型。
舉例來說,為確保所有項目都有必要的中繼資料,您可以建立名為「
StandardOperationalTable」的項目類型,並要求所有這類新項目都必須附加「OwnerInfo」切面。如要進一步瞭解項目類型,請參閱「項目類型」。
- 切面類型
切面類型是可重複使用的切面範本。每個切面都是一個切面類型的執行個體。這與 Data Catalog 中的標記範本類似。
舉例來說,如要定義聯絡資訊的可重複使用範本,可以定義名為
ContactInfo的層面類型,並包含owner_name、email和support_team的欄位。接著,您可以從這個範本建立ContactInfo層面,並將其附加至項目或資料欄。如要進一步瞭解層面類型,請參閱層面類型。
- 項目群組
項目群組是項目和項目連結的容器,可做為這些項目和項目連結的管理單元。舉例來說,您可以使用項目群組,為項目群組中的項目和項目連結設定身分與存取權管理存取控管、專案歸因或位置。這與 Data Catalog 中的項目群組類似。
舉例來說,財務團隊想一次管理所有資料表的權限,可以建立名為
production_finance_data的項目群組,並在其中加入customer_orders、quarterly_revenue和employee_salaries資料表的項目。如要進一步瞭解項目群組,請參閱「項目群組」。
圖 1:項目群組、項目和項目連結
圖 2. 切面類型和項目類型
圖 3. 項目連結,其中包含連結的項目、切面和類型
Knowledge Catalog 與 Data Catalog 的比較
Knowledge Catalog 提供整合式功能,可管理中繼資料。中繼資料儲存空間和 API 方法已整合至 Dataplex API。
Knowledge Catalog 的主要中繼資料管理功能包括:
更強大的元模型
- 輸入的項目。您可以定義自訂項目的必要中繼資料內容,強制執行最低中繼資料標準
- 使用者可設定自訂項目的元模型,有助於提升自訂擷取的穩定性,並改善自訂中繼資料的一致性和完整性。
- 支援更多種類和複雜程度的中繼資料,包括支援巢狀結構,例如清單、對應和陣列。
提升可擴充性,包括可透過單一不可分割的 CRUD 作業,與項目相關聯的所有中繼資料互動,以及在搜尋或清單回應中擷取多個相關聯的中繼資料註解。
下表比較 Knowledge Catalog 和 Data Catalog 的中繼資料管理功能:
| 功能 | Knowledge Catalog | Data Catalog |
|---|---|---|
| 支援的 Google Cloud 來源 | 如本文件「支援的來源 Google Cloud 」一節所述的所有來源。 | 「項目和項目群組」一節中說明的所有來源。 |
| 自訂來源攝入 | 以受控結構匯入自訂項目,並由項目類型定義。 Data Catalog 自訂項目和項目群組會顯示在 Knowledge Catalog 的 | 擷取至一般自訂項目。 |
| 中繼資料充實 |
系統會使用業務詞彙表、切面和切面類型,擷取項目的中繼資料內容。 系統支援項目連結,您可以將切面附加至項目連結。 |
系統會使用業務詞彙表、標記和標記範本,擷取項目的中繼資料內容。 不支援項目連結。 |
| 項目連結 | 系統支援項目連結。項目連結類型 (例如 schema-join) 可讓您將切面附加至項目連結。 |
不適用。 |
| 中繼資料變更動態饋給 | 系統會將近乎即時的中繼資料變更通知串流至 Pub/Sub。 | 不適用。 |
| 搜尋 | 搜尋範圍包括:
搜尋結果只會顯示與執行搜尋的專案屬於相同機構和相同 VPC Service Controls perimeter 的資源。使用 Google Cloud 控制台時,這是指在控制台中選取的專案。 請注意,如要搜尋項目,您至少須具備用於搜尋的專案的其中一個 IAM 角色:Dataplex Catalog 管理員、Dataplex Catalog 編輯者或 Dataplex Catalog 檢視者。系統會獨立檢查搜尋結果的權限,與所選專案無關。 |
搜尋範圍包括:
|
| 資料歷程 |
資料歷程會使用 Dataplex API,擷取資產節點的項目詳細資料。 Google Cloud 控制台會顯示附加的層面。 |
資料歷程會使用 Data Catalog API,擷取資產節點的項目詳細資料。 |
| 商務詞彙表 |
您可以透過組織詞彙建立業務字詞的分類,並將這些字詞與資料資產和資料欄建立關聯。您可以使用搜尋功能,找出與特定字詞連結的資產。 |
您可以透過組織詞彙建立業務用語的分類,並將這些用語與資料欄建立關聯。您可以使用搜尋功能,找出與字詞連結的資產。 |
下表說明 Knowledge Catalog 中的資源如何對應至 Data Catalog 資源:
| Knowledge Catalog 資源 | Data Catalog 資源 | 說明 |
|---|---|---|
切面類型 (global) |
公開代碼範本 | 標記範本是區域資源,但您可以使用這些範本在各區域建立標記。標記範本對應於 Knowledge Catalog 中的global切面類型。 |
| 選用切面 | 公開標記 | Data Catalog 中的公開標記對應至 Knowledge Catalog 中的選用切面。 |
| 項目群組 | 項目群組 | 對於 Google Cloud 來源,系統項目群組 (例如 @bigquery) 會在 Knowledge Catalog 中依專案建立。 |
| 自訂項目必要切面 | 自訂項目 | Data Catalog 和 Knowledge Catalog 的自訂項目概念類似。 標準項目屬性在 Knowledge Catalog 中會模擬為必要切面。 |
| 系統登錄必要切面 | 系統 (Google Cloud) 項目 | 系統定義的必要層面類型會擷取描述內建實體的中繼資料,例如 BigQuery 資料表的 Schema。 |
| 商務詞彙表 | 商務詞彙表 | 使用詞彙表建立商務字詞的分類,在整個企業中標準化商務情境。 |
如要進一步瞭解 Data Catalog 提供但 Knowledge Catalog 不支援的功能,請參閱本文的「Knowledge Catalog 不支援的中繼資料管理功能」一節。
現有 Data Catalog 使用者
如果您已使用 Data Catalog,請注意下列事項:
- 您在 Data Catalog 中建立的自訂項目、總覽內容、詞彙表和項目群組,都會在 Knowledge Catalog 中提供。
- 管理員可以選擇讓 Data Catalog 標記範本和標記的內容同時顯示於 Knowledge Catalog。詳情請參閱「從 Data Catalog 轉移至 Knowledge Catalog」。
- 在 Knowledge Catalog 中搜尋資料資產時,系統會一併納入直接在 Knowledge Catalog 中建立的中繼資料,以及從 Data Catalog 帶入 Knowledge Catalog 的中繼資料。
- 在 Data Catalog 中搜尋資料資產時,系統只會納入在 Data Catalog 中建立的中繼資料。
- 如果 Data Catalog 中的項目群組說明超過 1024 個半形字元,Knowledge Catalog 會將說明截斷至 1024 個半形字元。
- 如果您是管理員,想讓您在 Data Catalog 中建立的詞彙表和相關聯的商業字詞與資料欄連結,在 Knowledge Catalog 中也能使用,請參閱「將詞彙表遷移至 Knowledge Catalog」。
如要進一步瞭解如何將獨立 Data Catalog 的內容和使用情形轉移至 Knowledge Catalog,請參閱「從 Data Catalog 轉移至 Knowledge Catalog」。
將 Data Catalog API 方法對應至 Knowledge Catalog
如果您要從 Data Catalog 遷移至 Knowledge Catalog,請務必更新程式輔助工作流程,改用 Dataplex API。本節提供 Data Catalog API 和 Dataplex API 的對應關係。
如要進一步瞭解 Dataplex API 方法,請參閱 REST 方法的 Dataplex API 說明文件,以及 RPC 方法的 Dataplex API 說明文件。
下表列出 Data Catalog API 方法與 Dataplex API 對等項目的對應關係。
項目群組
Knowledge Catalog 和 Data Catalog 的項目群組概念相同。
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.entryGroups.create (REST)CreateEntryGroup (RPC) |
projects.locations.entryGroups.create (REST)CreateEntryGroup (RPC) |
projects.locations.entryGroups.get (REST)GetEntryGroup (RPC) |
projects.locations.entryGroups.get (REST)GetEntryGroup (RPC) |
projects.locations.entryGroups.patch (REST)UpdateEntryGroup (RPC) |
projects.locations.entryGroups.patch (REST)UpdateEntryGroup (RPC) |
projects.locations.entryGroups.delete (REST)DeleteEntryGroup (RPC) |
projects.locations.entryGroups.delete (REST)DeleteEntryGroup (RPC) |
projects.locations.entryGroups.list (REST)ListEntryGroups (RPC) |
projects.locations.entryGroups.list (REST)ListEntryGroups (RPC) |
實體
在 Knowledge Catalog 和 Data Catalog 中,代表資料資產的項目概念類似。
標記範本和標記
在 Knowledge Catalog 中,切面類型是 Data Catalog 標記範本的後繼項目,切面則是 Data Catalog 標記的後繼項目。
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.tagTemplates.create (REST)CreateTagTemplate (RPC) |
projects.locations.aspectTypes.create (REST)CreateAspectType (RPC) |
projects.locations.tagTemplates.get (REST)GetTagTemplate (RPC) |
projects.locations.aspectTypes.get (REST)GetAspectType (RPC) |
projects.locations.tagTemplates.patch (REST)UpdateTagTemplate (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.delete (REST)DeleteTagTemplate (RPC) |
projects.locations.aspectTypes.delete (REST)DeleteAspectType (RPC) |
catalog.search (REST) with type=tag_template predicateSearchCatalog (RPC) with type=tag_template predicate |
projects.locations.aspectTypes.list (REST)ListAspectTypes (RPC) |
代碼範本欄位
代碼範本欄位會對應至切面類型中 metadata_template 欄位的內容。如要遷移 Data Catalog 欄位層級的作業,請在 Knowledge Catalog 中使用 UpdateAspectType 作業和對應的酬載。
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.tagTemplates.fields.create (REST)CreateTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.fields.patch (REST)UpdateTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.fields.rename (REST)RenameTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
projects.locations.tagTemplates.fields.delete (REST)DeleteTagTemplateField (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
代碼範本欄位列舉值
與代碼範本欄位類似,您可以在 Dataplex API 中編輯列舉值,方法是修改相應層面類型中的 metadata_template 欄位。
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.tagTemplates.fields.enumValues.rename (REST)RenameTagTemplateFieldEnumValue (RPC) |
projects.locations.aspectTypes.patch (REST)UpdateAspectType (RPC) |
標記
切面是 Data Catalog 標記的後繼功能。切面並非獨立資源,而是封裝在父項項目中。field_mask 參數可用於選擇性更新項目中的單一切面。
| Data Catalog API 方法 | Dataplex API 方法 |
|---|---|
projects.locations.entryGroups.entries.tags.create (REST)CreateTag (RPC) |
projects.locations.entryGroups.entries.patch (REST)UpdateEntry (RPC) |
projects.locations.entryGroups.entries.tags.list (REST)ListTags (RPC) |
projects.locations.entryGroups.entries.get (REST)GetEntry (RPC)
注意:如要將回應限制為僅包含必要項目,請使用 |
projects.locations.entryGroups.entries.tags.patch (REST)UpdateTag (RPC) |
projects.locations.entryGroups.entries.patch (REST)UpdateEntry (RPC) |
projects.locations.entryGroups.entries.tags.delete (REST)DeleteTag (RPC) |
projects.locations.entryGroups.entries.patch (REST)UpdateEntry (RPC) |
政策標記和分類
這些 API 不會變更,因此不需要遷移。
支援的來源
Knowledge Catalog 會自動從下列Google Cloud 來源擷取中繼資料。對於 AlloyDB for PostgreSQL 和 Cloud SQL 等部分服務,您必須先啟用 Knowledge Catalog 整合功能,才能擷取中繼資料:
數據分析和湖倉
- BigQuery 資料集、資料表、檢視區塊、模型、常式、連線和連結的資料集
- BigQuery sharing (舊稱 Analytics Hub) 交易所和項目
- Dataform 存放區和程式碼資產
- Dataproc Metastore 服務、資料庫和資料表
Iceberg REST 目錄資料表 (包括 Google Cloud Lakehouse 執行階段目錄 IRC、Databricks Unity IRC、AWS Glue Data Catalog IRC 和 Snowflake Horizon IRC)
AI 與機器學習
- Vertex AI 模型、資料集、特徵群組、特徵檢視畫面和網路商店執行個體
商業智慧
- Looker (Google Cloud Core) 執行個體、資訊主頁、資訊主頁元素、Look、LookML 專案、模型、探索和檢視畫面 (預先發布版)
資料庫
- Bigtable 執行個體、叢集和資料表 (包括資料欄系列詳細資料)
- Spanner 執行個體、資料庫、資料表和檢視區塊
串流和訊息
- Pub/Sub 主題
非結構化資料
作業資料庫
- AlloyDB for PostgreSQL 叢集、執行個體、資料庫、結構定義、表格和檢視區塊 (預先發布版) - 請參閱「將 AlloyDB for PostgreSQL 與 Knowledge Catalog 整合」
- Cloud SQL 執行個體、資料庫、結構定義、資料表、檢視區塊 - 請參閱「啟用 Cloud SQL 整合」
如要將中繼資料從第三方來源匯入 Knowledge Catalog,可以使用受管理連線管道。詳情請參閱「受管理連線總覽」。
專案和位置限制
Knowledge Catalog 中的目錄資源會存放在不同的專案和位置。限制如下:
位置:
項目:
- 項目的位置必須與項目類型的位置相符,或項目類型必須為
global。 - 新增至項目的切面必須以儲存在與項目相同位置的切面類型為依據,或是切面類型必須為
global。 - 項目類型必須由與項目類型儲存在相同位置的切面類型組成。
- 項目的位置必須與項目類型的位置相符,或項目類型必須為
項目連結:
- 項目連結的位置必須與項目連結類型的位置相符,或項目連結類型必須為
global。 - 新增至項目連結的切面必須以切面類型為依據,且該切面類型必須儲存在與項目連結相同的位置,或是切面類型必須為
global。 - 項目連結類型必須由切面類型組成,且這些切面類型與項目連結類型儲存在相同位置。
- 項目連結的位置必須與項目連結類型的位置相符,或項目連結類型必須為
專案:
- 如果項目類型參照自訂切面類型,則切面類型必須與項目類型位於相同的位置和專案。
Knowledge Catalog 不支援的中繼資料管理功能
Knowledge Catalog 不支援 Data Catalog 的下列功能:
- Knowledge Catalog 沒有私人切面和私人切面類型 (對應至 Data Catalog 中的私人標記和私人標記範本) 的概念。
- Knowledge Catalog 搜尋功能不支援搜尋政策標記,因此
policytag和policytagid述詞無法在 Knowledge Catalog 搜尋中使用。 - 將 Data Catalog 自訂項目群組、自訂項目、標記範本和標記匯入 Knowledge Catalog 時,系統不會轉移原始權限。您必須明確設定所複製中繼資料的 IAM 權限,才能使用該中繼資料。
- 系統不支援將 Sensitive Data Protection 檢查結果直接傳送至 Knowledge Catalog 中的目錄。您可以將 Sensitive Data Protection 檢查結果傳送至 Data Catalog,然後將結果轉移至 Knowledge Catalog。
- 您無法使用 API 列出跨專案的項目類型、項目連結類型和面向類型。您只能將清單要求範圍限定在專案內。
- 系統不支援將湖泊、區域、資產和實體註冊為 Knowledge Catalog 項目。這表示附加至湖泊、區域、資產和實體的 Data Catalog 中繼資料,不會轉移至 Knowledge Catalog 中的目錄。此外,使用 Knowledge Catalog 搜尋功能時,系統不支援搜尋區域和實體,也不支援依湖泊和區域篩選。您可以獨立使用 Knowledge Catalog 中的湖泊和區域。
- 系統不支援管理員搜尋 (可確保完整召回),但您可以匯出中繼資料至 Cloud Storage,然後從 BigQuery 查詢。
如要比較 Knowledge Catalog 和 Data Catalog 支援的功能和資源,請參閱本文的「 Knowledge Catalog 與 Data Catalog 比較」一節。
定價
Knowledge Catalog 會使用中繼資料儲存空間 SKU,收取中繼資料儲存空間費用。詳情請參閱 Knowledge Catalog 價格。
使用下列功能不需付費:
- 在 Knowledge Catalog 中建立及管理目錄資源
- Knowledge Catalog 的 Search API 呼叫
- 在Google Cloud 控制台的 Knowledge Catalog 頁面執行的搜尋查詢
後續步驟
- 瞭解如何在 Knowledge Catalog 中搜尋資源。
- 瞭解如何管理切面及豐富中繼資料。
- 瞭解如何管理項目及擷取自訂來源。
- 進一步瞭解如何從 Data Catalog 遷移至 Knowledge Catalog。
- 進一步瞭解如何將字彙表轉移至 Knowledge Catalog。
- 參考 Knowledge Catalog 應用實例。