Strumento: query_compilation_actions
Restituisce le azioni del risultato della compilazione per un determinato risultato della compilazione di Dataform.
Il valore parametro name deve essere nel formato projects/{project_id}/locations/{location}/repositories/{repository}/compilationResults/{compilation_result}.
Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP query_compilation_actions.
| Richiesta curl |
|---|
curl --location 'https://dataform.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "query_compilation_actions", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
Messaggio di richiesta di QueryCompilationResultActions.
QueryCompilationResultActionsRequest
| Rappresentazione JSON |
|---|
{ "name": string, "pageSize": integer, "pageToken": string, "filter": string } |
| Campi | |
|---|---|
name |
Obbligatorio. Il nome del risultato della compilazione. |
pageSize |
Facoltativo. Il numero massimo di risultati di compilazione da restituire. Il server potrebbe restituire meno elementi di quelli richiesti. Se non specificato, il server sceglierà un valore predefinito appropriato. |
pageToken |
Facoltativo. Token di pagina ricevuto da una precedente chiamata Durante la paginazione, tutti gli altri parametri forniti a |
filter |
Facoltativo. Filtro facoltativo per l'elenco restituito. Al momento, il filtro è supportato solo per il campo |
Schema di output
Messaggio di risposta QueryCompilationResultActions.
QueryCompilationResultActionsResponse
| Rappresentazione JSON |
|---|
{
"compilationResultActions": [
{
object ( |
| Campi | |
|---|---|
compilationResultActions[] |
Elenco delle azioni sui risultati di compilazione. |
nextPageToken |
Un token, che può essere inviato come |
CompilationResultAction
| Rappresentazione JSON |
|---|
{ "target": { object ( |
| Campi | |
|---|---|
target |
L'identificatore di questa azione. Unico all'interno del risultato della compilazione. |
canonicalTarget |
L'identificatore dell'azione se il progetto è stato compilato senza override configurati. Unico all'interno del risultato della compilazione. |
filePath |
Il percorso completo, incluso il nome file, in cui si trova questa azione, relativo alla radice dello spazio di lavoro. |
Campo unione compiled_object. L'oggetto compilato. compiled_object può essere solo uno dei seguenti tipi: |
|
relation |
La relazione del database creata/aggiornata da questa azione. |
operations |
Le operazioni del database eseguite da questa azione. |
assertion |
L'asserzione eseguita da questa azione. |
declaration |
La dichiarazione dichiarata da questa azione. |
notebook |
Il notebook eseguito da questa azione. |
dataPreparation |
La preparazione dei dati eseguita da questa azione. |
Campo unione
|
|
internalMetadata |
Solo output. Tutte le informazioni sui metadati utilizzate internamente per pubblicare la risorsa. Ad esempio, timestamp, flag, campi di stato e così via. Il formato di questo campo è una stringa JSON. |
Relazione
| Rappresentazione JSON |
|---|
{ "dependencyTargets": [ { object ( |
| Campi | |
|---|---|
dependencyTargets[] |
Un elenco di azioni da cui dipende questa azione. |
disabled |
Indica se questa azione è disattivata (ovvero non deve essere eseguita). |
tags[] |
Tag arbitrari definiti dall'utente per questa azione. |
relationDescriptor |
Descrittore della relazione e delle relative colonne. |
relationType |
Il tipo di questa relazione. |
selectQuery |
La query SELECT che restituisce le righe che questa relazione deve contenere. |
preOperations[] |
Istruzioni SQL da eseguire prima di creare la relazione. |
postOperations[] |
Istruzioni SQL da eseguire dopo la creazione della relazione. |
incrementalTableConfig |
Configura le impostazioni di |
partitionExpression |
L'espressione SQL utilizzata per partizionare la relazione. |
clusterExpressions[] |
Un elenco di colonne o espressioni SQL utilizzate per raggruppare la tabella. |
partitionExpirationDays |
Imposta la scadenza della partizione in giorni. |
requirePartitionFilter |
Specifica se le query su questa tabella devono includere un filtro predicato che filtra in base alla colonna di partizionamento. |
additionalOptions |
Opzioni aggiuntive che verranno fornite come coppie chiave/valore nella clausola options di un'istruzione create table/view. Per saperne di più sulle opzioni supportate, consulta la pagina https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language. Un oggetto contenente un elenco di coppie |
connection |
Facoltativo. La connessione che specifica le credenziali da utilizzare per leggere e scrivere nell'archiviazione esterna, ad esempio Cloud Storage. La connessione può avere il formato |
tableFormat |
Facoltativo. Il formato della tabella BigQuery. |
fileFormat |
Facoltativo. Il formato del file per la tabella BigQuery. |
storageUri |
Facoltativo. Il prefisso della posizione completa della cartella esterna in cui sono archiviati i dati della tabella. L'URI deve essere nel formato |
Target
| Rappresentazione JSON |
|---|
{ "database": string, "schema": string, "name": string } |
| Campi | |
|---|---|
database |
Facoltativo. Il database dell'azione (ID progetto Google Cloud) . |
schema |
Facoltativo. Lo schema dell'azione (ID set di dati BigQuery), all'interno di |
name |
Facoltativo. Il nome dell'azione, compreso tra |
RelationDescriptor
| Rappresentazione JSON |
|---|
{
"description": string,
"columns": [
{
object ( |
| Campi | |
|---|---|
description |
Una descrizione testuale della relazione. |
columns[] |
Un elenco di descrizioni delle colonne all'interno della relazione. |
bigqueryLabels |
Un insieme di etichette BigQuery da applicare alla relazione. Un oggetto contenente un elenco di coppie |
ColumnDescriptor
| Rappresentazione JSON |
|---|
{ "path": [ string ], "description": string, "bigqueryPolicyTags": [ string ] } |
| Campi | |
|---|---|
path[] |
L'identificatore della colonna. Ogni voce in |
description |
Una descrizione testuale della colonna. |
bigqueryPolicyTags[] |
Un elenco di tag di criteri BigQuery che verranno applicati alla colonna. |
BigqueryLabelsEntry
| Rappresentazione JSON |
|---|
{ "key": string, "value": string } |
| Campi | |
|---|---|
key |
|
value |
|
IncrementalTableConfig
| Rappresentazione JSON |
|---|
{ "incrementalSelectQuery": string, "refreshDisabled": boolean, "uniqueKeyParts": [ string ], "updatePartitionFilter": string, "incrementalPreOperations": [ string ], "incrementalPostOperations": [ string ] } |
| Campi | |
|---|---|
incrementalSelectQuery |
La query SELECT che restituisce le righe da inserire nella relazione se esiste già e non viene aggiornata. |
refreshDisabled |
Indica se questa tabella deve essere protetta dall'aggiornamento. |
uniqueKeyParts[] |
Un insieme di colonne o espressioni SQL utilizzate per definire l'univocità delle righe. Se vengono rilevati duplicati (come definito da |
updatePartitionFilter |
Un'espressione SQL condizionale utilizzata per limitare l'insieme di righe esistenti prese in considerazione per un'operazione di unione (vedi |
incrementalPreOperations[] |
Istruzioni SQL da eseguire prima di inserire nuove righe nella relazione. |
incrementalPostOperations[] |
Istruzioni SQL da eseguire dopo l'inserimento di nuove righe nella relazione. |
AdditionalOptionsEntry
| Rappresentazione JSON |
|---|
{ "key": string, "value": string } |
| Campi | |
|---|---|
key |
|
value |
|
Operazioni
| Rappresentazione JSON |
|---|
{ "dependencyTargets": [ { object ( |
| Campi | |
|---|---|
dependencyTargets[] |
Un elenco di azioni da cui dipende questa azione. |
disabled |
Indica se questa azione è disattivata (ovvero non deve essere eseguita). |
tags[] |
Tag arbitrari definiti dall'utente per questa azione. |
relationDescriptor |
Descrittore per qualsiasi relazione di output e le relative colonne. Impostato solo se |
queries[] |
Un elenco di istruzioni SQL arbitrarie che verranno eseguite senza modifiche. |
hasOutput |
Indica se queste operazioni producono una relazione di output. |
Asserzione
| Rappresentazione JSON |
|---|
{ "dependencyTargets": [ { object ( |
| Campi | |
|---|---|
dependencyTargets[] |
Un elenco di azioni da cui dipende questa azione. |
parentAction |
L'azione principale di questa asserzione. Impostato solo se questa asserzione è stata generata automaticamente. |
disabled |
Indica se questa azione è disattivata (ovvero non deve essere eseguita). |
tags[] |
Tag arbitrari definiti dall'utente per questa azione. |
selectQuery |
La query SELECT che deve restituire zero righe affinché questa asserzione abbia esito positivo. |
relationDescriptor |
Descrittore della visualizzazione generata automaticamente dell'asserzione e delle relative colonne. |
Dichiarazione
| Rappresentazione JSON |
|---|
{
"relationDescriptor": {
object ( |
| Campi | |
|---|---|
relationDescriptor |
Descrittore della relazione e delle relative colonne. Utilizzato solo come documentazione, ovvero i valori qui non comporteranno modifiche ai metadati della relazione. |
Notebook
| Rappresentazione JSON |
|---|
{
"dependencyTargets": [
{
object ( |
| Campi | |
|---|---|
dependencyTargets[] |
Un elenco di azioni da cui dipende questa azione. |
disabled |
Indica se questa azione è disattivata (ovvero non deve essere eseguita). |
contents |
I contenuti del notebook. |
tags[] |
Tag arbitrari definiti dall'utente per questa azione. |
DataPreparation
| Rappresentazione JSON |
|---|
{ "dependencyTargets": [ { object ( |
| Campi | |
|---|---|
dependencyTargets[] |
Un elenco di azioni da cui dipende questa azione. |
disabled |
Indica se questa azione è disattivata (ovvero non deve essere eseguita). |
tags[] |
Tag arbitrari definiti dall'utente per questa azione. |
Campo unione definition. La definizione per la preparazione dei dati. definition può essere solo uno dei seguenti tipi: |
|
contentsYaml |
La definizione della preparazione dei dati, archiviata come stringa YAML. |
contentsSql |
Definizione SQL per una preparazione dei dati. Contiene una query SQL e informazioni di contesto aggiuntive. |
SqlDefinition
| Rappresentazione JSON |
|---|
{ "query": string, "errorTable": { object ( |
| Campi | |
|---|---|
query |
La query SQL che rappresenta i passaggi di preparazione dei dati. Formattata come istruzione di query SQL Pipe. |
errorTable |
Configurazione della tabella degli errori, |
load |
Carica configurazione. |
ErrorTable
| Rappresentazione JSON |
|---|
{
"target": {
object ( |
| Campi | |
|---|---|
target |
Destinazione della tabella degli errori. |
retentionDays |
Scadenza partizione tabella in giorni. Sono consentiti solo valori positivi. |
LoadConfig
| Rappresentazione JSON |
|---|
{ // Union field |
| Campi | |
|---|---|
Campo unione mode. La modalità di caricamento mode può essere solo una delle seguenti: |
|
replace |
Sostituisci tabella di destinazione |
append |
Aggiungi alla tabella di destinazione |
maximum |
Inserisci i record in cui il valore supera il valore massimo precedente per una colonna nella tabella di destinazione |
unique |
Inserisci record in cui il valore di una colonna non è già presente nella tabella di destinazione |
IncrementalLoadMode
| Rappresentazione JSON |
|---|
{ "column": string } |
| Campi | |
|---|---|
column |
Nome della colonna per le modalità di caricamento incrementale |
RelationType
Indica il tipo di relazione.
| Enum | |
|---|---|
RELATION_TYPE_UNSPECIFIED |
Valore predefinito. Questo valore non viene utilizzato. |
TABLE |
La relazione è una tabella. |
VIEW |
La relazione è una visualizzazione. |
INCREMENTAL_TABLE |
La relazione è una tabella incrementale. |
MATERIALIZED_VIEW |
La relazione è una vista materializzata. |
TableFormat
Formati di tabella supportati per le tabelle BigQuery.
| Enum | |
|---|---|
TABLE_FORMAT_UNSPECIFIED |
Valore predefinito. |
ICEBERG |
Formato Apache Iceberg. |
FileFormat
Formati di file supportati per le tabelle BigQuery.
| Enum | |
|---|---|
FILE_FORMAT_UNSPECIFIED |
Valore predefinito. |
PARQUET |
Formato Apache Parquet. |
Annotazioni dello strumento
Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌