insert_allow_materialized_columns
insert_deduplicate
INSERT の block の重複排除 (Replicated* テーブル向け) を有効または無効にします。
この設定は、deduplicate_insert が backward_compatible_choice に設定されている場合にのみ有効です。
設定可能な値:
- 0 — 無効。
- 1 — 有効。
INSERT ステートメントによってレプリケートテーブルに挿入された block は重複排除されます (Data Replication を参照) 。
レプリケートテーブルでは、デフォルトで各パーティションにつき直近 100 個の block のみが重複排除されます (replicated_deduplication_window、replicated_deduplication_window_seconds を参照) 。
非レプリケートテーブルについては、non_replicated_deduplication_window を参照してください。
insert_deduplication_token
- 任意の文字列
insert_deduplication_token は、空でない場合にのみ重複排除に使用されます。
レプリケートテーブルでは、デフォルトで各パーティションごとに直近 100 件の insert のみが重複排除されます (replicated_deduplication_window、replicated_deduplication_window_seconds を参照) 。
非レプリケートテーブルについては、non_replicated_deduplication_window を参照してください。
insert_deduplication_token はパーティション単位で追跡されるため、1 回の insert で書き込まれる複数のパーティションで同じトークンを使用できます。トークンがない場合、デフォルトの内容チェックサムは挿入された block 全体に対して計算されるため、insert が重複排除されるのは、そのデータ全体が以前の insert (再試行) と一致する場合のみです。単一パーティションの行が、たまたま別の insert と一致しただけでは重複排除されません。insert_null_as_default
NULL を挿入すると例外が発生します。カラム型が Nullable の場合は、この設定に関係なく、NULL 値はそのまま挿入されます。
この設定は INSERT … SELECT クエリに適用されます。SELECT サブクエリは UNION ALL 句で連結できる点に注意してください。
設定可能な値:
- 0 — Nullable ではないカラムに
NULLを挿入すると例外が発生します。 - 1 —
NULLの代わりにカラムのデフォルト値が挿入されます。
insert_shard_id
0 でない場合、データを同期的に挿入する Distributed テーブルの分片を指定します。
insert_shard_id の値が正しくない場合、サーバーは例外をスローします。
requested_cluster の分片数を取得するには、サーバーの設定を確認するか、このクエリを使用します。
- 0 — 無効。
- 対応する Distributed テーブルの
1からshards_numまでの任意の数値。