MCP Tools Reference: dataform.googleapis.com

כלי: query_compilation_actions

מחזירה את הפעולות של תוצאת ההידור (compilation) של Dataform.

ערך הפרמטר name צריך להיות בפורמט projects/{project_id}/locations/{location}/repositories/{repository}/compilationResults/{compilation_result}.

בדוגמה הבאה אפשר לראות איך משתמשים ב-curl כדי להפעיל את כלי ה-MCP‏ query_compilation_actions.

בקשת 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
}'
                

סכימת הקלט

QueryCompilationResultActions הזמנה לצ'אט.

QueryCompilationResultActionsRequest

ייצוג JSON
{
  "name": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string
}
שדות
name

string

חובה. השם של תוצאת ההידור.

pageSize

integer

זה שינוי אופציונלי. מספר התוצאות המקסימלי של הקומפילציה שיוחזרו. יכול להיות שהשרת יחזיר פחות פריטים מהמספר שצוין בבקשה. אם לא מציינים ערך, השרת יבחר ברירת מחדל מתאימה.

pageToken

string

זה שינוי אופציונלי. טוקן של דף שהתקבל מקריאה קודמת של QueryCompilationResultActions. צריך להזין את הטוקן כדי לאחזר את הדף הבא.

כשמבצעים חלוקה לעמודים, כל הפרמטרים האחרים שסופקו ל-QueryCompilationResultActions, חוץ מ-page_size, חייבים להיות זהים לקריאה שסיפקה את הטוקן של הדף.

filter

string

זה שינוי אופציונלי. מסנן אופציונלי לרשימה שמוחזרת. בשלב הזה, אפשר לסנן רק את השדה file_path.

סכימת הפלט

QueryCompilationResultActions הודעת תגובה.

QueryCompilationResultActionsResponse

ייצוג JSON
{
  "compilationResultActions": [
    {
      object (CompilationResultAction)
    }
  ],
  "nextPageToken": string
}
שדות
compilationResultActions[]

object (CompilationResultAction)

רשימה של פעולות שקשורות לתוצאות ההידור.

nextPageToken

string

טוקן שאפשר לשלוח כ-page_token כדי לאחזר את הדף הבא. אם משמיטים את השדה הזה, לא יופיעו דפים נוספים.

CompilationResultAction

ייצוג JSON
{
  "target": {
    object (Target)
  },
  "canonicalTarget": {
    object (Target)
  },
  "filePath": string,

  // Union field compiled_object can be only one of the following:
  "relation": {
    object (Relation)
  },
  "operations": {
    object (Operations)
  },
  "assertion": {
    object (Assertion)
  },
  "declaration": {
    object (Declaration)
  },
  "notebook": {
    object (Notebook)
  },
  "dataPreparation": {
    object (DataPreparation)
  }
  // End of list of possible types for union field compiled_object.

  // Union field _internal_metadata can be only one of the following:
  "internalMetadata": string
  // End of list of possible types for union field _internal_metadata.
}
שדות
target

object (Target)

המזהה של הפעולה הזו. ייחודי בתוצאת ההידור.

canonicalTarget

object (Target)

המזהה של הפעולה אם הפרויקט עבר קומפילציה בלי להגדיר החלפות. ייחודי בתוצאת ההידור.

filePath

string

הנתיב המלא כולל שם הקובץ שבו הפעולה הזו ממוקמת, ביחס לשורש של סביבת העבודה.

שדה איחוד compiled_object. האובייקט שעבר קומפילציה. הערך compiled_object יכול להיות רק אחד מהבאים:
relation

object (Relation)

הקשר בין מסדי הנתונים שנוצר או עודכן על ידי הפעולה הזו.

operations

object (Operations)

פעולות מסד הנתונים שבוצעו על ידי הפעולה הזו.

assertion

object (Assertion)

הטענה שהופעלה על ידי הפעולה הזו.

declaration

object (Declaration)

ההצהרה שהוגדרה על ידי הפעולה הזו.

notebook

object (Notebook)

ה-notebook שהורץ על ידי הפעולה הזו.

dataPreparation

object (DataPreparation)

הכנת הנתונים שמתבצעת על ידי הפעולה הזו.

שדה איחוד _internal_metadata.

הערך _internal_metadata יכול להיות רק אחד מהבאים:

internalMetadata

string

פלט בלבד. כל פרטי המטא-נתונים שמשמשים באופן פנימי להצגת המשאב. לדוגמה: חותמות זמן, דגלים, שדות סטטוס וכו'. הפורמט של השדה הזה הוא מחרוזת JSON.

קשר

ייצוג JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],
  "relationDescriptor": {
    object (RelationDescriptor)
  },
  "relationType": enum (RelationType),
  "selectQuery": string,
  "preOperations": [
    string
  ],
  "postOperations": [
    string
  ],
  "incrementalTableConfig": {
    object (IncrementalTableConfig)
  },
  "partitionExpression": string,
  "clusterExpressions": [
    string
  ],
  "partitionExpirationDays": integer,
  "requirePartitionFilter": boolean,
  "additionalOptions": {
    string: string,
    ...
  },
  "connection": string,
  "tableFormat": enum (TableFormat),
  "fileFormat": enum (FileFormat),
  "storageUri": string
}
שדות
dependencyTargets[]

object (Target)

רשימה של פעולות שהפעולה הזו תלויה בהן.

disabled

boolean

האם הפעולה הזו מושבתת (כלומר, לא אמורה לפעול).

tags[]

string

תגים שרירותיים שהמשתמש מגדיר לפעולה הזו.

relationDescriptor

object (RelationDescriptor)

תיאור של היחס והעמודות שלו.

relationType

enum (RelationType)

סוג הקשר.

selectQuery

string

שאילתת ה-SELECT שמחזירה את השורות שהקשר הזה צריך להכיל.

preOperations[]

string

הוראות SQL שיש להריץ לפני יצירת הקשר.

postOperations[]

string

הצהרות SQL שיבוצעו אחרי יצירת הקשר.

incrementalTableConfig

object (IncrementalTableConfig)

ההגדרה הזו קובעת את ההגדרות של INCREMENTAL_TABLE עבור הקשר הזה. הגדרה רק אם relation_type הוא INCREMENTAL_TABLE.

partitionExpression

string

ביטוי ה-SQL שמשמש לחלוקת היחס למחיצות.

clusterExpressions[]

string

רשימה של עמודות או ביטויי SQL שמשמשים לאשכול של הטבלה.

partitionExpirationDays

integer

הגדרת תפוגת המחיצה בימים.

requirePartitionFilter

boolean

קובעת אם שאילתות בטבלה הזו צריכות לכלול מסנן של תנאי שפועל על עמודת החלוקה למחיצות.

additionalOptions

map (key: string, value: string)

אפשרויות נוספות שיועברו כצמדי מפתח/ערך לסעיף האפשרויות של הצהרת יצירת טבלה/תצוגה. מידע נוסף על האפשרויות הנתמכות זמין בכתובת https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

connection

string

זה שינוי אופציונלי. החיבור שמציין את פרטי הכניסה שישמשו לקריאה וכתיבה באחסון חיצוני, כמו Cloud Storage. החיבור יכול להיות בפורמט {project}.{location}.{connection_id} או projects/{project}/locations/{location}/connections/{connection_id}, או להיות מוגדר כברירת מחדל.

tableFormat

enum (TableFormat)

זה שינוי אופציונלי. פורמט הטבלה של הטבלה ב-BigQuery.

fileFormat

enum (FileFormat)

זה שינוי אופציונלי. פורמט הקובץ של הטבלה ב-BigQuery.

storageUri

string

זה שינוי אופציונלי. קידומת המיקום המלאה של התיקייה החיצונית שבה מאוחסנים נתוני הטבלה. ה-URI צריך להיות בפורמט gs://bucket/path_to_table/.

יעד

ייצוג JSON
{
  "database": string,
  "schema": string,
  "name": string
}
שדות
database

string

זה שינוי אופציונלי. מסד הנתונים של הפעולה (מזהה הפרויקט ב-Google Cloud) .

schema

string

זה שינוי אופציונלי. הסכימה של הפעולה (מזהה מערך הנתונים ב-BigQuery), בתוך database.

name

string

זה שינוי אופציונלי. שם הפעולה, בתוך database ו-schema.

RelationDescriptor

ייצוג JSON
{
  "description": string,
  "columns": [
    {
      object (ColumnDescriptor)
    }
  ],
  "bigqueryLabels": {
    string: string,
    ...
  }
}
שדות
description

string

תיאור טקסטואלי של הקשר.

columns[]

object (ColumnDescriptor)

רשימה של תיאורי העמודות ביחס.

bigqueryLabels

map (key: string, value: string)

קבוצה של תוויות BigQuery שצריך להחיל על הקשר.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ColumnDescriptor

ייצוג JSON
{
  "path": [
    string
  ],
  "description": string,
  "bigqueryPolicyTags": [
    string
  ]
}
שדות
path[]

string

המזהה של העמודה. כל רשומה ב-path מייצגת רמה אחת של קינון.

description

string

תיאור מילולי של העמודה.

bigqueryPolicyTags[]

string

רשימה של תגי מדיניות ב-BigQuery שיוחלו על העמודה.

BigqueryLabelsEntry

ייצוג JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

IncrementalTableConfig

ייצוג JSON
{
  "incrementalSelectQuery": string,
  "refreshDisabled": boolean,
  "uniqueKeyParts": [
    string
  ],
  "updatePartitionFilter": string,
  "incrementalPreOperations": [
    string
  ],
  "incrementalPostOperations": [
    string
  ]
}
שדות
incrementalSelectQuery

string

שאילתת ה-SELECT שמחזירה שורות שצריך להוסיף לקשר אם הוא כבר קיים ולא מתבצע בו רענון.

refreshDisabled

boolean

האם הטבלה הזו צריכה להיות מוגנת מפני רענון.

uniqueKeyParts[]

string

קבוצה של עמודות או ביטויי SQL שמשמשים להגדרת הייחודיות של השורה. אם נמצאו כפילויות (כפי שמוגדר על ידי unique_key_parts), רק השורות שנבחרו לאחרונה (כפי שמוגדר על ידי incremental_select_query) ייכללו בקשר.

updatePartitionFilter

string

ביטוי SQL מותנה שמשמש להגבלת קבוצת השורות הקיימות שנלקחות בחשבון בפעולת מיזוג (מידע נוסף מופיע בקטע unique_key_parts).

incrementalPreOperations[]

string

הצהרות SQL שיש להריץ לפני הוספת שורות חדשות ליחס.

incrementalPostOperations[]

string

משפטי SQL שיבוצעו אחרי הוספת שורות חדשות ליחס.

AdditionalOptionsEntry

ייצוג JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

תפעול

ייצוג JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],
  "relationDescriptor": {
    object (RelationDescriptor)
  },
  "queries": [
    string
  ],
  "hasOutput": boolean
}
שדות
dependencyTargets[]

object (Target)

רשימה של פעולות שהפעולה הזו תלויה בהן.

disabled

boolean

האם הפעולה הזו מושבתת (כלומר, לא אמורה לפעול).

tags[]

string

תגים שרירותיים שהמשתמש מגדיר לפעולה הזו.

relationDescriptor

object (RelationDescriptor)

מתאר של כל יחס פלט והעמודות שלו. הגדרה אפשרית רק אם has_output הוא True.

queries[]

string

רשימה של הצהרות SQL שרירותיות שיופעלו ללא שינוי.

hasOutput

boolean

האם הפעולות האלה יוצרות יחס פלט.

טענת נכוֹנוּת (assertion

ייצוג JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "parentAction": {
    object (Target)
  },
  "disabled": boolean,
  "tags": [
    string
  ],
  "selectQuery": string,
  "relationDescriptor": {
    object (RelationDescriptor)
  }
}
שדות
dependencyTargets[]

object (Target)

רשימה של פעולות שהפעולה הזו תלויה בהן.

parentAction

object (Target)

פעולת ההורה של הטענה הזו. הגדרה רק אם הטענה הזו נוצרה באופן אוטומטי.

disabled

boolean

האם הפעולה הזו מושבתת (כלומר, לא אמורה לפעול).

tags[]

string

תגים שרירותיים שהמשתמש מגדיר לפעולה הזו.

selectQuery

string

שאילתת ה-SELECT שצריכה להחזיר אפס שורות כדי שהטענה הזו תצליח.

relationDescriptor

object (RelationDescriptor)

תיאור של התצוגה שנוצרה אוטומטית של האסרטיב והעמודות שלה.

הצהרה

ייצוג JSON
{
  "relationDescriptor": {
    object (RelationDescriptor)
  }
}
שדות
relationDescriptor

object (RelationDescriptor)

תיאור של היחס והעמודות שלו. השימוש הוא רק לצורך תיעוד, כלומר הערכים כאן לא יגרמו לשינויים במטא-נתונים של הקשר.

Notebook

ייצוג JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "contents": string,
  "tags": [
    string
  ]
}
שדות
dependencyTargets[]

object (Target)

רשימה של פעולות שהפעולה הזו תלויה בהן.

disabled

boolean

האם הפעולה הזו מושבתת (כלומר, לא אמורה לפעול).

contents

string

התוכן של ה-Notebook.

tags[]

string

תגים שרירותיים שהמשתמש מגדיר לפעולה הזו.

DataPreparation

ייצוג JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],

  // Union field definition can be only one of the following:
  "contentsYaml": string,
  "contentsSql": {
    object (SqlDefinition)
  }
  // End of list of possible types for union field definition.
}
שדות
dependencyTargets[]

object (Target)

רשימה של פעולות שהפעולה הזו תלויה בהן.

disabled

boolean

האם הפעולה הזו מושבתת (כלומר, לא אמורה לפעול).

tags[]

string

תגים שרירותיים שהמשתמש מגדיר לפעולה הזו.

שדה איחוד definition. ההגדרה של הכנת הנתונים. הערך definition יכול להיות רק אחד מהבאים:
contentsYaml

string

ההגדרה של הכנת הנתונים, מאוחסנת כמחרוזת YAML.

contentsSql

object (SqlDefinition)

הגדרת SQL להכנת נתונים. מכיל שאילתת SQL ומידע נוסף על ההקשר.

SqlDefinition

ייצוג JSON
{
  "query": string,
  "errorTable": {
    object (ErrorTable)
  },
  "load": {
    object (LoadConfig)
  }
}
שדות
query

string

שאילתת ה-SQL שמייצגת את השלבים של הכנת הנתונים. מעוצב כהצהרת שאילתת SQL עם תו צינור.

errorTable

object (ErrorTable)

שגיאה בהגדרת הטבלה,

load

object (LoadConfig)

טוענים את ההגדרות.

ErrorTable

ייצוג JSON
{
  "target": {
    object (Target)
  },
  "retentionDays": integer
}
שדות
target

object (Target)

שגיאה בטבלת היעד.

retentionDays

integer

שגיאה בתוקף החלוקה של הטבלה למחיצות בימים. אפשר להשתמש רק בערכים חיוביים.

LoadConfig

ייצוג JSON
{

  // Union field mode can be only one of the following:
  "replace": {
    object (SimpleLoadMode)
  },
  "append": {
    object (SimpleLoadMode)
  },
  "maximum": {
    object (IncrementalLoadMode)
  },
  "unique": {
    object (IncrementalLoadMode)
  }
  // End of list of possible types for union field mode.
}
שדות
שדה איחוד mode. הערך של מצב הטעינה mode יכול להיות רק אחד מהבאים:
replace

object (SimpleLoadMode)

החלפת טבלת היעד

append

object (SimpleLoadMode)

הוספה לטבלת היעד

maximum

object (IncrementalLoadMode)

הוספת רשומות שבהן הערך גבוה מהערך המקסימלי הקודם בעמודה בטבלת היעד

unique

object (IncrementalLoadMode)

הוספת רשומות שבהן הערך של עמודה מסוימת לא מופיע כבר בטבלת היעד

IncrementalLoadMode

ייצוג JSON
{
  "column": string
}
שדות
column

string

שם העמודה במצבי טעינה מצטברת

RelationType

מציין את סוג הקשר.

טיפוסים בני מנייה (enum)
RELATION_TYPE_UNSPECIFIED ערך ברירת המחדל. הערך הזה לא בשימוש.
TABLE הקשר הוא טבלה.
VIEW הקשר הוא תצוגה.
INCREMENTAL_TABLE הקשר הוא טבלה מצטברת.
MATERIALIZED_VIEW הקשר הוא תצוגה מהותית.

TableFormat

פורמטים נתמכים של טבלאות ב-BigQuery.

טיפוסים בני מנייה (enum)
TABLE_FORMAT_UNSPECIFIED ערך ברירת המחדל.
ICEBERG פורמט Apache Iceberg.

FileFormat

פורמטים נתמכים של קבצים לטבלאות ב-BigQuery.

טיפוסים בני מנייה (enum)
FILE_FORMAT_UNSPECIFIED ערך ברירת המחדל.
PARQUET פורמט Apache Parquet.

הערות על כלים

רמז הרסני: ❌ | רמז אידמפוטנטי: ✅ | רמז לקריאה בלבד: ✅ | רמז לעולם פתוח: ❌