Strumento: get_dataset_info
Recuperare le informazioni sui metadati di un set di dati BigQuery.
Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP get_dataset_info.
| Curl Request |
|---|
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 }' |
Schema di input
Richiesta di un set di dati.
| Rappresentazione JSON |
|---|
{ "projectId": string, "datasetId": string } |
| Campi | |
|---|---|
projectId |
Obbligatorio. ID progetto della richiesta del set di dati. |
datasetId |
Obbligatorio. L'ID del set di dati della richiesta. |
Schema di output
Rappresenta un set di dati BigQuery.
| Rappresentazione JSON |
|---|
{ "kind": string, "etag": string, "id": string, "selfLink": string, "datasetReference": { object ( |
| Campi | |
|---|---|
kind |
Solo output. Il tipo di risorsa. |
etag |
Solo output. Un hash della risorsa. |
id |
Solo output. Il nome univoco completo del set di dati nel formato projectId:datasetId. Il nome del set di dati senza il nome del progetto è riportato nel campo datasetId. Quando crei un nuovo set di dati, lascia vuoto questo campo e specifica invece il campo datasetId. |
selfLink |
Solo output. Un URL che può essere utilizzato per accedere di nuovo alla risorsa. Puoi utilizzare questo URL nelle richieste Get o Update alla risorsa. |
datasetReference |
Obbligatorio. Un riferimento che identifica il set di dati. |
friendlyName |
Facoltativo. Un nome descrittivo per il set di dati. |
description |
Facoltativo. Una descrizione intuitiva del set di dati. |
defaultTableExpirationMs |
Facoltativo. La durata predefinita di tutte le tabelle nel set di dati, in millisecondi. Il valore minimo della durata è 3600000 millisecondi (un'ora). Per cancellare una scadenza predefinita esistente con una richiesta PATCH, imposta il valore su 0. Una volta impostata questa proprietà, tutte le tabelle appena create nel set di dati avranno una proprietà expirationTime impostata sull'ora di creazione più il valore di questa proprietà e la modifica del valore influirà solo sulle nuove tabelle, non su quelle esistenti. Quando viene raggiunto expirationTime per una determinata tabella, questa viene eliminata automaticamente. Se expirationTime di una tabella viene modificato o rimosso prima della scadenza della tabella oppure se fornisci un valore expirationTime esplicito durante la creazione di una tabella, questo valore ha la precedenza sul tempo di scadenza predefinito indicato da questa proprietà. |
defaultPartitionExpirationMs |
Questa scadenza della partizione predefinita, espressa in millisecondi. Quando vengono create nuove tabelle partizionate per ora in un set di dati in cui è impostata questa proprietà, la tabella erediterà questo valore, propagato come proprietà Quando crei una tabella partizionata, se |
labels |
Le etichette associate a questo set di dati. Puoi utilizzarli per organizzare e raggruppare i set di dati. Puoi impostare questa proprietà quando inserisci o aggiorni un set di dati. Per saperne di più, consulta Creazione e aggiornamento delle etichette dei set di dati. Un oggetto contenente un elenco di coppie |
access[] |
Facoltativo. Un array di oggetti che definiscono l'accesso al set di dati per una o più entità. Puoi impostare questa proprietà quando inserisci o aggiorni un set di dati per controllare chi è autorizzato ad accedere ai dati. Se non specificato al momento della creazione del set di dati, BigQuery aggiunge l'accesso predefinito al set di dati per le seguenti entità: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER; Se applichi una patch a un set di dati, questo campo viene sovrascritto dal campo di accesso del set di dati a cui è stata applicata la patch. Per aggiungere entità, devi fornire l'intero array di accesso esistente, oltre a tutte le nuove entità che vuoi aggiungere. |
creationTime |
Solo output. L'ora in cui è stato creato questo set di dati, in millisecondi trascorsi dall'epoca. |
lastModifiedTime |
Solo output. La data dell'ultima modifica di questo set di dati, in millisecondi dall'epoca. |
location |
La posizione geografica in cui deve risiedere il set di dati. Consulta la pagina https://cloud.google.com/bigquery/docs/locations per le località supportate. |
defaultEncryptionConfiguration |
La chiave di crittografia predefinita per tutte le tabelle del set di dati. Una volta impostata questa proprietà, la chiave di crittografia di tutte le tabelle appena create nel set di dati viene impostata su questo valore, a meno che la richiesta o la query di creazione della tabella non esegua l'override esplicito della chiave. |
satisfiesPzs |
Solo output. Riservato per l'uso futuro. |
satisfiesPzi |
Solo output. Riservato per l'uso futuro. |
type |
Solo output. Uguale a
|
linkedDatasetSource |
Facoltativo. Il riferimento al set di dati di origine quando il set di dati è di tipo LINKED. Per tutti gli altri tipi di set di dati non è impostato. Questo campo non può essere aggiornato una volta impostato. Qualsiasi tentativo di aggiornamento di questo campo utilizzando le operazioni API Update e Patch verrà ignorato. |
linkedDatasetMetadata |
Solo output. Metadati relativi al LinkedDataset. Compilato quando il tipo di set di dati è LINKED. |
externalDatasetReference |
Facoltativo. Riferimento a un set di dati esterno di sola lettura definito nei cataloghi di dati al di fuori di BigQuery. Compilato quando il tipo di set di dati è EXTERNAL. |
externalCatalogDatasetOptions |
Facoltativo. Opzioni che definiscono i set di dati compatibili con l'open source presenti nel catalogo BigQuery. Contiene i metadati del database open source, dello schema o dello spazio dei nomi rappresentati dal set di dati corrente. |
isCaseInsensitive |
Facoltativo. TRUE se il set di dati e i nomi delle tabelle non fanno distinzione tra maiuscole e minuscole, altrimenti FALSE. Per impostazione predefinita, questo valore è FALSE, il che significa che il set di dati e i nomi delle tabelle sono sensibili alle maiuscole. Questo campo non influisce sui riferimenti alle routine. |
defaultCollation |
Facoltativo. Definisce la specifica delle regole di confronto predefinite delle tabelle future create nel set di dati. Se una tabella viene creata in questo set di dati senza regole di confronto predefinite a livello di tabella, la tabella eredita le regole di confronto predefinite del set di dati, che vengono applicate ai campi stringa per i quali non sono specificate regole di confronto esplicite. Una modifica a questo campo interessa solo le tabelle create successivamente e non altera quelle esistenti. Sono supportati i seguenti valori:
|
defaultRoundingMode |
Facoltativo. Definisce la specifica della modalità di arrotondamento predefinita delle nuove tabelle create all'interno di questo set di dati. Durante la creazione della tabella, se questo campo viene specificato, la tabella all'interno di questo set di dati erediterà la modalità di arrotondamento predefinita del set di dati. L'impostazione della modalità di arrotondamento predefinita in una tabella sostituisce questa opzione. Le tabelle esistenti nel set di dati non sono interessate. Se le colonne vengono definite durante la creazione della tabella, erediteranno immediatamente la modalità di arrotondamento predefinita della tabella, se non diversamente specificato. |
maxTimeTravelHours |
Facoltativo. Definisce la finestra di spostamento cronologico in ore. Il valore può essere compreso tra 48 e 168 ore (da 2 a 7 giorni). Se non è impostato, il valore predefinito è 168 ore. |
tags[] |
Solo output. Tag per il set di dati. Per fornire i tag come input, utilizza il campo |
storageBillingModel |
Facoltativo. Aggiorna storage_billing_model per il set di dati. |
restrictions |
Facoltativo. Solo output. Configurazione delle limitazioni per tutte le tabelle e il set di dati. Se impostato, limita determinati accessi al set di dati e a tutte le relative tabelle in base alla configurazione. Per ulteriori dettagli, consulta la sezione Egress dei dati. |
resourceTags |
Facoltativo. I tag associati a questo set di dati. Le chiavi dei tag sono univoche a livello globale. La chiave del tag deve essere nel formato con spazio dei nomi, ad esempio "123456789012/environment", dove 123456789012 è l'ID della risorsa organizzazione o progetto principale per questa chiave del tag. Il valore tag deve essere il nome breve, ad esempio "Production". Per ulteriori dettagli, consulta la sezione Definizioni dei tag. Un oggetto contenente un elenco di coppie |
| Rappresentazione JSON |
|---|
{ "datasetId": string, "projectId": string, "datasetIdAlternative": [ string ], "projectIdAlternative": [ string ] } |
| Campi | |
|---|---|
datasetId |
Obbligatorio. Un ID univoco per questo set di dati, senza il nome del progetto. L'ID deve contenere solo lettere (a-z, A-Z), numeri (0-9) o trattini bassi (_). La lunghezza massima è di 1024 caratteri. |
projectId |
Facoltativo. L'ID del progetto contenente questo set di dati. |
datasetIdAlternative[] |
Questo campo non deve essere utilizzato. |
projectIdAlternative[] |
Questo campo non deve essere utilizzato. |
| Rappresentazione JSON |
|---|
{ "value": string } |
| Campi | |
|---|---|
value |
Il valore stringa. |
| Rappresentazione JSON |
|---|
{ "value": string } |
| Campi | |
|---|---|
value |
Il valore int64. |
| Rappresentazione JSON |
|---|
{ "key": string, "value": string } |
| Campi | |
|---|---|
key |
|
value |
|
| Rappresentazione JSON |
|---|
{ "role": string, "userByEmail": string, "groupByEmail": string, "domain": string, "specialGroup": string, "iamMember": string, "view": { object ( |
| Campi | |
|---|---|
role |
Un ID ruolo IAM da concedere all'utente, al gruppo o al dominio specificato in questa voce di accesso. Verranno applicate le seguenti mappature legacy:
Questo campo accetterà uno qualsiasi dei formati sopra indicati, ma restituirà solo il formato precedente. Ad esempio, se imposti questo campo su "roles/bigquery.dataOwner", verrà restituito come "OWNER". |
userByEmail |
[Scegli un'opzione] Un indirizzo email di un utente a cui concedere l'accesso. Ad esempio: fred@example.com. Corrisponde al membro del criterio IAM "user:EMAIL" o "serviceAccount:EMAIL". |
groupByEmail |
[Scegli un'opzione] Un indirizzo email di un gruppo Google a cui concedere l'accesso. Mappa al membro del criterio IAM "group:GROUP". |
domain |
[Scegli un'opzione] Un dominio a cui concedere l'accesso. A tutti gli utenti che hanno eseguito l'accesso con il dominio specificato verrà concesso l'accesso specificato. Esempio: "example.com". Corrisponde al membro del criterio IAM "domain:DOMAIN". |
specialGroup |
[Scegli un'opzione] Un gruppo speciale a cui concedere l'accesso. I valori possibili sono:
Esegue la mappatura dei membri IAM con nomi simili. |
iamMember |
[Scegli un'opzione] Un altro tipo di membro che compare nel criterio IAM, ma non è un utente, un gruppo, un dominio o un gruppo speciale. |
view |
[Scegli una delle seguenti opzioni] Una vista di un altro set di dati a cui concedere l'accesso. Le query eseguite su questa visualizzazione avranno accesso in lettura a visualizzazioni, tabelle e routine in questo set di dati. Il campo ruolo non è obbligatorio quando questo campo è impostato. Se la vista viene aggiornata da un utente, l'accesso deve essere concesso nuovamente tramite un'operazione di aggiornamento. |
routine |
[Scegli una delle seguenti opzioni] Una routine di un altro set di dati a cui concedere l'accesso. Le query eseguite su questa routine avranno accesso in lettura a viste, tabelle e routine in questo set di dati. Al momento è supportata solo la funzione definita dall'utente. Il campo ruolo non è obbligatorio quando questo campo è impostato. Se la routine viene aggiornata da un utente, l'accesso alla routine deve essere concesso di nuovo tramite un'operazione di aggiornamento. |
dataset |
[Scegli un'opzione] Una concessione che autorizza tutte le risorse di un determinato tipo in un determinato set di dati ad accedere a questo set di dati. Al momento sono supportate solo le visualizzazioni. Il campo ruolo non è obbligatorio quando questo campo è impostato. Se il set di dati viene eliminato e ricreato, l'accesso deve essere concesso di nuovo tramite un'operazione di aggiornamento. |
condition |
Facoltativo. Condizione per l'associazione. Se l'espressione CEL in questo campo è vera, questo binding di accesso verrà preso in considerazione |
| Rappresentazione JSON |
|---|
{ "projectId": string, "datasetId": string, "tableId": string, "projectIdAlternative": [ string ], "datasetIdAlternative": [ string ], "tableIdAlternative": [ string ] } |
| Campi | |
|---|---|
projectId |
Obbligatorio. L'ID del progetto contenente questa tabella. |
datasetId |
Obbligatorio. L'ID del set di dati contenente questa tabella. |
tableId |
Obbligatorio. L'ID della tabella. L'ID può contenere caratteri Unicode nelle categorie L (lettera), M (segno), N (numero), Pc (connettore, incluso il trattino basso), Pd (trattino) e Zs (spazio). Per ulteriori informazioni, consulta la sezione Categoria generale. La lunghezza massima è di 1024 caratteri. Alcune operazioni consentono di aggiungere un suffisso all'ID tabella con un decoratore di partizione, ad esempio |
projectIdAlternative[] |
Questo campo non deve essere utilizzato. |
datasetIdAlternative[] |
Questo campo non deve essere utilizzato. |
tableIdAlternative[] |
Questo campo non deve essere utilizzato. |
| Rappresentazione JSON |
|---|
{ "projectId": string, "datasetId": string, "routineId": string } |
| Campi | |
|---|---|
projectId |
Obbligatorio. L'ID del progetto contenente questa routine. |
datasetId |
Obbligatorio. L'ID del set di dati contenente questa routine. |
routineId |
Obbligatorio. L'ID della routine. L'ID deve contenere solo lettere (a-z, A-Z), numeri (0-9) o trattini bassi (_). La lunghezza massima è di 256 caratteri. |
| Rappresentazione JSON |
|---|
{ "dataset": { object ( |
| Campi | |
|---|---|
dataset |
Il set di dati a cui si applica questa voce |
targetTypes[] |
A quali risorse del set di dati si applica questa voce. Al momento sono supportate solo le visualizzazioni, ma in futuro potrebbero essere aggiunti altri tipi di target. |
| Rappresentazione JSON |
|---|
{ "expression": string, "title": string, "description": string, "location": string } |
| Campi | |
|---|---|
expression |
Rappresentazione testuale di un'espressione nella sintassi Common Expression Language. |
title |
Facoltativo. Titolo dell'espressione, ovvero una breve stringa che ne descrive lo scopo. Può essere utilizzato, ad esempio, nelle UI che consentono di inserire l'espressione. |
description |
Facoltativo. Descrizione dell'espressione. Si tratta di un testo più lungo che descrive l'espressione, ad esempio quando ci si passa il mouse sopra in una UI. |
location |
Facoltativo. Stringa che indica la posizione dell'espressione per la segnalazione degli errori, ad esempio un nome file e una posizione nel file. |
| Rappresentazione JSON |
|---|
{ "kmsKeyName": string } |
| Campi | |
|---|---|
kmsKeyName |
Facoltativo. Descrive la chiave di crittografia Cloud KMS che verrà utilizzata per proteggere la tabella BigQuery di destinazione. Il service account BigQuery associato al tuo progetto richiede l'accesso a questa chiave di crittografia. |
| Rappresentazione JSON |
|---|
{ "value": boolean } |
| Campi | |
|---|---|
value |
Il valore booleano. |
| Rappresentazione JSON |
|---|
{
"sourceDataset": {
object ( |
| Campi | |
|---|---|
sourceDataset |
Il riferimento al set di dati di origine contiene numeri di progetto e non ID progetto. |
| Rappresentazione JSON |
|---|
{
"linkState": enum ( |
| Campi | |
|---|---|
linkState |
Solo output. Specifica se il set di dati collegato è attualmente in uno stato collegato o meno. |
| Rappresentazione JSON |
|---|
{ "externalSource": string, "connection": string } |
| Campi | |
|---|---|
externalSource |
Obbligatorio. Origine esterna che supporta questo set di dati. |
connection |
Obbligatorio. L'ID connessione utilizzato per accedere a external_source. Formato: projects/{project_id}/locations/{location_id}/connections/{connection_id} |
| Rappresentazione JSON |
|---|
{ "parameters": { string: string, ... }, "defaultStorageLocationUri": string } |
| Campi | |
|---|---|
parameters |
Facoltativo. Una mappa di coppie chiave-valore che definiscono i parametri e le proprietà dello schema open source. Dimensione massima di 2 MiB. Un oggetto contenente un elenco di coppie |
defaultStorageLocationUri |
Facoltativo. L'URI della posizione di archiviazione per tutte le tabelle nel set di dati. Equivalente a locationUri del database del metastore Hive. Lunghezza massima di 1024 caratteri. |
| Rappresentazione JSON |
|---|
{ "key": string, "value": string } |
| Campi | |
|---|---|
key |
|
value |
|
| Rappresentazione JSON |
|---|
{ "tagKey": string, "tagValue": string } |
| Campi | |
|---|---|
tagKey |
Obbligatorio. Il nome descrittivo con spazio dei nomi della chiave tag, ad esempio "12345/environment", dove 12345 è l'ID organizzazione. |
tagValue |
Obbligatorio. Il nome breve descrittivo del valore tag, ad esempio "produzione". |
| Rappresentazione JSON |
|---|
{
"type": enum ( |
| Campi | |
|---|---|
type |
Solo output. Specifica il tipo di limitazione del set di dati/della tabella. |
| Rappresentazione JSON |
|---|
{ "key": string, "value": string } |
| Campi | |
|---|---|
key |
|
value |
|
Annotazioni dello strumento
Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌