在 Knowledge Catalog 中使用僅限關鍵字的搜尋功能,透過特定關鍵字、篩選器和定義的語法尋找資源。僅限關鍵字的搜尋功能可精確控管搜尋查詢,並根據中繼資料欄位縮小搜尋結果範圍。
事前準備
執行搜尋前,請確認您已獲派必要角色,並啟用必要的 API。
必要的角色
如要取得在 Knowledge Catalog 中搜尋項目及存取搜尋結果所需的權限,請要求管理員授予您下列 IAM 角色:
-
搜尋項目:
- Dataplex Catalog 管理員 (
roles/dataplex.catalogAdmin) (用於搜尋的專案) - Dataplex Catalog 編輯者 (
roles/dataplex.catalogEditor) 在用於搜尋的專案中 - Dataplex Catalog 檢視者 (
roles/dataplex.catalogViewer) 在用於搜尋的專案中
- Dataplex Catalog 管理員 (
-
搜尋 BigQuery 資料集和資料表的中繼資料:
資料集或資料表的 BigQuery 中繼資料檢視者 (
roles/bigquery.metadataViewer) -
搜尋自訂項目:
專案的 Dataplex Catalog 檢視者 (
roles/dataplex.catalogViewer)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
使用僅限關鍵字的搜尋
控制台
如要使用關鍵字搜尋資源,請按照下列步驟操作:
前往 Google Cloud 控制台的 Knowledge Catalog「Search」(搜尋) 頁面。
在「尋找各項專案的資源」欄位中輸入查詢。
如要縮小搜尋範圍,請使用「篩選條件」面板。可用的篩選器如下:
- 「系統」會列出可用的系統,例如 BigQuery 或 Cloud SQL。Knowledge Catalog 系統含有自訂項目。
- 切面可讓您查詢使用特定範本標記的資產。您可以使用「自訂」選單進一步修正結果,並依特定層面值篩選。
- 「專案」會列出可將搜尋範圍限定於其中的專案。
- 型別別名是與項目類型相關聯的資料型別。項目類型可能有名為
projects/test-project/locations/us/entryTypes/my-entry-type的名稱,但您可以使用類型別名TABLE或DATABASE搜尋。您可以在建立或更新項目類型時,設定一或多個型別別名。 - 資料集來自 BigQuery。
您可以手動新增下列篩選器:
- 新增專案篩選器:在「專案」中,按一下「新增專案」。搜尋特定專案,選取專案,然後按一下「開啟」。
- 新增切面類型篩選器:在「切面」中,按一下「新增更多切面類型」選單。搜尋並選取特定範本,然後按一下「確定」。
選用:除了可用的資產外,您也可以選取「Include public datasets」(納入公開資料集),搜尋 Google Cloud 中公開提供的資源。
請參考下列提示建構搜尋查詢:
- 如果搜尋運算式含有空格,請在前後加上引號。例如
"search terms"。 - 在關鍵字前面加上
NOT,即可比對keyword:term篩選器的邏輯否定。您也可以使用AND和OR布林運算子,合併搜尋運算式。AND、OR和NOT運算子不區分大小寫。
舉例來說,
NOT column:term會列出所有資料欄,但符合指定字詞的資料欄除外。- 如果搜尋運算式含有空格,請在前後加上引號。例如
如要查看搜尋資源的詳細資訊,請在搜尋結果中點選資源名稱。系統會開啟項目詳細資料頁面。
gcloud
如要搜尋資源,請使用 gcloud dataplex entries search 指令。
C#
C#
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 C# 設定說明操作。詳情請參閱「Knowledge Catalog C# API 參考文件」。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Go
Go
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 Go 設定說明操作。詳情請參閱「Knowledge Catalog Go API 參考文件」。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Java
Java
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 Java 設定說明操作。詳情請參閱 Knowledge Catalog Java API 參考文件。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Node.js
Node.js
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 Node.js 設定說明操作。詳情請參閱 Knowledge Catalog Node.js API 參考文件。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
PHP
PHP
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 PHP 設定說明操作。詳情請參閱「Knowledge Catalog PHP API 參考文件」。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Python
Python
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 Python 設定說明操作。詳情請參閱「Knowledge Catalog Python API 參考文件」。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
小茹
Ruby
在試用這個範例之前,請先按照「使用用戶端程式庫的 Knowledge Catalog 快速入門導覽課程」中的 Ruby 設定說明操作。詳情請參閱「Knowledge Catalog Ruby API 參考文件」。
如要向 Knowledge Catalog 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
REST
如要搜尋資源,請使用 searchEntries 方法。
僅限關鍵字的搜尋語法
如要精確搜尋,可以使用特定語法建構查詢,包括限定詞、邏輯運算子和面向搜尋。
具有限定詞的述詞
您可以在述詞前面加上鍵,限制比對特定中繼資料:
- 等號 (
=) 會將搜尋範圍限制為完全比對。 - 鍵後方的半形冒號 (
:) 會將述詞比對至搜尋結果值中的子字串或符記。
斷詞會將文字串流分割成一系列詞元,每個詞元通常對應一個字詞。
述詞鍵 type、system、location 和 orgid 僅支援完全比對 (=) 限定詞,不支援子字串限定詞 (:)。例如 type=foo 或 orgid=number。
Knowledge Catalog 關鍵字搜尋支援下列限定詞:
| 限定詞 | 說明 |
|---|---|
name:x |
與資源 ID 的子字串 x 相符。 |
displayname:x |
與資源顯示名稱的子字串相符。x |
column:x |
與資源結構定義中的資料欄名稱 (或巢狀資料欄名稱) 的子字串 x 相符。 |
description:x |
比對資源說明中的 x 符記。 |
label:bar |
比對具有標籤 (含某個值) 的 BigQuery 資源,且標籤鍵含有 bar 子字串。 |
label=bar |
比對具有標籤 (含某些值) 的 BigQuery 資源,且標籤鍵等於字串 bar。 |
label:bar:x |
比對 x 是否為標籤值中的子字串,該標籤的鍵為 bar,且附加至 BigQuery 資源。 |
label=foo:bar |
符合鍵等於 foo 且鍵值等於 bar 的 BigQuery 資源。 |
label.foo=bar |
比對鍵等於 foo 且鍵值等於 bar 的 BigQuery 資源。 |
label.foo |
比對標籤鍵等於 foo (字串) 的 BigQuery 資源。 |
type=TYPE |
符合特定項目類型或其類型別名的資源。 |
projectid:bar |
比對 Google Cloud 專案中 ID 包含bar子字串的資源。 |
parent:x |
比對 x 是否為資源階層式路徑的子字串。父項路徑是父項資源的 fully_qualified_name。 |
orgid=number |
在 Google Cloud 機構中,比對 ID 值與 number 完全相符的資源。 |
system=SYSTEM |
比對指定系統中的資源。 |
location=LOCATION |
在指定位置中,比對名稱完全相符的資源。
舉例來說, BigQuery Omni 資產支援這項限定符,方法是使用 BigQuery Omni 位置名稱。舉例來說, |
createtime |
尋找在指定日期或時間內、之前或之後建立的資源。 例如:
時間戳記格式: 所有時間戳記都必須採用 GMT 格式,不支援時區。支援部分時間戳記、連字號 ( 例如:
|
updatetime |
尋找在指定日期/時間內、之前或之後更新的資源。 例如:
時間戳記格式: 所有時間戳記都必須採用 GMT 格式,不支援時區。支援部分時間戳記、連字號 ( 例如:
|
fully_qualified_name:x |
x 是 fully_qualified_name 的子字串。 |
fully_qualified_name=x |
符合 x 的 fully_qualified_name。 |
切面搜尋
如要根據附加的層面搜尋項目,請使用下列查詢語法。
| 限定詞 | 說明 |
|---|---|
aspect:x |
以附加至項目的構面類型完整路徑的子字串形式,比對 x,格式為 projectid.location.ASPECT_TYPE_ID |
aspect=x |
比對 x,做為附加至項目的切面類型完整路徑,格式為 projectid.location.ASPECT_TYPE_ID |
aspect:xOPERATORvalue |
搜尋顯示比例欄位值。將 支援的運算子清單取決於切面中的欄位類型,如下所示:
只有切面的頂層欄位可供搜尋。 舉例來說,下列所有查詢都會比對
|
邏輯運算子
查詢可由多個述詞組成,並以邏輯運算子 AND、OR 或 NOT 連結。
- 如果您未指定運算子,則默示使用邏輯
AND。舉例來說,foo bar會傳回符合述詞foo和述詞bar的資源。 - 使用
-(連字號) 或NOT前置字元否定述詞。例如,-name:foo會傳回名稱不符合述詞foo的資源。
在僅限關鍵字的搜尋中,邏輯運算子不區分大小寫。
簡短語法
如要在查詢中使用縮寫語法,請以 | (垂直線) 代表 OR 運算子,並以 , (逗號) 代表 AND 運算子。除了 label 以外,縮寫語法適用於具有限定詞的述詞。
下列範例說明如何搭配僅限關鍵字的搜尋使用縮寫語法。
使用
OR運算子在多個專案中搜尋項目projectid:(id1|id2|id3|id4)不使用縮寫語法的相同搜尋內容如下:
projectid:id1 OR projectid:id2 OR projectid:id3 OR projectid:id4搜尋資料欄名稱相符的項目:
- AND:
column:(name1,name2,name3) - OR:
column:(name1|name2|name3)
- AND:
後續步驟
- 進一步瞭解 Knowledge Catalog 中的中繼資料管理功能。
- 瞭解如何使用切面,為項目和項目連結加入中繼資料。
- 瞭解如何管理項目及擷取自訂來源。