データマート定義更新

Prev Next
Patch
/api/datamart_definitions/{datamart_definition_id}

データマート定義を更新します。
データウェアハウス(DWH)タイプ自体の変更はできません。
また、現在更新可能なデータウェアハウスタイプはBigQuery、Snowflake、Databricksです。

Security
API Key: ApiKeyAuth
Header parameter nameAuthorization

認証キーとなるAPI KEYをAuthorization: Token {{API KEY}}の形式でヘッダーにセットします。
API KEYがabc123の場合は、Authorization: Token abc123とします。
API KEYの作成方法は、TROCCO API KEYの作成を参照ください。

Path parameters
datamart_definition_id
integer (int64) Required

データマート定義IDを指定します。

Body parameters
Expand All
object
name
string

データマート定義名を指定します。

Exampletest
description
string | null

メモを指定します。

Exampledesc
is_runnable_concurrently
boolean

ジョブの並列実行可否を指定します。

Exampletrue
resource_group_id
integer (int64) | null

リソースグループのIDを指定します。

custom_variable_settings
Array of object

カスタム変数の設定を指定します。
nullまたは空の配列が指定された場合にはすべてのカスタム変数が削除されます。

Min items0
Max items40
object
name
string Required

カスタム変数の変数名を指定します。
変数名を$で囲ってください。

Example$start_time$
type
string Required

カスタム変数タイプです。
string: 文字列
timestamp: 時刻・日付(キューイング時)
timestamp_runtime: 時刻・日付(実行時)

Valid values[ "string", "timestamp", "timestamp_runtime" ]
Exampletimestamp_runtime
value
string

カスタム変数名を展開する値を指定します。
カスタム変数タイプがstringのときのみ有効です。

Examplejobs
quantity
integer (int64)

unit 時間の数を指定します。
カスタム変数タイプがtimestampかtimestamp_runtime のときのみ有効です。

Example1
unit
string

時間の単位を指定します。
タイプがtimestampかtimestamp_runtime のときのみ有効です。
month_start: 当月月初、month_end: 当月月末、prev_month_end: 前月末 を指定した場合、quantity・direction は不要です。

Valid values[ "minute", "hour", "date", "month", "month_start", "month_end", "prev_month_end" ]
Examplehour
direction
string

時間軸の方向です。
ago: 前
later: 後
タイプがtimestampかtimestamp_runtime のときのみ有効です。

Valid values[ "ago", "later" ]
Exampleago
format
string

日付フォーマットです。
タイプがtimestampかtimestamp_runtime のときのみ有効です。

Example%Y-%m-%d %H:%M:%S
time_zone
string

日付フォーマットの日時を解釈するタイムゾーンです。
タイプがtimestampかtimestamp_runtime のときのみ有効です。

ExampleEtc/UTC
datamart_bigquery_option
object | null

BigQueryの設定を指定します。
データウェアハウスタイプがBigQuery以外の時は指定できません。

bigquery_connection_id
integer (int64)

BigQueryの接続IDを指定します。

Example1
query_mode
string

クエリ実行モードを指定します。
insert: データ転送モード
query: 自由記述モード

Valid values[ "insert", "query" ]
query
string

実行クエリを指定します。

Exampleselect * from tests
destination_dataset
string

出力先データセットを指定します。
query_modeがinsertの場合のみ有効です。

Exampletest_dataset
destination_table
string

出力先テーブルを指定します。
query_modeがinsertの場合のみ有効です。

Exampletest_table
write_disposition
string

書き込みモードを指定します。
query_modeがinsertの場合のみ有効です。
append: 追記
truncate: 全件洗い替え
incremental: 増分更新
scd_type_2: SCD Type 2(履歴保持)

Valid values[ "append", "truncate", "incremental", "scd_type_2" ]
Exampletruncate
schema_evolution_mode
string | null

スキーマ自動追従モードを指定します。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。
未指定の場合はdetect_onlyが設定されます。
detect_only: 検知のみ
auto_add_column: カラム自動追加

Valid values[ "detect_only", "auto_add_column" ]
Exampledetect_only
merge_keys
Array of string

キーカラムを指定します。レコードを一意に識別するキーを指定します。
write_dispositionがincrementalまたはscd_type_2の場合に必須です。

Example[ "id" ]
string
on_matched_action
string | null

キーが一致するレコードが存在した場合の挙動を指定します。
write_dispositionがincrementalの場合に必須です。
upsert: 上書き(既存のレコードを一旦DELETEしてから、新しいレコードをINSERTします。データの整合性を重視します。)
skip: スキップ(既存のレコードをそのまま残し、新しいレコードだけをINSERTします。)

Valid values[ "upsert", "skip" ]
Exampleupsert
incremental_column
string | null

増分基準カラムを指定します。
write_dispositionがscd_type_2の場合に必須です。

Exampleupdated_at
lookback_period_column
string | null

処理対象期間の基準カラム名を指定します。
全データを対象にする場合はlookback_period関連のパラメーターをすべて未指定にしてください。
指定する場合はlookback_period_column_typeも必須です。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

Exampleupdated_at
lookback_period_column_type
string | null

処理対象期間カラムのデータ型を指定します。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

Valid values[ "TIMESTAMP", "DATETIME", "DATE" ]
ExampleTIMESTAMP
lookback_period_timezone
string | null

処理対象期間のタイムゾーンを指定します。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

ExampleAsia/Tokyo
lookback_period_from
integer | null

処理対象期間の開始値を指定します。
指定する場合はlookback_period_unit、lookback_period_timezoneも必須になります。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

Example3
lookback_period_to
integer | null

処理対象期間の終了値を指定します。
指定する場合はlookback_period_unit、lookback_period_timezoneも必須になります。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

Example0
lookback_period_unit
string | null

処理対象期間の単位を指定します。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。
days: 日
hours: 時間

Valid values[ "days", "hours" ]
Exampledays
before_load
string | null

転送前に実行するクエリを指定します。
query_modeがinsertの場合のみ有効です。

ExampleDELETE FROM tests
partitioning
string | null

パーティションタイプを指定します。
query_modeがinsertの場合のみ有効です。
詳細はパーティショニング・クラスタリングの設定を参照ください。
ingestion_time: 取り込み時間により分割
time_unit_column: フィールドにより分割

Valid values[ "ingestion_time", "time_unit_column" ]
Exampletime_unit_column
partitioning_time
string | null

分割する期間の単位を指定します。
query_modeがinsertの場合のみ有効です。
詳細はパーティショニング・クラスタリングの設定を参照ください。

Valid values[ "DAY", "HOUR", "MONTH", "YEAR" ]
ExampleDAY
partitioning_field
string | null

分割するフィールド名を指定します。
query_modeがinsertの場合のみ有効です。
詳細はパーティショニング・クラスタリングの設定を参照ください。

Exampletest_field
clustering_fields
Array of string

クラスタ化列を指定します。
詳細は パーティショニング・クラスタリングの設定 を参照ください。

Min items0
Max items4
ExampleUS
string
location
string

データ処理ローケーションを指定します。
query_modeがqueryの場合のみ有効。

datamart_snowflake_setting
object | null

Snowflakeの設定を指定します。
データウェアハウスがSnowflake以外の時は指定できません。

snowflake_connection_id
integer (int64)

Snowflakeの接続IDを指定します。

Example1
query_mode
string

クエリ実行モードを指定します。
insert: データ転送モード
query: 自由記述モード

Valid values[ "insert", "query" ]
query
string

実行クエリを指定します。

ExampleSELECT * FROM EXAMPLE_DATABASE.EXAMPLE_SCHEMA.EXAMPLE_TABLE
warehouse
string

仮想ウェアハウスを指定します。

ExampleEXAMPLE_WH
statement_timeout
integer (int32)

クエリのタイムアウト時間(秒)を指定します。
0を指定した場合はSnowflakeのSTATEMENT_TIMEOUT_IN_SECONDSが利用されます。

Example43200
destination_database
string

出力先データベースを指定します。
query_modeがinsertの場合のみ有効です。

ExampleEXAMPLE_TABLE
destination_schema
string

出力先スキーマを指定します。
query_modeがinsertの場合のみ有効です。

ExampleEXAMPLE_SCHEMA
destination_table
string

出力先テーブル(スキーマオブジェクト)を指定します。
query_modeがinsertの場合のみ有効です。

ExampleEXAMPLE_TABLE
write_disposition
string

書き込みモードを指定します。
query_modeがinsertの場合のみ有効です。
append: 追記
replace: 洗い替え
truncate: 全件洗い替え

Valid values[ "append", "replace", "truncate" ]
Exampletruncate
datamart_databricks_setting
object | null

Databricksの設定を指定します。
データウェアハウスがDatabricks以外の時は指定できません。

databricks_connection_id
integer (int64)

Databricksの接続IDを指定します。

Example1
query_mode
string

クエリ実行モードを指定します。
insert: データ転送モード
query: 自由記述モード

Valid values[ "insert", "query" ]
query
string

実行クエリを指定します。

ExampleSELECT * FROM example_catalog.example_schema.example_table
destination_catalog
string

出力先カタログを指定します。
query_modeがinsertの場合のみ有効です。

Exampleexample_catalog
destination_schema
string

出力先スキーマを指定します。
query_modeがinsertの場合のみ有効です。

Exampleexample_schema
destination_table
string

出力先テーブルを指定します。
query_modeがinsertの場合のみ有効です。

Exampleexample_table
write_disposition
string

書き込みモードを指定します。
query_modeがinsertの場合のみ有効です。
append: 追記
replace: 全件洗い替え(既存のテーブルがDROPされてクエリ実行結果に置き換えられます)
truncate_insert: 全件洗い替え(既存のテーブルのレコードがTRUNCATEされて、クエリ実行結果に置き換えられます)

Valid values[ "append", "replace", "truncate_insert" ]
Exampletruncate_insert
schedules
Array of object

スケジュール設定を指定します。
既存のスケジュール設定はすべて指定された値で洗い替えされます。
空の配列を指定するとすべて削除されます。

Min items0
Max items10
object
frequency
string Required

スケジュールの頻度です。
hourly: 毎時
daily: 毎日
weekly: 毎週
monthly: 毎月

Valid values[ "hourly", "daily", "weekly", "monthly" ]
minute
integer (int64)

分の値を示します。

hour
integer (int64)

時間の値を示します。

day
integer (int64)

日にちの値を示します。

day_of_week
integer (int64)

曜日の値を示します。

time_zone
string Required

日時のタイムゾーンです。

ExampleEtc/UTC
labels
Array of string

ラベル設定を指定します。
既存のラベルはすべて指定された値で洗い替えされます。
空の配列を指定するとすべて削除されます。

Min items0
Max items40
string

ラベル名を指定します。

notifications
Array of object

通知設定を指定します。
既存の通知設定はすべて指定された値で洗い替えされます。
空の配列を指定するとすべて削除されます。

Min items0
Max items20
object
destination_type
string Required

通知先です。

Valid values[ "slack", "email" ]
slack_channel_id
integer (int64)

slack channel IDです。
destination_typeがslackのとき必須です。

email_id
integer (int64)

Email IDです。
destination_typeがemailのとき必須です。

notification_type
string Required

通知タイプです。
job: ジョブ実行(終了/エラー)通知
record: レコード条件(超過/過不足)通知

Valid values[ "job", "record" ]
notify_when
string

通知条件です。
jobタイプのとき必須です。

Valid values[ "finished", "failed" ]
message
string

通知内容です。

record_count
integer (int64)

閾値のレコード数
recordタイプのとき必須です。

record_operator
string

レコード数の比較演算子です
recordタイプのとき必須
above: 以上
below: 以下

Valid values[ "above", "below" ]
Responses
200

Successfully updated.

object
id
integer (int64)

データマート定義IDです。

Example1
name
string

データマート定義名です。

Exampletest
description
string

メモです。

Exampledesc
data_warehouse_type
string

データウェアハウスタイプです。

Examplebigquery
is_runnable_concurrently
boolean

ジョブの並列実行可否です。

Exampletrue
resource_group
id
integer (int64)

リソースグループIDです。

Example1
name
string

リソースグループ名です。

Exampleresource group
description
string | null

メモです。

Exampledescription
teams
Array of object

チームです。

Min items0
object
team_id
integer (int64)

チームIDです。

Example1
role
string

ロールです。

Valid values[ "administrator", "editor", "operator", "viewer" ]
Exampleadministrator
created_at
string

リソースグループの作成日時です。

Example2023-08-22T18:00:00+00:00
updated_at
string

リソースグループの更新日時です。

Example2023-08-22T18:00:00+00:00
custom_variable_settings
Array of object

カスタム変数一覧です。

object
name
string

カスタム変数の変数名を指定します。
変数名を$で囲ってください。

Example$start_time$
type
string

カスタム変数タイプです。
string: 文字列
timestamp: 時刻・日付(キューイング時)
timestamp_runtime: 時刻・日付(実行時)

Valid values[ "string", "timestamp", "timestamp_runtime" ]
Exampletimestamp_runtime
value
string

カスタム変数名を展開する値を指定します。
カスタム変数タイプがstringのときのみ有効です。

Examplejobs
quantity
integer (int64)

unit 時間の数を指定します。
カスタム変数タイプがtimestampかtimestamp_runtime のときのみ有効です。

Example1
unit
string

時間の単位を指定します。
タイプがtimestampかtimestamp_runtime のときのみ有効です。
month_start: 当月月初、month_end: 当月月末、prev_month_end: 前月末 を指定した場合、quantity・direction は不要です。

Valid values[ "minute", "hour", "date", "month", "month_start", "month_end", "prev_month_end" ]
Examplehour
direction
string

時間軸の方向です。
ago: 前
later: 後
タイプがtimestampかtimestamp_runtime のときのみ有効です。

Valid values[ "ago", "later" ]
Exampleago
format
string

日付フォーマットです。
タイプがtimestampかtimestamp_runtime のときのみ有効です。

Example%Y-%m-%d %H:%M:%S
time_zone
string

日付フォーマットの日時を解釈するタイムゾーンです。
タイプがtimestampかtimestamp_runtime のときのみ有効です。

ExampleEtc/UTC
datamart_bigquery_option

BigQueryの設定です。
データウェアハウスタイプがBigQueryの場合にのみ、この値は返されます。

bigquery_connection_id
integer (int64)

BigQueryの接続IDです。

query_mode
string

クエリ実行モードです。
insert: データ転送モード
query: 自由記述モード

Valid values[ "insert", "query" ]
query
string

実行クエリです。

Exampleselect * from tests
destination_dataset
string

出力先データセットです。
query_modeがinsertの場合のみ有効です。

destination_table
string

出力先テーブルです。
query_modeがinsertの場合のみ有効です。

write_disposition
string

書き込みモードです。
query_modeがinsertの場合のみ有効。
append: 追記
truncate: 全件洗い替え
incremental: 増分更新
scd_type_2: SCD Type 2(履歴保持)

Valid values[ "append", "truncate", "incremental", "scd_type_2" ]
schema_evolution_mode
string

スキーマ自動追従モードです。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。
detect_only: 検知のみ
auto_add_column: カラム自動追加

Valid values[ "detect_only", "auto_add_column" ]
merge_keys
Array of string

キーカラムです。レコードを一意に識別するキーを指定します。
write_dispositionがincrementalまたはscd_type_2の場合に必須です。

string
on_matched_action
string

キーが一致するレコードが存在した場合の挙動です。
write_dispositionがincrementalの場合に必須です。
upsert: 上書き(既存のレコードを一旦DELETEしてから、新しいレコードをINSERTします。データの整合性を重視します。)
skip: スキップ(既存のレコードをそのまま残し、新しいレコードだけをINSERTします。)

Valid values[ "upsert", "skip" ]
incremental_column
string

増分基準カラムです。
write_dispositionがscd_type_2の場合に必須です。

valid_from_column
string

SCD Type 2の有効開始日カラム名です。
write_dispositionがscd_type_2の場合に設定されます。固定値: trocco_valid_from

valid_to_column
string

SCD Type 2の有効終了日カラム名です。
write_dispositionがscd_type_2の場合に設定されます。固定値: trocco_valid_to

is_current_column
string

SCD Type 2の現在フラグカラム名です。
write_dispositionがscd_type_2の場合に設定されます。固定値: trocco_is_current

lookback_period_column
string

処理対象期間の基準カラム名です。
全データを対象にする場合はlookback_period関連のパラメーターはすべて未指定になります。
指定されている場合はlookback_period_column_typeも設定されます。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

lookback_period_column_type
string

処理対象期間カラムのデータ型です。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

Valid values[ "TIMESTAMP", "DATETIME", "DATE" ]
lookback_period_timezone
string

処理対象期間のタイムゾーンです。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

lookback_period_from
integer

処理対象期間の開始値です。
指定されている場合はlookback_period_unit、lookback_period_timezoneも設定されます。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

lookback_period_to
integer

処理対象期間の終了値です。
指定されている場合はlookback_period_unit、lookback_period_timezoneも設定されます。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。

lookback_period_unit
string

処理対象期間の単位です。
write_dispositionがincrementalまたはscd_type_2の場合に有効です。
days: 日
hours: 時間

Valid values[ "days", "hours" ]
before_load
string

転送前に実行するクエリです。
query_modeがinsertの場合のみ有効です。

ExampleDELETE FROM tests
partitioning
string

パーティションタイプです。
query_modeがinsertの場合のみ有効です。
ingestion_time: 取り込み時間により分割
time_unit_column: フィールドにより分割

Valid values[ "ingestion_time", "time_unit_column" ]
partitioning_time
string

分割する期間の単位です。
query_modeがinsertの場合のみ有効です。

Valid values[ "DAY", "HOUR", "MONTH", "YEAR" ]
partitioning_field
string

分割するフィールド名です。
query_modeがinsertの場合のみ有効です。

clustering_fields
Array of string

クラスタ化列です。
query_modeがinsertの場合のみ有効です。

Min items0
Max items4
string
location
string

データ処理ローケーションです。
query_modeがqueryの場合のみ有効です。

created_at
string

データマート定義の作成日時です。タイムゾーンはJST 日本時間(GMT+9)です。

Example2023-08-22T18:00:00+00:00
updated_at
string

データマート定義の更新日時です。タイムゾーンはJST 日本時間(GMT+9)です。

Example2023-08-22T18:00:00+00:00
400

Bad request.
不正なリクエストです。

401

Not authenticated.
認証エラーです。API KEYをご確認ください。