これらの設定は system.settings で参照でき、ソースコード から自動生成されています。
use_async_executor_for_materialized_views
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 24.12 | 0 | 新しい設定 |
materialized view のクエリ実行に async、場合によってはマルチスレッド実行を使用します。これにより、INSERT 時の view の処理を高速化できますが、メモリ消費量が増える可能性があります。
use_cache_for_count_from_files
table function file/s3/url/hdfs/azureBlobStorage で、ファイルから件数をカウントする際の行数のキャッシュを有効にします。
デフォルトで有効です。
use_client_time_zone
DateTime 文字列の値を解釈する際に、server timezone ではなくクライアントのタイムゾーンを使用します。
use_compact_format_in_distributed_parts_names
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 21.1 | 1 | デフォルトで、分散テーブルへの非同期 INSERT に compact フォーマットを使用 |
Distributed エンジンのテーブルに対するバックグラウンド (distributed_foreground_insert) INSERT で、ブロックの保存に compact フォーマットを使用します。
設定可能な値:
- 0 —
user[:password]@host:port#default_databaseディレクトリ形式を使用します。 - 1 —
[shard{shard_index}[_replica{replica_index}]]ディレクトリ形式を使用します。
use_concurrency_control
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 24.12 | 1 | デフォルトで同時実行制御を有効化 |
サーバーの同時実行制御 (グローバルなサーバー設定 concurrent_threads_soft_limit_num および concurrent_threads_soft_limit_ratio_to_cores を参照) を適用します。無効にすると、サーバーが過負荷状態でもより多くのスレッドを使用できるようになります (通常の用途では推奨されず、主にテストで必要になります) 。
use_constant_folding_in_index_analysis
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.7 | 0 | MergeTree の索引解析時に、各パーツごとのフィルタ条件へパーティション単位の定数を畳み込み、パーティション値に依存する分岐を持つフィルタの プルーニング を改善するための新しい設定。 |
パーツごとの主キーおよびスキップ索引の解析時に、パーティション単位の定数をフィルタ条件に代入します。
パーティションキーが、主キーカラムまたはスキップ索引のカラムと一緒にフィルタに現れる場合、この設定により、索引解析時に各パーツ内でパーティション値を個別に畳み込めるようになります。特に、異なるパーティションを対象とする分岐を含む OR 条件のフィルタで有効です。たとえば、PARTITION BY a と ORDER BY b の場合:
SELECT * FROM t WHERE (a = 1 AND b >= 1) OR (a = 2 AND b > 10) OR (a = 3 AND b > 10)パーティション a = 1 のパートでは、この条件は b >= 1 に畳み込まれます。一方、パーティション a = 2 と a = 3 では b > 10 に畳み込まれるため、各パートは実際に適用される述語に基づいて解析されます。
設定可能な値:
- 0 — 無効。
- 1 — 有効。
use_hash_table_stats_for_join_reordering
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.1 | 1 | 新しい設定。以前は 'collect_hash_table_stats_during_joins' 設定と同じ動作でした。 |
join の並べ替え時に、カーディナリティ推定のために収集した hash table 統計を使用することを有効にします
use_hedged_requests
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 21.9 | 1 | Hedged Requests 機能をデフォルトで有効化 |
リモートクエリに対する hedged requests のロジックを有効にします。これにより、クエリのために異なるレプリカへの複数の接続を確立できます。
既存の接続が hedged_connection_timeout 以内にレプリカに確立されなかった場合、または receive_data_timeout 以内にデータを受信しなかった場合は、新しい接続が有効になります。クエリは、空でない Progress パケット (allow_changing_replica_until_first_data_packet が有効な場合は Data パケット) を最初に送信した接続を使用し、他の接続はキャンセルされます。max_parallel_replicas > 1 のクエリもサポートされます。
デフォルトで有効です。
Cloud でのデフォルト値: 0.
use_hive_partitioning
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 25.1 | 1 | この設定がデフォルトで有効になりました。 |
| 24.8 | 0 | File、URL、S3、AzureBlobStorage、HDFS エンジンで Hive スタイルのパーティション化を使用できるようにします。 |
有効にすると、ClickHouse はファイル系のテーブルエンジン File/S3/URL/HDFS/AzureBlobStorage のパス (/name=value/) にある Hive スタイルのパーティション化を検出し、パーティションカラムをクエリ内で仮想カラムとして使用できるようにします。これらの仮想カラムの名前は、パーティション化されたパス内の名前と同じですが、先頭に _ が付きます。
use_indexes_refiner_in_read_pools
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.8 | 0 | スキップ索引またはプロジェクション索引によって完全に除外されたマーク範囲を、MergeTree 読み取りプールで読み取りタスクが作成される前に削除する新しい設定。 |
MergeTree 読み取りプール内で、データ読み取り時に評価される索引を適用します。スキップ索引 (use_skip_indexes_on_data_read を参照) またはプロジェクション索引 (optimize_use_projection_filtering を参照) によって完全に除外されたマーク範囲は、読み取り時にグラニュール単位でスキップする代わりに、その範囲の読み取りタスクが作成される前に削除されます。
先読み読み取りプールでは、削除された範囲が先読みされることはありません。ただし、タスク境界と filesystem_prefetch_max_memory_usage / filesystem_prefetches_limit による先読みの許可判定はフィルタリング前に決定されるため、選択性が非常に高いフィルタでは、残ったタスクが想定されるタスクサイズより小さくなり、許可判定が保守的になる場合があります。
use_join_disjunctions_push_down
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.1 | 1 | この最適化を有効化しました。 |
| 25.10 | 0 | 新しい設定 |
JOIN 条件のうち OR で結合された部分を、対応する入力側にプッシュダウン (「部分的なプッシュダウン」) できるようにします。 これにより、ストレージエンジンがより早い段階でフィルタリングできるため、読み取るデータ量を削減できます。 この最適化は意味を変えず、各最上位の OR 分岐が対象側に対して少なくとも 1 つの決定論的な述語を含む場合にのみ適用されます。
use_legacy_to_time
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.7 | 0 | デフォルトでは、従来の `toTime` ではなく、新しい `toTime` 関数(値を `Time` データ型に変換)を使用します(従来の関数は引き続き `toTimeWithFixedDate` として利用できます)。 |
| 25.6 | 1 | 新しい設定。toTime の従来の関数ロジックを使用できるようにします。これは toTimeWithFixedDate と同様に動作します。 |
有効にすると、toTime は従来の toTime 関数を指します。この関数は、日時の時刻部分を保持したまま、特定の固定日付に変換します。
無効の場合、toTime は新しい toTime 関数を指し、さまざまな型の値を Time 型に変換します。
この設定に関係なく、従来の関数は常に toTimeWithFixedDate としても利用できます。
この設定が有効な間は、Time 型への変換には CAST(x AS Time) または x::Time を使用してください。
use_lightweight_primary_key_index_analysis
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.6 | 1 | 長い主キーを持つテーブル向けに主キー索引解析を最適化する新しい設定 |
長い主キーを持つ MergeTree テーブルの主キー索引解析を最適化します。
有効にすると、索引解析の実行時間は主キーの長さではなく、主にクエリのフィルタの複雑さ (実際に使用されるキーカラム) に依存します。そのため、一部のカラムだけでフィルタするクエリでは、ソートキーを拡張しても索引解析に対する追加のオーバーヘッドはごくわずかです。
設定可能な値:
- 0 — 無効。索引解析時にすべての主キーカラムが処理されます。
- 1 — 有効。
use_parquet_metadata_cache
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.3 | 1 | Parquet ファイルのメタデータキャッシュを有効にします。 |
有効にすると、Parquet フォーマットで Parquet メタデータキャッシュを利用できます。
設定可能な値:
- 0 - 無効
- 1 - 有効
use_primary_key
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.1 | 1 | MergeTree でグラニュールレベルのプルーニングに主キーを使用するかどうかを制御する新しい設定。 |
MergeTree テーブルのクエリ実行時に、グラニュールのプルーニングに主キーを使用します。
設定可能な値:
- 0 — 無効。
- 1 — 有効。
use_reader_executor
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.6 | 0 | 従来の読み取りバッファの入れ子構造ではなく、新しいパイプライン ReaderExecutor を介して読み取りをルーティングするための新しい実験的設定。 |
実験的機能です。従来の読み取りバッファの入れ子構造ではなく、新しいパイプライン ReaderExecutor を介して読み取りをルーティングします。executor がまだサポートしていない構成では、従来のパスにフォールバックします。
use_roaring_bitmap_iceberg_positional_deletes
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 25.8 | 0 | 新しい設定 |
Iceberg の positional deletes に対して roaring bitmap を使用します。
use_streaming_marks_compression
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.7 | 0 | marks を最初に完全な生の marks 配列としてマテリアライズするのではなく、1 block ずつメモリ内表現に圧縮(streaming)するための新しい設定です。これにより、多数の substreams を持つ compact パーツでの marks 読み込み時のピークメモリ使用量を削減します。 |
MergeTree パーツの marks を読み込む際、最初に完全な生の marks 配列としてマテリアライズするのではなく、1 block ずつメモリ内表現に圧縮 (streaming) します。これにより、多数の substreams を持つ compact パーツ (たとえば、JSON カラムを持ち、write_marks_for_substreams_in_compact_parts が有効なテーブル) での marks 読み込み時のピークメモリ使用量を大幅に削減できます。
use_strict_insert_block_limits
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 26.4 | 0 | INSERT 時に厳密な最小/最大の挿入範囲を使用するための新しい設定です。min < max の場合は、max の制限が優先されます。 |
有効にすると、最小および最大の挿入ブロックサイズ制限の両方が厳密に適用されます。
ブロックは次の場合に生成されます:
- 最小しきい値 (AND): min_insert_block_size_rows と min_insert_block_size_bytes の両方に達した場合。
- 最大しきい値 (OR): max_insert_block_size_rows または max_insert_block_size_bytes のいずれかに達した場合。
無効な場合、ブロックは次の場合に生成されます:
- 最小しきい値 (OR): min_insert_block_size_rows または min_insert_block_size_bytes のいずれかに達した場合。
注: max の設定が min の設定より小さい場合は、max の制限が優先され、最小しきい値に達する前にブロックが生成されます。
注: この設定は非同期 INSERT では自動的に無効になります。これは、非同期 INSERT ではエントリごとの重複排除トークンが付加され、これが厳密な制限の適用に必要なブロックの分割と両立しないためです。
デフォルトでは無効です。
use_structure_from_insertion_table_in_table_functions
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 22.11 | 2 | table function で挿入先テーブルの構造を使用するよう改善 |
データからスキーマを推論する代わりに、挿入先テーブルの構造を使用します。設定可能な値: 0 - 無効、1 - 有効、2 - 自動
use_uncompressed_cache
非圧縮ブロックのキャッシュを使用するかどうかを指定します。0 または 1 を受け付けます。既定値は 0 (無効) です。
非圧縮キャッシュ (MergeTree family のテーブルでのみ有効) を使用すると、多数の短いクエリを扱う際のレイテンシを大幅に低減し、スループットを向上させることができます。短いリクエストを頻繁に送信するユーザーには、この設定を有効にしてください。また、uncompressed_cache_size 設定パラメータ (設定ファイルでのみ設定可能) にも注意してください。これは非圧縮キャッシュブロックのサイズです。既定では 8 GiB です。非圧縮キャッシュは必要に応じて格納され、使用頻度の低いデータは自動的に削除されます。
ある程度大きな量のデータ (100 万行以上) を読み取るクエリでは、本当に小さなクエリのための領域を確保するために、非圧縮キャッシュは自動的に無効になります。つまり、use_uncompressed_cache 設定は常に 1 のままにしておくことができます。
use_with_fill_by_sorting_prefix
バージョン履歴
| バージョン | デフォルト値 | コメント |
|---|---|---|
| 23.5 | 1 | ORDER BY 句で WITH FILL カラムより前にあるカラムは、ソートプレフィックスとなります。ソートプレフィックスの値が異なる行は、それぞれ独立して補完されます |
ORDER BY 句で WITH FILL カラムより前にあるカラムは、ソートプレフィックスとなります。ソートプレフィックスの値が異なる行は、それぞれ独立して補完されます