Skip to main content
これらの設定はsystem.settingsで参照でき、ソースコードから自動生成されています。

distributed_background_insert_batch

別名: distributed_directory_monitor_batch_inserts 挿入されたデータをバッチで送信するかどうかを切り替えます。 バッチ送信を有効にすると、Distributed テーブルエンジンは、挿入されたデータの複数のファイルを個別に送信する代わりに、1 回の操作でまとめて送信しようとします。バッチ送信により、サーバーやネットワークのリソースをより効率的に活用できるため、クラスターのパフォーマンスが向上します。 設定可能な値:
  • 1 — 有効。
  • 0 — 無効。

distributed_background_insert_max_sleep_time_ms

別名: distributed_directory_monitor_max_sleep_time_ms Distributed テーブルエンジンがデータを送信する際の最大間隔です。distributed_background_insert_sleep_time_ms 設定で指定される間隔の指数関数的な増加を制限します。 設定可能な値:
  • ミリ秒単位の正の整数

distributed_background_insert_sleep_time_ms

別名: distributed_directory_monitor_sleep_time_ms Distributedテーブルエンジンがデータを送信する際の基本的な待機間隔です。実際の間隔は、エラーが発生すると指数関数的に増加します。 設定可能な値:
  • 正の整数のミリ秒数。

distributed_background_insert_split_batch_on_failure

別名: distributed_directory_monitor_split_batch_on_failure 障害発生時にバッチを分割する機能を有効または無効にします。 特定のバッチをリモート分片に送信する際、その後段に複雑なパイプライン (たとえば GROUP BY を含む MATERIALIZED VIEW) があると、Memory limit exceeded などのエラーで失敗することがあります。この場合、再試行しても解決せず (その結果、そのテーブルの分散送信が滞ることがあります) 、そのバッチ内のファイルを 1 つずつ送信すれば INSERT に成功する可能性があります。 そのため、この設定を 1 にすると、そのようなバッチではバッチ処理が無効になります (つまり、失敗したバッチに対して distributed_background_insert_batch が一時的に無効になります) 。 設定可能な値:
  • 1 — 有効。
  • 0 — 無効。
この設定は、破損したバッチにも影響します (これはサーバー (マシン) の異常終了や、Distributed テーブルエンジンで fsync_after_insert/fsync_directories がない場合に発生することがあります) 。
自動バッチ分割には依存しないでください。パフォーマンスに悪影響を及ぼす可能性があります。

distributed_background_insert_timeout

別名: insert_distributed_timeout distributed への INSERT クエリのタイムアウトです。この設定は、insert_distributed_sync が有効な場合にのみ適用されます。値が 0 の場合は、タイムアウトしないことを意味します。
最終更新日 2026年7月23日