ツール: query_compilation_actions
特定の Dataform コンパイル結果のコンパイル結果アクションを返します。
name パラメータの値は projects/{project_id}/locations/{location}/repositories/{repository}/compilationResults/{compilation_result} 形式にする必要があります。
次のサンプルは、curl を使用して query_compilation_actions MCP ツールを呼び出す方法を示しています。
| 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 |
必須。コンパイル結果の名前。 |
pageSize |
省略可。返されるコンパイル結果の最大数。サーバーが返すアイテムが、リクエストされた数よりも少ないことがあります。指定しない場合は、サーバーで適切なデフォルトが選択されます。 |
pageToken |
省略可。前回の ページ分割を行う場合、 |
filter |
省略可。返されるリストのフィルタ(省略可)。現在、フィルタリングは |
出力スキーマ
QueryCompilationResultActions レスポンス メッセージ。
QueryCompilationResultActionsResponse
| JSON 表現 |
|---|
{
"compilationResultActions": [
{
object ( |
| フィールド | |
|---|---|
compilationResultActions[] |
コンパイル結果アクションのリスト。 |
nextPageToken |
次のページを取得するために |
CompilationResultAction
| JSON 表現 |
|---|
{ "target": { object ( |
| フィールド | |
|---|---|
target |
このアクションの識別子。コンパイル結果内で一意。 |
canonicalTarget |
オーバーライドが構成されていない状態でプロジェクトがコンパイルされた場合のアクションの識別子。コンパイル結果内で一意。 |
filePath |
このアクションが配置されているファイル名を含むフルパス(ワークスペース ルートからの相対パス)。 |
共用体フィールド compiled_object。コンパイルされたオブジェクト。compiled_object は次のいずれかになります。 |
|
relation |
このアクションによって作成または更新されたデータベース リレーション。 |
operations |
このアクションによって実行されるデータベース オペレーション。 |
assertion |
このアクションによって実行されるアサーション。 |
declaration |
このアクションによって宣言された宣言。 |
notebook |
このアクションによって実行されるノートブック。 |
dataPreparation |
このアクションによって実行されるデータ準備。 |
共用体フィールド
|
|
internalMetadata |
出力専用。リソースの提供に内部で使用されるすべてのメタデータ情報。たとえば、タイムスタンプ、フラグ、ステータス フィールドなどです。このフィールドの形式は JSON 文字列です。 |
関連するオプション、値
| JSON 表現 |
|---|
{ "dependencyTargets": [ { object ( |
| フィールド | |
|---|---|
dependencyTargets[] |
このアクションが依存するアクションのリスト。 |
disabled |
このアクションが無効かどうか(実行すべきでないかどうか)。 |
tags[] |
このアクションに関する任意のユーザー定義タグ。 |
relationDescriptor |
リレーションとその列の記述子。 |
relationType |
この関係のタイプ。 |
selectQuery |
このリレーションに含める行を返す SELECT クエリ。 |
preOperations[] |
リレーションを作成する前に実行する SQL ステートメント。 |
postOperations[] |
リレーションの作成後に実行する SQL ステートメント。 |
incrementalTableConfig |
この関係の |
partitionExpression |
リレーションのパーティショニングに使用される SQL 式。 |
clusterExpressions[] |
テーブルのクラスタ化に使用される列または SQL 式のリスト。 |
partitionExpirationDays |
パーティションの有効期限を日数で設定します。 |
requirePartitionFilter |
このテーブルのクエリに、パーティショニングする列を除外する述語フィルタを含める必要があるかどうかを指定します。 |
additionalOptions |
テーブル / ビューの作成ステートメントのオプション句に Key-Value ペアとして提供される追加オプション。サポートされているオプションの詳細については、https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language をご覧ください。
|
connection |
省略可。Cloud Storage などの外部ストレージへの読み取りと書き込みに使用する認証情報を指定する接続。接続の形式は |
tableFormat |
省略可。BigQuery テーブルのテーブル形式。 |
fileFormat |
省略可。BigQuery テーブルのファイル形式。 |
storageUri |
省略可。テーブルデータが保存されている外部フォルダの完全修飾ロケーション接頭辞。URI は |
ターゲット
| JSON 表現 |
|---|
{ "database": string, "schema": string, "name": string } |
| フィールド | |
|---|---|
database |
省略可。アクションのデータベース(Google Cloud プロジェクト ID)。 |
schema |
省略可。 |
name |
省略可。 |
RelationDescriptor
| JSON 表現 |
|---|
{
"description": string,
"columns": [
{
object ( |
| フィールド | |
|---|---|
description |
関係のテキスト説明。 |
columns[] |
リレーション内の列の説明のリスト。 |
bigqueryLabels |
リレーションに適用する BigQuery ラベルのセット。
|
ColumnDescriptor
| JSON 表現 |
|---|
{ "path": [ string ], "description": string, "bigqueryPolicyTags": [ string ] } |
| フィールド | |
|---|---|
path[] |
列の識別子。 |
description |
列のテキストによる説明。 |
bigqueryPolicyTags[] |
列に適用される BigQuery ポリシータグのリスト。 |
BigqueryLabelsEntry
| JSON 表現 |
|---|
{ "key": string, "value": string } |
| フィールド | |
|---|---|
key |
|
value |
|
IncrementalTableConfig
| JSON 表現 |
|---|
{ "incrementalSelectQuery": string, "refreshDisabled": boolean, "uniqueKeyParts": [ string ], "updatePartitionFilter": string, "incrementalPreOperations": [ string ], "incrementalPostOperations": [ string ] } |
| フィールド | |
|---|---|
incrementalSelectQuery |
リレーションがすでに存在し、更新されていない場合に、リレーションに挿入される行を返す SELECT クエリ。 |
refreshDisabled |
このテーブルを更新から保護するかどうか。 |
uniqueKeyParts[] |
行の一意性を定義するために使用される列または SQL 式のセット。重複( |
updatePartitionFilter |
マージ オペレーションの対象となる既存の行のセットを制限するために使用される SQL 式条件(詳細については、 |
incrementalPreOperations[] |
新しい行をリレーションに挿入する前に実行される SQL ステートメント。 |
incrementalPostOperations[] |
新しい行をリレーションに挿入した後に実行される SQL ステートメント。 |
AdditionalOptionsEntry
| JSON 表現 |
|---|
{ "key": string, "value": string } |
| フィールド | |
|---|---|
key |
|
value |
|
運用
| JSON 表現 |
|---|
{ "dependencyTargets": [ { object ( |
| フィールド | |
|---|---|
dependencyTargets[] |
このアクションが依存するアクションのリスト。 |
disabled |
このアクションが無効かどうか(実行すべきでないかどうか)。 |
tags[] |
このアクションに関する任意のユーザー定義タグ。 |
relationDescriptor |
出力リレーションとその列の記述子。 |
queries[] |
変更なしで実行される任意の SQL ステートメントのリスト。 |
hasOutput |
これらのオペレーションが出力リレーションを生成するかどうか。 |
アサーション
| JSON 表現 |
|---|
{ "dependencyTargets": [ { object ( |
| フィールド | |
|---|---|
dependencyTargets[] |
このアクションが依存するアクションのリスト。 |
parentAction |
このアサーションの親アクション。このアサーションが自動的に生成された場合にのみ設定します。 |
disabled |
このアクションが無効かどうか(実行すべきでないかどうか)。 |
tags[] |
このアクションに関する任意のユーザー定義タグ。 |
selectQuery |
このアサーションが成功するために 0 行を返す必要がある SELECT クエリ。 |
relationDescriptor |
アサーションの自動生成ビューとその列の記述子。 |
宣言
| JSON 表現 |
|---|
{
"relationDescriptor": {
object ( |
| フィールド | |
|---|---|
relationDescriptor |
リレーションとその列の記述子。ドキュメントとしてのみ使用されます。つまり、ここでの値は、リレーションのメタデータに変更をもたらしません。 |
ノートブック
| JSON 表現 |
|---|
{
"dependencyTargets": [
{
object ( |
| フィールド | |
|---|---|
dependencyTargets[] |
このアクションが依存するアクションのリスト。 |
disabled |
このアクションが無効かどうか(実行すべきでないかどうか)。 |
contents |
ノートブックの内容。 |
tags[] |
このアクションに関する任意のユーザー定義タグ。 |
DataPreparation
| JSON 表現 |
|---|
{ "dependencyTargets": [ { object ( |
| フィールド | |
|---|---|
dependencyTargets[] |
このアクションが依存するアクションのリスト。 |
disabled |
このアクションが無効かどうか(実行すべきでないかどうか)。 |
tags[] |
このアクションに関する任意のユーザー定義タグ。 |
共用体フィールド definition。データ準備の定義。definition は次のいずれかになります。 |
|
contentsYaml |
データ準備定義。YAML 文字列として保存されます。 |
contentsSql |
データ準備の SQL 定義。SQL クエリと追加のコンテキスト情報が含まれます。 |
SqlDefinition
| JSON 表現 |
|---|
{ "query": string, "errorTable": { object ( |
| フィールド | |
|---|---|
query |
データ準備の手順を表す SQL クエリ。Pipe SQL クエリ ステートメントとしてフォーマットされます。 |
errorTable |
エラーテーブルの構成、 |
load |
構成を読み込みます。 |
ErrorTable
| JSON 表現 |
|---|
{
"target": {
object ( |
| フィールド | |
|---|---|
target |
エラーテーブルのターゲット。 |
retentionDays |
エラー テーブルのパーティションの有効期限(日数)。正の値のみを使用できます。 |
LoadConfig
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド mode。読み込みモード mode は、次のいずれかになります。 |
|
replace |
宛先テーブルを置き換える |
append |
宛先テーブルに追加する |
maximum |
宛先テーブルの列の以前の最大値を超える値を含むレコードを挿入する |
unique |
列の値が宛先テーブルにまだ存在しないレコードを挿入する |
IncrementalLoadMode
| JSON 表現 |
|---|
{ "column": string } |
| フィールド | |
|---|---|
column |
増分読み込みモードの列名 |
RelationType
この関係のタイプを示します。
| 列挙型 | |
|---|---|
RELATION_TYPE_UNSPECIFIED |
デフォルト値。この値は使用されません。 |
TABLE |
リレーションはテーブルです。 |
VIEW |
リレーションはビューです。 |
INCREMENTAL_TABLE |
リレーションは増分テーブルです。 |
MATERIALIZED_VIEW |
リレーションはマテリアライズド ビューです。 |
TableFormat
BigQuery テーブルでサポートされているテーブル形式。
| 列挙型 | |
|---|---|
TABLE_FORMAT_UNSPECIFIED |
デフォルト値。 |
ICEBERG |
Apache Iceberg 形式。 |
FileFormat
BigQuery テーブルでサポートされているファイル形式。
| 列挙型 | |
|---|---|
FILE_FORMAT_UNSPECIFIED |
デフォルト値。 |
PARQUET |
Apache Parquet 形式。 |
ツールのアノテーション
破壊的ヒント: ❌ | べき等ヒント: ✅ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌