在 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」(搜尋) 頁面。
如果搜尋平台設為「Data Catalog」,請在「選擇搜尋平台」選單中選取「Knowledge Catalog」。
在「尋找各項專案的資源」欄位中輸入查詢。
如要修正搜尋範圍,請使用「篩選器」面板。可用的篩選器如下:
- 「系統」會列出可用的系統,例如 BigQuery 或 Cloud SQL。Knowledge Catalog 系統含有自訂項目。
- 切面 (標記) 可讓您查詢使用特定範本標記的資產。你可以使用「自訂」選單進一步修正結果,並依特定層面值篩選。
- 「專案」會列出可將搜尋範圍限定於其中的專案。
- 類型別名是與項目類型相關聯的資料類型。項目類型可能有名為
projects/test-project/locations/us/entryTypes/my-entry-type的名稱,但您可以使用其類型別名TABLE或DATABASE搜尋。您可以在建立或更新項目類型時,設定一或多個型別別名。 - 資料集來自 BigQuery。
您可以手動新增下列篩選器:
- 新增專案篩選器:在「專案」中,按一下「新增專案」。搜尋特定專案、選取專案,然後按一下「開啟」。
- 新增切面類型篩選器:在「切面」中,按一下「新增更多切面類型」選單。搜尋特定範本,選取該範本,然後按一下「確定」。
選用:除了可用的資產外,您也可以 Google Cloud 選取「Include public datasets」(納入公開資料集),搜尋公開資源。
請參考下列訣竅建構搜尋查詢:
- 如果搜尋運算式中包含空格,請使用引號將其括住。例如
"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 |
將 x 做為資源 ID 的子字串比對。 |
displayname:x |
將 x 做為資源顯示名稱的子字串比對。 |
column:x |
將 x 做為資源結構定義中資料欄名稱 (或巢狀資料欄名稱) 的子字串比對。 |
description:x |
將 x 做為資源說明中的符記比對。 |
label:bar |
符合條件的 BigQuery 資源必須具有標籤 (具有某些值),且標籤鍵包含 bar 做為子字串。 |
label=bar |
比對具有標籤 (具有某些值) 的 BigQuery 資源,且標籤鍵等於 bar 字串。 |
label:bar:x |
比對附加至 BigQuery 資源的標籤 (鍵為 bar) 值中的子字串 x。 |
label=foo:bar |
符合鍵等於 foo 且鍵值等於 bar 的 BigQuery 資源。 |
label.foo=bar |
符合鍵等於 foo 且鍵值等於 bar 的 BigQuery 資源。 |
label.foo |
比對具有標籤的 BigQuery 資源,標籤的鍵等於 foo (以字串形式表示)。 |
type=TYPE |
比對特定項目類型或類型別名的資源。 |
projectid:bar |
比對 Google Cloud 專案中的資源,這些專案的 ID 包含 bar 做為子字串。 |
parent:x |
將 x 做為資源階層式路徑的子字串比對。父項路徑是父項資源的 fully_qualified_name。 |
orgid=number |
符合 ID 值為 number 的機構內資源。 Google Cloud |
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 中的中繼資料管理功能。
- 瞭解如何使用層面,透過中繼資料擴充項目和項目連結。
- 瞭解如何管理項目及擷取自訂來源。