工具:get_dataset_info
取得 BigQuery 資料集的中繼資料資訊。
下列範例示範如何使用 curl 叫用 get_dataset_info MCP 工具。
| Curl 要求 |
|---|
curl --location 'https://bigquery.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "get_dataset_info", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
輸入結構定義
要求資料集。
| JSON 表示法 |
|---|
{ "projectId": string, "datasetId": string } |
| 欄位 | |
|---|---|
projectId |
這是必要旗標,資料集要求的專案 ID。 |
datasetId |
這是必要旗標,資料集要求的資料集 ID。 |
輸出內容的結構定義
代表 BigQuery 資料集。
| JSON 表示法 |
|---|
{ "kind": string, "etag": string, "id": string, "selfLink": string, "datasetReference": { object ( |
| 欄位 | |
|---|---|
kind |
僅供輸出。資源類型。 |
etag |
僅供輸出。資源的雜湊值。 |
id |
僅供輸出。資料集的完整專屬名稱,格式為「projectId:datasetId」。不含專案名稱的資料集名稱會在 datasetId 資料欄內提供。建立新資料集時,請將此資料欄留空,並改為指定 datasetId 資料欄。 |
selfLink |
僅供輸出。可用於再次存取資源的網址。您可以在 Get 或 Update 要求中使用這個資源的網址。 |
datasetReference |
這是必要旗標,可識別資料集的參照。 |
friendlyName |
(選用步驟) 資料集的描述性名稱。 |
description |
(選用步驟) 資料集的說明,方便使用者瞭解。 |
defaultTableExpirationMs |
(選用步驟) 資料集中所有資料表的預設生命週期 (以毫秒為單位)。生命週期值下限為 3600000 毫秒 (一小時)。如要透過 PATCH 要求清除現有的預設到期時間,請將值設為 0。設定這項屬性後,資料集中所有新建立的資料表都會將 expirationTime 屬性設為建立時間加上這項屬性的值,且變更值只會影響新資料表,不會影響現有資料表。如果資料表達到 expirationTime,系統會自動刪除該資料表。如果在資料表到期前修改或移除 expirationTime,或是在建立資料表時提供明確的 expirationTime,則該值會優先於這個屬性所指出的預設到期時間。 |
defaultPartitionExpirationMs |
預設分區到期時間 (以毫秒為單位)。 在已設定這項屬性的資料集中建立新的時間分區資料表時,資料表會沿用這個值,並做為新資料表的 建立分區資料表時,如果設定 |
labels |
與這個資料集相關聯的標籤。您可以使用這些標籤來整理及分組資料集。插入或更新資料集時,可以設定這項屬性。詳情請參閱「建立及更新資料集標籤」。 包含 |
access[] |
(選用步驟) 物件陣列,定義一或多個實體的資料集存取權。插入或更新資料集時,您可以設定這項屬性,控管哪些使用者可以存取資料。如果未在建立資料集時指定,BigQuery 會為下列實體新增預設資料集存取權:access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [資料集建立者電子郵件地址]; access.role: OWNER; 如果您修補資料集,這個欄位會遭到修補資料集的存取權欄位覆寫。如要新增實體,除了要新增的實體外,您也必須提供整個現有存取權陣列。 |
creationTime |
僅供輸出。這個資料集的建立時間,以從 Epoch 紀元時間算起的毫秒數表示。 |
lastModifiedTime |
僅供輸出。這個資料集上次修改的日期,以自記錄週期後的毫秒數表示。 |
location |
資料集應位於的地理位置。如要瞭解支援的地區,請參閱 https://cloud.google.com/bigquery/docs/locations。 |
defaultEncryptionConfiguration |
資料集中所有資料表的預設加密金鑰。設定這項屬性後,資料集中所有新建立的資料表都會使用這個值做為加密金鑰,除非資料表建立要求或查詢明確覆寫金鑰。 |
satisfiesPzs |
僅供輸出。保留欄位,供日後使用。 |
satisfiesPzi |
僅供輸出。保留欄位,供日後使用。 |
type |
僅供輸出。與
|
linkedDatasetSource |
(選用步驟) 如果資料集類型為 LINKED,則為來源資料集參照。其他資料集類型則不會設定。設定後即無法更新這個欄位。如果嘗試使用 Update 和 Patch API 作業更新這個欄位,系統會忽略相關要求。 |
linkedDatasetMetadata |
僅供輸出。LinkedDataset 的相關中繼資料。資料集類型為 LINKED 時填寫。 |
externalDatasetReference |
(選用步驟) 參照 BigQuery 以外資料目錄中定義的唯讀外部資料集。資料集類型為 EXTERNAL 時填寫。 |
externalCatalogDatasetOptions |
(選用步驟) 定義 BigQuery 目錄中與開放原始碼相容的資料集。包含目前資料集代表的開放原始碼資料庫、結構定義或命名空間的中繼資料。 |
isCaseInsensitive |
(選用步驟) 如果資料集及其資料表名稱不區分大小寫,則為 TRUE,否則為 FALSE。根據預設,這個值為 FALSE,表示資料集和資料表名稱會區分大小寫。這個欄位不會影響常式參照。 |
defaultCollation |
(選用步驟) 定義資料集中未來建立資料表的預設定序規格。如果在這個資料集中建立資料表時未指定資料表層級的預設定序,則資料表會繼承資料集的預設定序,並套用至未明確指定定序的字串欄位。變更這個欄位只會影響之後建立的資料表,不會變更現有資料表。支援的值如下:
|
defaultRoundingMode |
(選用步驟) 定義這個資料集內建立的新資料表預設捨入模式規格。建立資料表時,如果指定這個欄位,資料集中的資料表就會沿用資料集的預設捨入模式。在表格中設定預設捨入模式會覆寫這個選項。資料集中的現有表格不會受到影響。如果在建立資料表時定義資料欄,除非另有指定,否則資料欄會立即沿用資料表的預設捨入模式。 |
maxTimeTravelHours |
(選用步驟) 以小時為單位定義時間回溯期。這個值可以介於 48 至 168 小時 (2 至 7 天)。如未設定,預設值為 168 小時。 |
tags[] |
僅供輸出。資料集的標記。如要提供標記做為輸入內容,請使用 |
storageBillingModel |
(選用步驟) 更新資料集的 storage_billing_model。 |
restrictions |
(選用步驟) 僅供輸出。所有資料表和資料集的限制設定。如果設定了這項屬性,系統會根據設定限制資料集和所有資料表的特定存取權。詳情請參閱「資料輸出」。 |
resourceTags |
(選用步驟) 附加至這個資料集的標記。標記鍵在全域範圍內不得重複。標記鍵應採用命名空間格式,例如「123456789012/environment」,其中 123456789012 是這個標記鍵的父項機構或專案資源 ID。標記值應為簡短名稱,例如「Production」。詳情請參閱「標記定義」。 包含 |
| JSON 表示法 |
|---|
{ "datasetId": string, "projectId": string, "datasetIdAlternative": [ string ], "projectIdAlternative": [ string ] } |
| 欄位 | |
|---|---|
datasetId |
這是必要旗標,此資料集不含專案名稱的唯一 ID。ID 只能包含英文字母 (a-z、A-Z)、數字 (0-9) 或底線 (_),長度上限為 1,024 個半形字元。 |
projectId |
(選用步驟) 這個資料集所屬專案的 ID。 |
datasetIdAlternative[] |
請勿使用這個欄位。 |
projectIdAlternative[] |
請勿使用這個欄位。 |
| JSON 表示法 |
|---|
{ "value": string } |
| 欄位 | |
|---|---|
value |
字串值。 |
| JSON 表示法 |
|---|
{ "value": string } |
| 欄位 | |
|---|---|
value |
int64 值。 |
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
| JSON 表示法 |
|---|
{ "role": string, "userByEmail": string, "groupByEmail": string, "domain": string, "specialGroup": string, "iamMember": string, "view": { object ( |
| 欄位 | |
|---|---|
role |
應授予這個存取權項目的使用者、群組或網域的 IAM 角色 ID。系統會套用下列舊版對應:
這個欄位會接受上述任一格式,但只會傳回舊版格式。舉例來說,如果您將這個欄位設為「roles/bigquery.dataOwner」,系統會以「OWNER」的形式傳回。 |
userByEmail |
[選擇一項] 要授予存取權的使用者電子郵件地址。例如:fred@example.com。對應至 IAM 政策成員「user:EMAIL」或「serviceAccount:EMAIL」。 |
groupByEmail |
[選擇其中一項] 要授予存取權的 Google 群組電子郵件地址。對應至 IAM 政策成員「group:GROUP」。 |
domain |
[選擇] 授予存取權的網域。以此指定網域登入的任何者將具有指定之存取權。例如:「example.com」。對應至身分與存取權管理政策成員「domain:DOMAIN」。 |
specialGroup |
[選擇一項] 授予存取權的特殊群組。可能的值包括:
對應至名稱類似的 IAM 成員。 |
iamMember |
[選擇其中一項] IAM 政策中出現的其他類型成員,但不是使用者、群組、網域或特殊群組。 |
view |
[選擇一項] 要授予存取權的其他資料集檢視畫面。對該檢視表執行的查詢將擁有這個資料集中檢視表/資料表/處理常式的讀取權限。設定這個欄位時,不需要角色欄位。如果任何使用者更新該檢視區塊,您必須透過更新作業再次授予檢視區塊的存取權。 |
routine |
[Pick one] A routine from a different dataset to grant access to. 針對該處理常式執行的查詢,將具有這個資料集中檢視表/資料表/處理常式的讀取權限。目前僅支援 UDF。設定這個欄位時,不需要角色欄位。如果任何使用者更新了該日常安排,您就必須透過更新作業再次授予日常安排的存取權。 |
dataset |
[選擇其中一項] 授權特定資料集中特定類型的所有資源存取這個資料集。目前僅支援檢視畫面。設定這個欄位時,不需要角色欄位。如果該資料集遭到刪除並重新建立,就必須透過更新作業再次授予存取權。 |
condition |
選用。繫結條件。如果這個欄位中的 CEL 運算式為 true,系統會將這個存取權繫結視為 |
| JSON 表示法 |
|---|
{ "projectId": string, "datasetId": string, "tableId": string, "projectIdAlternative": [ string ], "datasetIdAlternative": [ string ], "tableIdAlternative": [ string ] } |
| 欄位 | |
|---|---|
projectId |
這是必要旗標,包含這個資料表的專案 ID。 |
datasetId |
這是必要旗標,包含這個資料表的資料集 ID。 |
tableId |
這是必要旗標,資料表的 ID。ID 可包含類別 L (字母)、M (標記)、N (數字)、Pc (連接符,包括底線)、Pd (破折號) 和 Zs (空格) 的 Unicode 字元。詳情請參閱「一般類別」。長度上限為 1,024 個半形字元。某些作業允許在資料表 ID 後方加上分區修飾符,例如 |
projectIdAlternative[] |
請勿使用這個欄位。 |
datasetIdAlternative[] |
請勿使用這個欄位。 |
tableIdAlternative[] |
請勿使用這個欄位。 |
| JSON 表示法 |
|---|
{ "projectId": string, "datasetId": string, "routineId": string } |
| 欄位 | |
|---|---|
projectId |
這是必要旗標,包含此常式的專案 ID。 |
datasetId |
這是必要旗標,包含此常式的資料集 ID。 |
routineId |
這是必要旗標,處理常式的 ID。ID 只能包含英文字母 (a-z、A-Z)、數字 (0-9) 或底線 (_),長度上限為 256 個半形字元。 |
| JSON 表示法 |
|---|
{ "dataset": { object ( |
| 欄位 | |
|---|---|
dataset |
這個項目適用的資料集 |
targetTypes[] |
這個項目適用的資料集資源。目前僅支援觀看次數,但日後可能會新增其他目標類型。 |
| JSON 表示法 |
|---|
{ "expression": string, "title": string, "description": string, "location": string } |
| 欄位 | |
|---|---|
expression |
使用一般運算語言語法的運算式文字表示法。 |
title |
選用。運算式的標題,即說明其用途的簡短字串。這可用在允許輸入運算式的 UI 中。 |
description |
選用。運算式的說明。這是一段較長的文字,用於說明運算式。例如,使用者在 UI 中將游標懸停在運算式上方時,即可顯示說明文字。 |
location |
選用。指出要提報錯誤的運算式所在位置,例如檔案名稱及檔案內的位置。 |
| JSON 表示法 |
|---|
{ "kmsKeyName": string } |
| 欄位 | |
|---|---|
kmsKeyName |
(選用步驟) 說明用來保護目的地 BigQuery 資料表的 Cloud KMS 加密金鑰。與專案相關聯的 BigQuery 服務帳戶必須有權存取這個加密金鑰。 |
| JSON 表示法 |
|---|
{ "value": boolean } |
| 欄位 | |
|---|---|
value |
布林值。 |
| JSON 表示法 |
|---|
{
"sourceDataset": {
object ( |
| 欄位 | |
|---|---|
sourceDataset |
來源資料集參照包含專案編號,而非專案 ID。 |
| JSON 表示法 |
|---|
{
"linkState": enum ( |
| 欄位 | |
|---|---|
linkState |
僅供輸出。指定連結資料集目前是否處於連結狀態。 |
| JSON 表示法 |
|---|
{ "externalSource": string, "connection": string } |
| 欄位 | |
|---|---|
externalSource |
這是必要旗標,支援這個資料集的外部來源。 |
connection |
這是必要旗標,用於存取 external_source 的連線 ID。 格式:projects/{project_id}/locations/{location_id}/connections/{connection_id} |
| JSON 表示法 |
|---|
{ "parameters": { string: string, ... }, "defaultStorageLocationUri": string } |
| 欄位 | |
|---|---|
parameters |
(選用步驟) 鍵/值組合對應表,定義開放原始碼結構定義的參數和屬性。大小上限為 2 MiB。 包含 |
defaultStorageLocationUri |
(選用步驟) 資料集中所有資料表的儲存位置 URI。等同於 Hive 中繼存放區的 databaseLocationUri。長度上限為 1024 個半形字元。 |
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
| JSON 表示法 |
|---|
{ "tagKey": string, "tagValue": string } |
| 欄位 | |
|---|---|
tagKey |
這是必要旗標,標記鍵的命名空間友善名稱,例如「12345/environment」,其中 12345 是機構 ID。 |
tagValue |
這是必要旗標,標記值的簡短名稱,例如「production」。 |
| JSON 表示法 |
|---|
{
"type": enum ( |
| 欄位 | |
|---|---|
type |
僅供輸出。指定資料集/表格限制類型。 |
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
工具註解
破壞性提示:❌ | 等冪提示:✅ | 唯讀提示:✅ | 開放世界提示:❌