セッション設定
以下のすべての設定は、テーブル system.settings でも利用可能です。これらの設定は source から自動生成されています。
add_http_cors_header
タイプ: Bool
デフォルト値: 0
HTTP CORS ヘッダーを追加します。
additional_result_filter
タイプ: String
デフォルト値:
SELECT
クエリの結果に適用する追加のフィルター式です。
この設定は、サブクエリには適用されません。
例
additional_table_filters
タイプ: Map
デフォルト値:
指定されたテーブルから読み込んだ後に適用される追加のフィルター式です。
例
aggregate_functions_null_for_empty
タイプ: Bool
デフォルト値: 0
クエリ内のすべての集計関数を再書き換えることを有効または無効にします。それにより、-OrNull サフィックスが追加されます。SQL標準の互換性を確保するために有効にします。 これはクエリの再書き換えを介して実装されており、分散クエリに対して一貫した結果を得るために使用されます。
可能な値:
- 0 — 無効。
- 1 — 有効。
例
次の集計関数を含むクエリを考えてみましょう:
aggregate_functions_null_for_empty = 0
の場合、生成される結果は次のようになります:
aggregate_functions_null_for_empty = 1
の場合、結果は次のようになります:
aggregation_in_order_max_block_bytes
タイプ: UInt64
デフォルト値: 50000000
プライマリキーの順序で集計中に蓄積されるブロックの最大サイズ(バイト単位)です。ブロックサイズを小さくすることで、集計の最終的なマージステージをより並列化することができます。
aggregation_memory_efficient_merge_threads
タイプ: UInt64
デフォルト値: 0
メモリ効率の良いモードで中間集計結果をマージするために使用するスレッドの数です。大きくなるほど、消費されるメモリが増えます。0 は 'max_threads' と同等です。
allow_aggregate_partitions_independently
タイプ: Bool
デフォルト値: 0
パーティションキーがグループバイキーに適合する場合、別々のスレッドでのパーティションの独立した集計を有効にします。パーティションの数がコアの数に近く、パーティションのサイズがほぼ同じである場合に有益です。
allow_archive_path_syntax
タイプ: Bool
デフォルト値: 1
ファイル/S3 エンジン/テーブル関数は、アーカイブが正しい拡張子を持っている場合、'::' を持つパスを <archive> :: <file>\
として解析します。
allow_asynchronous_read_from_io_pool_for_merge_tree
タイプ: Bool
デフォルト値: 0
バックグラウンド I/O プールを使用して MergeTree テーブルから読み込みます。この設定は、I/O に制約のあるクエリのパフォーマンスを向上させる可能性があります。
allow_changing_replica_until_first_data_packet
タイプ: Bool
デフォルト値: 0
これが有効化されている場合、ヘッジリクエストでは、最初のデータパケットを受信するまで新しい接続を開始できます。すでに進捗があってもです(ただし、進捗は receive_data_timeout
タイムアウトまで更新されていません)。そうでなければ、最初に進捗を得た後はレプリカの変更を無効にします。
allow_create_index_without_type
タイプ: Bool
デフォルト値: 0
タイプなしで CREATE INDEX クエリを許可します。このクエリは無視されます。SQL 互換性テストのために作成されました。
allow_custom_error_code_in_throwif
タイプ: Bool
デフォルト値: 0
関数 throwIf()
でカスタムエラーコードを有効にします。true の場合、投げられた例外は予期しないエラーコードを持つ可能性があります。
allow_ddl
タイプ: Bool
デフォルト値: 1
これが true に設定されている場合、ユーザーは DDL クエリを実行できるようになります。
allow_deprecated_database_ordinary
タイプ: Bool
デフォルト値: 0
廃止された Ordinary エンジンを使用してデータベースを作成することを許可します。
allow_deprecated_error_prone_window_functions
タイプ: Bool
デフォルト値: 0
廃止されたエラーの多いウィンドウ関数の使用を許可します(neighbor, runningAccumulate, runningDifferenceStartingWithFirstValue, runningDifference)。
allow_deprecated_snowflake_conversion_functions
タイプ: Bool
デフォルト値: 0
snowflakeToDateTime
、snowflakeToDateTime64
、dateTimeToSnowflake
、および dateTime64ToSnowflake
関数は廃止されており、デフォルトでは無効になっています。
代わりに、snowflakeIDToDateTime
、snowflakeIDToDateTime64
、dateTimeToSnowflakeID
、および dateTime64ToSnowflakeID
関数を使用してください。
廃止された関数を再度有効にするには(例:移行期間中)、この設定を true
に設定してください。
allow_deprecated_syntax_for_merge_tree
タイプ: Bool
デフォルト値: 0
廃止されたエンジン定義構文で *MergeTree テーブルを作成することを許可します。
allow_distributed_ddl
タイプ: Bool
デフォルト値: 1
これが true に設定されている場合、ユーザーは分散 DDL クエリを実行できるようになります。
allow_drop_detached
タイプ: Bool
デフォルト値: 0
ALTER TABLE ... DROP DETACHED PART[ITION] ... クエリを許可します。
allow_execute_multiif_columnar
タイプ: Bool
デフォルト値: 1
multiIf 関数を列指向で実行を許可します。
allow_experimental_analyzer
タイプ: Bool
デフォルト値: 1
新しいクエリアナライザーを許可します。
allow_experimental_codecs
タイプ: Bool
デフォルト値: 0
これが true に設定されている場合、実験的な圧縮コーデックを指定できるようになります(しかし、現在はまだありません。このオプションは何もしません)。
allow_experimental_database_iceberg
タイプ: Bool
デフォルト値: 0
実験的なデータベースエンジン Iceberg の使用を許可します。
allow_experimental_database_materialized_postgresql
タイプ: Bool
デフォルト値: 0
Engine=MaterializedPostgreSQL(...) でデータベースを作成できるようにします。
allow_experimental_dynamic_type
タイプ: Bool
デフォルト値: 0
Dynamic データ型の作成を許可します。
allow_experimental_full_text_index
タイプ: Bool
デフォルト値: 0
これが true に設定されている場合、実験的な全文インデックスを使用できるようになります。
allow_experimental_funnel_functions
タイプ: Bool
デフォルト値: 0
ファネル分析のための実験的な関数を有効にします。
allow_experimental_hash_functions
タイプ: Bool
デフォルト値: 0
実験的なハッシュ関数を有効にします。
allow_experimental_inverted_index
タイプ: Bool
デフォルト値: 0
これが true に設定されている場合、実験的な逆インデックスを使用できるようになります。
allow_experimental_join_condition
タイプ: Bool
デフォルト値: 0
両方の左と右のテーブルからのカラムを含む不等条件での結合をサポートします。例えば t1.y < t2.y
。
allow_experimental_join_right_table_sorting
タイプ: Bool
デフォルト値: 0
これが true に設定され、join_to_sort_minimum_perkey_rows
と join_to_sort_maximum_table_rows
の条件が満たされた場合、キーで右テーブルを再整列し、左または内部ハッシュ結合のパフォーマンスを向上させます。
allow_experimental_json_type
タイプ: Bool
デフォルト値: 0
JSON データ型の作成を許可します。
allow_experimental_kafka_offsets_storage_in_keeper
タイプ: Bool
デフォルト値: 0
Kafka 関連のオフセットを ClickHouse Keeper に格納する実験的な機能を許可します。これが有効になると、ClickHouse Keeper パスとレプリカ名を Kafka テーブルエンジンに指定できます。その結果、通常の Kafka エンジンの代わりに、新しい種類のストレージエンジンが使用され、コミットされたオフセットは主に ClickHouse Keeper に格納されます。
allow_experimental_kusto_dialect
タイプ: Bool
デフォルト値: 0
Kusto Query Language (KQL) - SQL の代替を有効にします。
allow_experimental_live_view
タイプ: Bool
デフォルト値: 0
廃止された LIVE VIEW の作成を許可します。
可能な値:
- 0 — ライブビューの操作が無効になっています。
- 1 — ライブビューの操作が有効になっています。
allow_experimental_materialized_postgresql_table
タイプ: Bool
デフォルト値: 0
MaterializedPostgreSQL テーブルエンジンを使用できるようにします。デフォルトでは無効ですが、この機能は実験的です。
allow_experimental_nlp_functions
タイプ: Bool
デフォルト値: 0
自然言語処理のための実験的な関数を有効にします。
allow_experimental_object_type
タイプ: Bool
デフォルト値: 0
廃止された Object データ型を許可します。
allow_experimental_parallel_reading_from_replicas
タイプ: UInt64
デフォルト値: 0
SELECT クエリの実行時に各シャードから最大 max_parallel_replicas
のレプリカを使用します。読み込みは並列化され、動的に調整されます。0 - 無効、1 - 有効、失敗時には静かに無効、2 - 有効、失敗時には例外をスローします。
allow_experimental_prql_dialect
タイプ: Bool
デフォルト値: 0
PRQL - SQL の代替を有効にします。
allow_experimental_query_deduplication
タイプ: Bool
デフォルト値: 0
部品 UUID に基づく SELECT クエリの実験的データ重複排除。
allow_experimental_shared_set_join
タイプ: Bool
デフォルト値: 0
ClickHouse Cloud でのみ効果があります。ShareSet と SharedJoin を作成できるようにします。
allow_experimental_statistics
タイプ: Bool
デフォルト値: 0
統計 を持つカラムを定義し、統計を操作することを許可します。
allow_experimental_time_series_table
タイプ: Bool
デフォルト値: 0
TimeSeries テーブルエンジンを使用したテーブルの作成を許可します。
可能な値:
- 0 — TimeSeries テーブルエンジンは無効です。
- 1 — TimeSeries テーブルエンジンは有効です。
allow_experimental_ts_to_grid_aggregate_function
タイプ: Bool
デフォルト値: 0
Prometheus のようなタイムシリーズの再サンプリングのための実験的 tsToGrid 集約関数。クラウド専用。
allow_experimental_variant_type
タイプ: Bool
デフォルト値: 0
Variant データ型の作成を許可します。
allow_experimental_vector_similarity_index
タイプ: Bool
デフォルト値: 0
実験的なベクトル類似インデックスを許可します。
allow_experimental_window_view
タイプ: Bool
デフォルト値: 0
WINDOW VIEW を有効にします。十分に成熟していません。
allow_general_join_planning
タイプ: Bool
デフォルト値: 1
より複雑な条件を処理できるより一般的な結合計画アルゴリズムを許可しますが、ハッシュ結合でのみ機能します。ハッシュ結合が有効でない場合は、通常の結合計画アルゴリズムが使用され、設定の値に関係なく適用されます。
allow_get_client_http_header
タイプ: Bool
デフォルト値: 0
getClientHTTPHeader
関数を使用して、現在の HTTP リクエストのヘッダーの値を取得できるようにします。これはデフォルトでは無効であり、セキュリティ上の理由からです。一部のヘッダー(例: Cookie
)には機密情報が含まれる可能性があります。なお、X-ClickHouse-*
及び Authentication
ヘッダーは常に制限されており、この関数で取得することはできません。
allow_hyperscan
タイプ: Bool
デフォルト値: 1
Hyperscan ライブラリを使用する関数を許可します。コンパイル時間が長くなる可能性があり、リソースを過剰に消費する原因となるため、無効にします。
allow_introspection_functions
タイプ: Bool
デフォルト値: 0
クエリプロファイリングのための イントロスペクション関数 を有効または無効にします。
可能な値:
- 1 — イントロスペクション関数が有効。
- 0 — イントロスペクション関数が無効。
関連情報
- サンプリングクエリプロファイラー
- システムテーブル trace_log
allow_materialized_view_with_bad_select
タイプ: Bool
デフォルト値: 1
存在しないテーブルやカラムを参照する SELECT クエリを伴う CREATE MATERIALIZED VIEW を許可します。ただし、文法的には有効でなければなりません。リフレッシュ可能な MV には適用されません。MV スキーマが SELECT クエリから推測される必要がある場合(すなわち、CREATE にカラムリストや TO テーブルがない場合)には適用されません。ソーステーブルが作成される前に MV を作成する際に使用できます。
allow_named_collection_override_by_default
タイプ: Bool
デフォルト値: 1
デフォルトで名前付きコレクションのフィールドを上書きできるようにします。
allow_non_metadata_alters
タイプ: Bool
デフォルト値: 1
テーブルのメタデータだけでなく、ディスク上のデータにも影響を与えるALTERを実行できるようにします。
allow_nonconst_timezone_arguments
タイプ: Bool
デフォルト値: 0
toTimeZone()、fromUnixTimestamp*()、snowflakeToDateTime*() などの特定の時間関連関数での非定数タイムゾーン引数を許可します。
allow_nondeterministic_mutations
タイプ: Bool
デフォルト値: 0
ユーザーレベルの設定で、複製テーブルのミューテーションが dictGet
のような非決定的関数を使用できるようにします。
たとえば、辞書はノード間で同期していない可能性があるため、それから値を引き出すミューテーションは、デフォルトで複製テーブルでは許可されません。この設定を有効にすることで、この動作が可能になり、ユーザーはすべてのノードでデータが同期していることを確認する責任を持ちます。
例
allow_nondeterministic_optimize_skip_unused_shards
タイプ: Bool
デフォルト値: 0
シャーディングキーに非決定的(例えば rand
や dictGet
のような関数)を許可します。
可能な値:
- 0 — 不許可。
- 1 — 許可。
allow_not_comparable_types_in_comparison_functions
タイプ: Bool
デフォルト値: 0
比較関数 equal/less/greater/etc
で比較できないタイプ(JSON/Object/AggregateFunction など)の使用を許可または制限します。
allow_not_comparable_types_in_order_by
タイプ: Bool
デフォルト値: 0
ORDER BY キーで比較できないタイプ(JSON/Object/AggregateFunction など)の使用を許可または制限します。
allow_prefetched_read_pool_for_local_filesystem
タイプ: Bool
デフォルト値: 0
すべてのパーツがローカルファイルシステムにある場合、プリフェッチされたスレッドプールを優先します。
allow_prefetched_read_pool_for_remote_filesystem
タイプ: Bool
デフォルト値: 1
すべてのパーツがリモートファイルシステムにある場合、プリフェッチされたスレッドプールを優先します。
allow_push_predicate_ast_for_distributed_subqueries
タイプ: Bool
デフォルト値: 1
分析器が有効な分散サブクエリに対してASTレベルでプッシュプリディケートを許可します。
allow_push_predicate_when_subquery_contains_with
タイプ: Bool
デフォルト値: 1
サブクエリに WITH 句が含まれている場合にプッシュプリディケートを許可します。
allow_reorder_prewhere_conditions
タイプ: Bool
デフォルト値: 1
WHERE から PREWHERE への条件移動時に、それらを最適化するために再編成を許可します。
allow_settings_after_format_in_insert
タイプ: Bool
デフォルト値: 0
INSERT クエリの FORMAT の後に SETTINGS が許可されるかどうかを制御します。これを使用することは推奨されません。なぜなら、SETTINGS の一部が値として解釈される可能性があるからです。
例:
しかし、次のクエリは allow_settings_after_format_in_insert
でのみ動作します:
可能な値:
- 0 — 不許可。
- 1 — 許可。
この設定は、使用ケースが古い構文に依存している場合、後方互換性のためにのみ使用してください。
allow_simdjson
タイプ: Bool
デフォルト値: 1
AVX2 命令が利用できる場合、'JSON*' 関数で simdjson ライブラリを使用できるようにします。無効にすると rapidjson が使用されます。
allow_statistics_optimize
タイプ: Bool
デフォルト値: 0
クエリを最適化するために統計を使用できるようにします。
allow_suspicious_codecs
タイプ: Bool
デフォルト値: 0
これが true に設定されている場合、意味のない圧縮コーデックを指定できるようになります。
allow_suspicious_fixed_string_types
タイプ: Bool
デフォルト値: 0
CREATE TABLE 文では、n > 256 の FixedString(n) 型のカラムを作成することを許可します。長さが 256 以上の FixedString は疑わしく、誤用を示す可能性が高いです。
allow_suspicious_indices
タイプ: Bool
デフォルト値: 0
同一の式を持つプライマリ/セカンダリインデックスとソートキーを拒否します。
allow_suspicious_low_cardinality_types
タイプ: Bool
デフォルト値: 0
8 バイト以下の固定サイズのデータ型(数値データ型および FixedString(8_bytes_or_less)
)で LowCardinality を使用することを許可または制限します。
小さな固定値の場合、LowCardinality
を使用することは通常非効率的です。なぜなら ClickHouse が各行のために数値インデックスを保存するためです。その結果:
- ディスクスペースの使用量が増加する可能性があります。
- 辞書のサイズによっては RAM の消費が増加する可能性があります。
- 余分なコーディング/エンコーディング処理のために、一部の関数が遅くなる可能性があります。
MergeTree-エンジンテーブルのマージ時間が上記の理由から増加する可能性があります。
可能な値:
- 1 —
LowCardinality
の使用が制限されません。 - 0 —
LowCardinality
の使用が制限されます。
allow_suspicious_primary_key
タイプ: Bool
デフォルト値: 0
MergeTree 用の疑わしい PRIMARY KEY
/ ORDER BY
を許可します(すなわち、SimpleAggregateFunctionなど)。
allow_suspicious_ttl_expressions
タイプ: Bool
デフォルト値: 0
テーブルのカラムに依存しない TTL 式を拒否します。これは大抵、ユーザーエラーを示します。
allow_suspicious_types_in_group_by
タイプ: Bool
デフォルト値: 0
GROUP BY キーで Variant と Dynamic タイプの使用を許可または制限します。
allow_suspicious_types_in_order_by
タイプ: Bool
デフォルト値: 0
ORDER BY キーで Variant と Dynamic タイプの使用を許可または制限します。
allow_suspicious_variant_types
タイプ: Bool
デフォルト値: 0
CREATE TABLE 文では、類似のバリアントタイプ(例えば、異なる数値または日付型)を持つ Variant タイプを指定できるようにします。この設定を有効にすると、類似タイプの値を扱う際に曖昧さが生じる可能性があります。
allow_unrestricted_reads_from_keeper
タイプ: Bool
デフォルト値: 0
システム.zookeeper テーブルからの制限なしの読み取りを許可します(パスに条件を付けずに)。便利ですが、zookeeper に対しては安全ではありません。
alter_move_to_space_execute_async
タイプ: Bool
デフォルト値: 0
ALTER TABLE MOVE ... TO [DISK|VOLUME] を非同期で実行します。
alter_partition_verbose_result
タイプ: Bool
デフォルト値: 0
パーティションやパーツに対する操作が成功したことを示す情報の表示を有効または無効にします。 ATTACH PARTITION|PART と FREEZE PARTITION に適用されます。
可能な値:
- 0 — 冗長性を無効にします。
- 1 — 冗長性を有効にします。
例
alter_sync
タイプ: UInt64
デフォルト値: 1
ALTER、OPTIMIZE、または TRUNCATE クエリによってレプリカで実行されるアクションを待機する設定を可能にします。
可能な値:
- 0 — 待たない。
- 1 — 自分の実行を待つ。
- 2 — みんなを待つ。
クラウドのデフォルト値: 0
。
alter_sync
は Replicated
テーブルにのみ適用可能で、非 Replicated
テーブルの ALTER に対しては何も行いません。
analyze_index_with_space_filling_curves
タイプ: Bool
デフォルト値: 1
テーブルのインデックスに空間充填曲線がある場合(例: ORDER BY mortonEncode(x, y)
または ORDER BY hilbertEncode(x, y)
)、クエリがその引数に条件を持つときは、その空間充填曲線をインデックス分析に使用します。
analyzer_compatibility_join_using_top_level_identifier
タイプ: Bool
デフォルト値: 0
JOIN USING の識別子をプロジェクションから解決するよう強制します(例えば、SELECT a + 1 AS b FROM t1 JOIN t2 USING (b)
では、t1.a + 1 = t2.b
による結合が行われ、t1.b = t2.b
ではありません)。
any_join_distinct_right_table_keys
タイプ: Bool
デフォルト値: 0
ANY INNER|LEFT JOIN
操作での従来の ClickHouse サーバーの動作を有効にします。
この設定は、レガシーの JOIN
動作に依存する使用ケースがある場合のみ使用してください。
レガシーの動作が有効の場合:
t1 ANY LEFT JOIN t2
とt2 ANY RIGHT JOIN t1
操作の結果は等しくありません。なぜなら、ClickHouse は左から右のテーブルキーのマッピングに対して多対一のロジックを使用するからです。ANY INNER JOIN
操作の結果には、左のテーブルからのすべての行が含まれ、SEMI LEFT JOIN
操作の結果と同様です。
レガシーの動作が無効の場合:
t1 ANY LEFT JOIN t2
とt2 ANY RIGHT JOIN t1
操作の結果は等しくなります。なぜなら、ClickHouse はANY RIGHT JOIN
操作に多対一のキーのマッピングを提供するロジックを使用するからです。ANY INNER JOIN
操作の結果には、左と右のテーブルそれぞれのキーごとに 1 行のみが含まれます。
可能な値:
- 0 — レガシー動作が無効。
- 1 — レガシー動作が有効。
参考:
apply_deleted_mask
タイプ: Bool
デフォルト値: 1
軽量 DELETE で削除された行をフィルタリングすることを有効にします。無効にすると、クエリはそれらの行を読み取ることができるようになります。これはデバッグや「アンダーデリート」シナリオに役立ちます。
apply_mutations_on_fly
タイプ: Bool
デフォルト値: 0
true の場合、データパーツにリマテリアライズされていないミューテーション(UPDATE および DELETE)が SELECT に適用されます。
apply_settings_from_server
タイプ: Bool
デフォルト値: 1
クライアントがサーバーから設定を受け入れるべきかどうかを示します。
これは、INSERT 入力データの解析やクエリ結果のフォーマットなど、クライアント側で行われる操作にのみ影響を与えます。クエリの実行の大部分はサーバー上で行われ、この設定の影響は受けません。
通常、この設定はユーザープロファイル(users.xml または ALTER USER
のようなクエリ)で設定されるべきであり、クライアントで設定されるべきではありません(クライアントのコマンドライン引数や SET
クエリ、または SELECT
クエリの SETTINGS
セクションを介して)。クライアントを通じて、この設定を false に変更することはできますが、true に変更すること(サーバーのプロファイルに apply_settings_from_server = false
が設定されている場合)はできません。
なお、最初は(24.12)サーバー設定(send_settings_to_client
)がありましたが、その後、より使いやすくするためにこのクライアント設定に置き換えられました。
asterisk_include_alias_columns
タイプ: Bool
デフォルト値: 0
ワイルドカードクエリ(SELECT *
)で ALIAS カラムを含めます。
可能な値:
- 0 - 無効
- 1 - 有効
asterisk_include_materialized_columns
タイプ: Bool
デフォルト値: 0
ワイルドカードクエリ(SELECT *
)で MATERIALIZED カラムを含めます。
可能な値:
- 0 - 無効
- 1 - 有効
async_insert
タイプ: Bool
デフォルト値: 0
true の場合、INSERT クエリからのデータはキューに保存され、バックグラウンドでテーブルにフラッシュされます。wait_for_async_insert が false の場合、INSERT クエリはほぼ即座に処理されます。それ以外の場合は、データがテーブルにフラッシュされるまでクライアントが待機します。
async_insert_busy_timeout_decrease_rate
タイプ: Double
デフォルト値: 0.2
適応的非同期挿入タイムアウトが減少する指数成長率。
async_insert_busy_timeout_increase_rate {#async_insert_busy_timeout_increase_rate
タイプ: Double
デフォルト値: 0.2
適応的非同期挿入タイムアウトが増加する指数成長率。
async_insert_busy_timeout_max_ms
タイプ: ミリ秒
デフォルト値: 200
最初のデータが現れてからクエリごとに収集されたデータをダンプする前に待機する最大時間。
async_insert_busy_timeout_min_ms
タイプ: ミリ秒
デフォルト値: 50
async_insert_use_adaptive_busy_timeoutを通じて自動調整が有効になっている場合、最初のデータが現れてからクエリごとに収集されたデータをダンプする前に待機する最小時間。これは、適応アルゴリズムの初期値としても機能する。
async_insert_deduplicate
タイプ: Bool
デフォルト値: 0
複製テーブルでの非同期INSERTクエリに対して、挿入ブロックの重複排除を実行することを指定します。
async_insert_max_data_size
タイプ: UInt64
デフォルト値: 10485760
挿入される前に、クエリごとに収集される未解析データの最大サイズ(バイト単位)。
async_insert_max_query_number
タイプ: UInt64
デフォルト値: 450
挿入される前の最大INSERTクエリ数。
async_insert_poll_timeout_ms
タイプ: ミリ秒
デフォルト値: 10
非同期挿入キューからデータをポーリングするためのタイムアウト。
async_insert_use_adaptive_busy_timeout
タイプ: Bool
デフォルト値: 1
trueに設定されている場合、非同期挿入に対して適応的なビジータイムアウトを使用します。
async_query_sending_for_remote
タイプ: Bool
デフォルト値: 1
リモートクエリを実行する際に、非同期接続を作成しクエリを送信を有効にします。
デフォルトで有効です。
async_socket_for_remote
タイプ: Bool
デフォルト値: 1
リモートクエリを実行する際にソケットから非同期読み込みを有効にします。
デフォルトで有効です。
azure_allow_parallel_part_upload
タイプ: Bool
デフォルト値: 1
Azureマルチパートアップロードに複数のスレッドを使用します。
azure_check_objects_after_upload
タイプ: Bool
デフォルト値: 0
アップロードされた各オブジェクトをAzure Blobストレージで確認して、アップロードが成功したことを確認します。
azure_create_new_file_on_insert
タイプ: Bool
デフォルト値: 0
Azureエンジンテーブルに挿入するたびに新しいファイルを作成することを有効または無効にします。
azure_ignore_file_doesnt_exist
タイプ: Bool
デフォルト値: 0
特定のキーを読み取る際にファイルが存在しない場合、ファイルの不在を無視します。
可能な値:
- 1 —
SELECT
が空の結果を返します。 - 0 —
SELECT
が例外をスローします。
azure_list_object_keys_size
タイプ: UInt64
デフォルト値: 1000
ListObjectリクエストでバッチとして返される可能性のあるファイルの最大数。
azure_max_blocks_in_multipart_upload
タイプ: UInt64
デフォルト値: 50000
Azureのマルチパートアップロードにおけるブロックの最大数。
azure_max_inflight_parts_for_one_file
タイプ: UInt64
デフォルト値: 20
マルチパートアップロードリクエストで同時にロードされる部分の最大数。0は無制限を意味します。
azure_max_single_part_copy_size
タイプ: UInt64
デフォルト値: 268435456
Azure Blobストレージにシングルパートコピーを使用してコピーするオブジェクトの最大サイズ。
azure_max_single_part_upload_size
タイプ: UInt64
デフォルト値: 104857600
Azure Blobストレージにシングルパートアップロードを使用してアップロードするオブジェクトの最大サイズ。
azure_max_single_read_retries
タイプ: UInt64
デフォルト値: 4
Azure Blobストレージでのシングルリードの最大リトライ回数。
azure_max_unexpected_write_error_retries
タイプ: UInt64
デフォルト値: 4
Azure Blobストレージでの書き込み時の予期しないエラーに対する最大リトライ回数。
azure_max_upload_part_size
タイプ: UInt64
デフォルト値: 5368709120
Azure Blobストレージへのマルチパートアップロード中の部分の最大サイズ。
azure_min_upload_part_size
タイプ: UInt64
デフォルト値: 16777216
Azure Blobストレージへのマルチパートアップロード中の部分の最小サイズ。
azure_sdk_max_retries
タイプ: UInt64
デフォルト値: 10
Azure SDK内での最大リトライ回数。
azure_sdk_retry_initial_backoff_ms
タイプ: UInt64
デフォルト値: 10
Azure SDKでのリトライ間の最小バックオフ時間(ミリ秒)。
azure_sdk_retry_max_backoff_ms
タイプ: UInt64
デフォルト値: 1000
Azure SDKでのリトライ間の最大バックオフ時間(ミリ秒)。
azure_skip_empty_files
タイプ: Bool
デフォルト値: 0
S3エンジンで空のファイルをスキップすることを有効または無効にします。
可能な値:
- 0 — 空のファイルがリクエストされたフォーマットに適合しない場合、
SELECT
が例外をスローします。 - 1 — 空のファイルの場合、
SELECT
が空の結果を返します。
azure_strict_upload_part_size
タイプ: UInt64
デフォルト値: 0
Azure Blobストレージへのマルチパートアップロード中にアップロードする部分の正確なサイズ。
azure_throw_on_zero_files_match
タイプ: Bool
デフォルト値: 0
グロブ展開規則に従って一致するファイルがゼロの場合、エラーをスローします。
可能な値:
- 1 —
SELECT
が例外をスローします。 - 0 —
SELECT
が空の結果を返します。
azure_truncate_on_insert
タイプ: Bool
デフォルト値: 0
Azureエンジンテーブルへの挿入前のトランケートを有効または無効にします。
azure_upload_part_size_multiply_factor
タイプ: UInt64
デフォルト値: 2
azure_multiply_parts_count_thresholdからの単一の書き込みに対してアップロードされた各部分のサイズをこの係数で乗算します。
azure_upload_part_size_multiply_parts_count_threshold
タイプ: UInt64
デフォルト値: 500
この数の部分がAzure Blobストレージにアップロードされるたびに、azure_min_upload_part_sizeがazure_upload_part_size_multiply_factorで乗算されます。
backup_restore_batch_size_for_keeper_multi
タイプ: UInt64
デフォルト値: 1000
バックアップまたは復元中に[Zoo]Keeperに対するマルチリクエストの最大バッチサイズ。
backup_restore_batch_size_for_keeper_multiread
タイプ: UInt64
デフォルト値: 10000
バックアップまたは復元中の[Zoo]Keeperに対するマルチリードリクエストの最大バッチサイズ。
backup_restore_failure_after_host_disconnected_for_seconds
タイプ: UInt64
デフォルト値: 3600
BACKUP ON CLUSTERまたはRESTORE ON CLUSTER操作中にホストがこの時間の間にZooKeeper内の一時的な「alive」ノードを再作成しない場合、全体のバックアップまたは復元は失敗と見なされます。 この値は、ホストが障害後にZooKeeperに再接続するのに合理的な時間よりも大きい必要があります。 ゼロは無制限を意味します。
backup_restore_finish_timeout_after_error_sec
タイプ: UInt64
デフォルト値: 180
イニシエーターが「エラー」ノードに反応するまで、他のホストが待機すべき時間。
backup_restore_keeper_fault_injection_probability
タイプ: Float
デフォルト値: 0
バックアップまたは復元中のKeeperリクエストの失敗の確率、おおよそ。[0.0f, 1.0f]の範囲内で有効な値です。
backup_restore_keeper_fault_injection_seed
タイプ: UInt64
デフォルト値: 0
0 - ランダムシード、そうでなければ設定値。
backup_restore_keeper_max_retries
タイプ: UInt64
デフォルト値: 1000
バックアップまたは復元操作の途中での[Zoo]Keeper操作の最大リトライ数。 一時的な[Zoo]Keeper障害によって全体の操作が失敗しないようにするために十分大きい必要があります。
backup_restore_keeper_max_retries_while_handling_error
タイプ: UInt64
デフォルト値: 20
BACKUP ON CLUSTERまたはRESTORE ON CLUSTER操作のエラー処理中の[Zoo]Keeper操作の最大リトライ数。
backup_restore_keeper_max_retries_while_initializing
タイプ: UInt64
デフォルト値: 20
BACKUP ON CLUSTERまたはRESTORE ON CLUSTER操作の初期化中の[Zoo]Keeper操作の最大リトライ数。
backup_restore_keeper_retry_initial_backoff_ms
タイプ: UInt64
デフォルト値: 100
バックアップまたは復元中の[Zoo]Keeper操作の初期バックオフタイムアウト。
backup_restore_keeper_retry_max_backoff_ms
タイプ: UInt64
デフォルト値: 5000
バックアップまたは復元中の[Zoo]Keeper操作の最大バックオフタイムアウト。
backup_restore_keeper_value_max_size
タイプ: UInt64
デフォルト値: 1048576
バックアップ中の[Zoo]Keeperノードのデータの最大サイズ。
backup_restore_s3_retry_attempts
タイプ: UInt64
デフォルト値: 1000
Aws::Client::RetryStrategyの設定、Aws::Clientは自動的にリトライします。0はリトライなしを意味します。これはバックアップ/復元のみに適用されます。
cache_warmer_threads
タイプ: UInt64
デフォルト値: 4
ClickHouse Cloudにおいてのみ影響があります。cache_populated_by_fetchが有効な場合、新しいデータパーツをファイルキャッシュに推測的にダウンロードするためのバックグラウンドスレッドの数。ゼロは無効にします。
calculate_text_stack_trace
タイプ: Bool
デフォルト値: 1
クエリ実行中に例外が発生した場合にテキストスタックトレースを計算します。これはデフォルトです。この設定を無効にすると、多数の間違ったクエリが実行される場合、ファズテストが遅くなる可能性があります。通常の状況では、このオプションを無効にしないでください。
cancel_http_readonly_queries_on_client_close
タイプ: Bool
デフォルト値: 0
クライアントが応答を待たずに接続を閉じたときに、HTTPの読み取り専用クエリ(例: SELECT)をキャンセルします。
Cloudのデフォルト値: 1
。
cast_ipv4_ipv6_default_on_conversion_error
タイプ: Bool
デフォルト値: 0
IPv4へのCAST演算子、IPV6型へのCAST演算子、toIPv4、toIPv6関数は、変換エラーの際に例外をスローする代わりにデフォルト値を返します。
cast_keep_nullable
タイプ: Bool
デフォルト値: 0
CST操作の際にNullable
データ型を保持することを有効または無効にします。
この設定が有効で、CAST
関数の引数がNullable
の場合、結果もNullable
型に変換されます。この設定が無効な場合、結果は常に正確な宛先型になります。
可能な値:
- 0 —
CAST
結果は指定された宛先型と厳密に一致します。 - 1 — 引数の型が
Nullable
の場合、CAST
結果はNullable(DestinationDataType)
に変換されます。
例
次のクエリは宛先データ型に正確に変換されます:
結果:
次のクエリは宛先データ型のNullable
変換が結果になります:
結果:
関連情報
- CAST関数
cast_string_to_dynamic_use_inference
タイプ: Bool
デフォルト値: 0
StringからDynamicへの変換時に型の推論を使用します。
check_query_single_value_result
タイプ: Bool
デフォルト値: 1
MergeTree
ファミリーエンジンのためのCHECK TABLEクエリ結果の詳細レベルを定義します。
可能な値:
- 0 — クエリはテーブルの各データパートのチェック状態を表示します。
- 1 — クエリは一般的なテーブルチェック状態を表示します。
check_referential_table_dependencies
タイプ: Bool
デフォルト値: 0
DDLクエリ(DROP TABLEやRENAMEなど)が参照の依存関係を壊さないことを確認します。
check_table_dependencies
タイプ: Bool
デフォルト値: 1
DDLクエリ(DROP TABLEやRENAMEなど)が依存関係を壊さないことを確認します。
checksum_on_read
タイプ: Bool
デフォルト値: 1
読み取り時にチェックサムを検証します。デフォルトでは有効であり、常に本番環境では有効にする必要があります。この設定を無効にすることで得られる利益は期待しないでください。この設定は実験やベンチマークにのみ使用される可能性があります。この設定はMergeTreeファミリーのテーブルにのみ適用され、他のテーブルエンジンやネットワーク越しのデータ受信時には常にチェックサムが検証されます。
cloud_mode
タイプ: Bool
デフォルト値: 0
クラウドモード。
cloud_mode_database_engine
タイプ: UInt64
デフォルト値: 1
クラウドで許可されているデータベースエンジン。1 - DDLをReplicatedデータベースを使用するように書き換える、2 - DDLをSharedデータベースを使用するように書き換える。
cloud_mode_engine
タイプ: UInt64
デフォルト値: 1
クラウドで許可されるエンジンファミリー。
- 0 - すべてを許可
- 1 - DDLを*ReplicatedMergeTreeを使用するように書き換える
- 2 - DDLをSharedMergeTreeを使用するように書き換える
- 3 - 明示的に指定されたリモートディスクがある場合を除いてSharedMergeTreeを使用するように書き換える
UInt64は公開部分を最小限にしています。
cluster_for_parallel_replicas
タイプ: String
デフォルト値:
現在のサーバーが位置するシャードのクラスター。
collect_hash_table_stats_during_aggregation
タイプ: Bool
デフォルト値: 1
メモリ割り当てを最適化するためにハッシュテーブルの統計を収集することを有効にします。
collect_hash_table_stats_during_joins
タイプ: Bool
デフォルト値: 1
メモリ割り当てを最適化するためにハッシュテーブルの統計を収集することを有効にします。
compatibility
タイプ: String
デフォルト値:
compatibility
設定は、ClickHouseが前のバージョンのデフォルト設定を使用することを引き起こします。前のバージョンは設定として提供されます。
設定がデフォルトでない値に設定されている場合、その設定は尊重されます(変更されていない設定のみがcompatibility
設定の影響を受けます)。
この設定はClickHouseのバージョン番号を文字列として受け取ります(例: 22.3
, 22.8
)。空の値はこの設定が無効であることを意味します。
デフォルトでは無効です。
ClickHouse Cloudでは、compatibility設定はClickHouse Cloudサポートによって設定する必要があります。設定を行うには、ケースを開いてください。
compatibility_ignore_auto_increment_in_create_table
タイプ: Bool
デフォルト値: 0
真の場合は列宣言のAUTO_INCREMENTキーワードを無視します。そうでない場合はエラーを返します。これによりMySQLからの移行が簡素化されます。
compatibility_ignore_collation_in_create_table
タイプ: Bool
デフォルト値: 1
テーブル作成時に照合を無視する互換性。
compile_aggregate_expressions
タイプ: Bool
デフォルト値: 1
集約関数をネイティブコードにJITコンパイルすることを有効または無効にします。この設定を有効にすることで、パフォーマンスが向上する場合があります。
可能な値:
- 0 — 集約はJITコンパイルなしで行われます。
- 1 — 集約はJITコンパイルを使用して行われます。
関連情報
compile_expressions
タイプ: Bool
デフォルト値: 0
一部のスカラ関数と演算子をネイティブコードにコンパイルします。LLVMコンパイラインフラストラクチャのバグにより、AArch64マシンではnullptr参照が発生し、結果としてサーバーがクラッシュすることがあります。この設定は有効にしないでください。
compile_sort_description
タイプ: Bool
デフォルト値: 1
ソート記述をネイティブコードにコンパイルします。
connect_timeout
タイプ: 秒
デフォルト値: 10
レプリカがない場合の接続タイムアウト。
connect_timeout_with_failover_ms
タイプ: ミリ秒
デフォルト値: 1000
Distributedテーブルエンジンのためのリモートサーバーへの接続タイムアウト。クラスター定義で『シャード』および『レプリカ』セクションが使用されている場合。 接続に失敗した場合、さまざまなレプリカへの接続を試みます。
connect_timeout_with_failover_secure_ms
タイプ: ミリ秒
デフォルト値: 1000
最初の正常なレプリカを選択するための接続タイムアウト(セキュア接続用)。
connection_pool_max_wait_ms
タイプ: ミリ秒
デフォルト値: 0
接続プールが満杯の場合の接続待機時間(ミリ秒)。
可能な値:
- 正の整数。
- 0 — 無限タイムアウト。
connections_with_failover_max_tries
タイプ: UInt64
デフォルト値: 3
Distributedテーブルエンジンの各レプリカへの接続試行の最大回数。
convert_query_to_cnf
タイプ: Bool
デフォルト値: 0
true
に設定すると、SELECT
クエリが論理和標準形(CNF)に変換されます。CNFでのクエリの書き換えがより高速に実行される場合があるシナリオがあります(詳細な説明はこのGithubの問題をご覧ください)。
以下のSELECT
クエリが修正されないことに注意してください(デフォルトの動作):
結果は次のようになります:
convert_query_to_cnf
をtrue
に設定すると、変更が見られます:
WHERE句がCNFに書き換えられることに注意してくださいが、結果セットは同一であり、論理は変わりません:
可能な値: true, false
count_distinct_implementation
タイプ: String
デフォルト値: uniqExact
COUNT(DISTINCT ...)の構文を実行するために使用すべきuniq*
関数の指定。
可能な値:
count_distinct_optimization
タイプ: Bool
デフォルト値: 0
COUNT DISTINCTをGROUP BYのサブクエリに書き換えます。
create_if_not_exists
タイプ: Bool
デフォルト値: 0
CREATE
ステートメントのデフォルトでIF NOT EXISTS
を有効にします。この設定またはIF NOT EXISTS
が指定され、提供された名前のテーブルがすでに存在する場合、例外はスローされません。
create_index_ignore_unique
タイプ: Bool
デフォルト値: 0
UNIQUEキーワードをCREATE UNIQUE INDEXで無視します。SQL互換性テストのために作成されました。
create_replicated_merge_tree_fault_injection_probability
タイプ: Float
デフォルト値: 0
ZooKeeperにメタデータを作成した後のテーブル作成中の故障注入の確率。
create_table_empty_primary_key_by_default
タイプ: Bool
デフォルト値: 0
ORDER BYおよびPRIMARY KEYが指定されていない場合に空の主キーで*MergeTreeテーブルを作成させる。
cross_join_min_bytes_to_compress
タイプ: UInt64
デフォルト値: 1073741824
CROSS JOIN内で圧縮するための最小サイズ。ゼロの場合はこのしきい値を無効にします。このブロックは、行数またはバイト数のいずれかのしきい値が達成された場合に圧縮されます。
cross_join_min_rows_to_compress
タイプ: UInt64
デフォルト値: 10000000
CROSS JOIN内でブロックを圧縮するための最小行数。ゼロの場合はこのしきい値を無効にします。このブロックは、行数またはバイト数のいずれかのしきい値が達成された場合に圧縮されます。
data_type_default_nullable
タイプ: Bool
デフォルト値: 0
列定義で明示的な修飾子NULLまたはNOT NULLがないデータ型を、Nullableとして扱うことを許可します。
可能な値:
- 1 — 列定義のデータ型がデフォルトで
Nullable
に設定されます。 - 0 — 列定義のデータ型がデフォルトで
Nullable
でないように設定されます。
database_atomic_wait_for_drop_and_detach_synchronously
タイプ: Bool
デフォルト値: 0
すべてのDROP
およびDETACH
クエリにSYNC
修飾子を追加します。
可能な値:
- 0 — クエリは遅延して実行されます。
- 1 — クエリは遅延なしに実行されます。
database_replicated_allow_explicit_uuid
タイプ: UInt64
デフォルト値: 0
0 - 複製データベース内のテーブルに明示的にUUIDを指定することを許可しません。1 - 許可。2 - 許可するが、指定したUUIDを無視してランダムなUUIDを生成します。
database_replicated_allow_heavy_create
タイプ: Bool
デフォルト値: 0
複製データベースエンジンで長時間実行されるDDLクエリ(CREATE AS SELECTおよびPOPULATE)を許可します。この設定はDDLキューを長時間ブロックする可能性があります。
database_replicated_allow_only_replicated_engine
タイプ: Bool
デフォルト値: 0
複製エンジンを使用するデータベースのみを作成することを許可します。
database_replicated_allow_replicated_engine_arguments
タイプ: UInt64
デフォルト値: 0
0 - 複製データベース内の*MergeTreeテーブルに対してZooKeeperのパスおよびレプリカ名を明示的に指定することを許可しません。1 - 許可。2 - 許可するが、指定したパスを無視してデフォルトのものを使用します。3 - 許可し、警告をログに記録しません。
database_replicated_always_detach_permanently
タイプ: Bool
デフォルト値: 0
データベースエンジンが複製の場合、DETACH TABLEをDETACH TABLE PERMANENTLYとして実行します。
database_replicated_enforce_synchronous_settings
タイプ: Bool
デフォルト値: 0
いくつかのクエリのための同期待機を強制します(詳細はdatabase_atomic_wait_for_drop_and_detach_synchronously、mutation_sync、alter_syncを参照)。これらの設定を有効にすることは推奨されません。
database_replicated_initial_query_timeout_sec
タイプ: UInt64
デフォルト値: 300
初期DDLクエリが複製データベースにおいて前のDDLキューのエントリを処理するのを待機する時間を秒単位で設定します。
可能な値:
- 正の整数。
- 0 — 無限。
decimal_check_overflow
タイプ: Bool
デフォルト値: 1
10進数の演算/比較操作のオーバーフローをチェックします。
deduplicate_blocks_in_dependent_materialized_views
タイプ: Bool
デフォルト値: 0
複製テーブルからデータを受信するマテリアライズドビューに対する重複排除チェックを有効または無効にします。
可能な値:
0 — 無効。 1 — 有効。
使用法
デフォルトでは、マテリアライズドビューに対する重複排除は行われませんが、ソーステーブル内で実行されます。
挿入されたブロックがソーステーブル内での重複排除によりスキップされた場合、添付されたマテリアライズドビューへの挿入はありません。この動作は、マテリアライズドビューの集約後に挿入されたブロックが同じである場合でも機能しますが、ソーステーブルへの異なる挿入から派生したものです。
同時に、この動作はINSERT
の冪等性を「壊します」。メインテーブルへのINSERT
が成功し、マテリアライズドビューへのINSERT
が失敗(例: ClickHouse Keeperとの通信障害のため)した場合、クライアントはエラーを取得し、操作をリトライできます。しかし、マテリアライズドビューは、源テーブルでの重複排除により、2回目の挿入を受け入れません。deduplicate_blocks_in_dependent_materialized_views
設定を有効にすることで、この動作を変更できます。リトライ時に、マテリアライズドビューは再挿入を受け入れ、ソーステーブルのチェック結果を無視して重複排除のチェックを自身で行い、最初の失敗により失われた行を挿入します。
default_materialized_view_sql_security
タイプ: SQLSecurityType
デフォルト値: DEFINER
マテリアライズドビューを作成する際のSQL SECURITYオプションのデフォルト値を設定します。 SQLセキュリティの詳細についてはこちら。
デフォルトの値はDEFINER
です。
default_max_bytes_in_join
タイプ: UInt64
デフォルト値: 1000000000
制限が必要だがmax_bytes_in_joinが設定されていない場合の右側テーブルの最大サイズ。
default_normal_view_sql_security
タイプ: SQLSecurityType
デフォルト値: INVOKER
通常のビューを作成する際のデフォルトのSQL SECURITY
オプションを設定します。 SQLセキュリティの詳細についてはこちら。
デフォルトの値はINVOKER
です。
default_table_engine
タイプ: DefaultTableEngine
デフォルト値: MergeTree
CREATE
ステートメントでENGINE
が設定されていない場合に使用されるデフォルトのテーブルエンジン。
可能な値:
- 有効なテーブルエンジン名を表す文字列。
Cloudのデフォルト値: SharedMergeTree
。
例
クエリ:
結果:
この例では、Engine
を指定しない新しいテーブルはすべてLog
テーブルエンジンを使用します。
クエリ:
結果:
default_temporary_table_engine
Type: DefaultTableEngine
Default value: Memory
一時テーブル用の default_table_engine
と同じです。
この例では、Engine
を指定しない新しい一時テーブルは Log
テーブルエンジンを使用します:
Query:
Result:
default_view_definer
Type: String
Default value: CURRENT_USER
ビューを作成する際にデフォルトの DEFINER
オプションを設定できます。SQLセキュリティの詳細。
デフォルト値は CURRENT_USER
です。
describe_compact_output
Type: Bool
Default value: 0
trueの場合、DESCRIBE クエリの結果にカラム名とタイプのみを含めます。
describe_extend_object_types
Type: Bool
Default value: 0
DESCRIBE クエリで Object 型のカラムの具体的な型を推測します。
describe_include_subcolumns
Type: Bool
Default value: 0
DESCRIBE クエリのためにサブカラムを記述することを可能にします。例えば、Tupleのメンバーや、Map、NullableやArrayデータ型のサブカラム。
可能な値:
- 0 — サブカラムは
DESCRIBE
クエリに含まれません。 - 1 — サブカラムは
DESCRIBE
クエリに含まれます。
Example
DESCRIBE ステートメントの例を参照してください。
describe_include_virtual_columns
Type: Bool
Default value: 0
trueの場合、テーブルの仮想カラムが DESCRIBE クエリの結果に含まれます。
dialect
Type: Dialect
Default value: clickhouse
クエリを解析するために使用されるダイアレクト。
dictionary_validate_primary_key_type
Type: Bool
Default value: 0
辞書のための主キータイプを検証します。デフォルトではシンプルなレイアウトの ID タイプは UInt64 に暗黙的に変換されます。
distinct_overflow_mode
Type: OverflowMode
Default value: throw
制限を超えた場合に何をするか。
distributed_aggregation_memory_efficient
Type: Bool
Default value: 1
分散集計でのメモリ保存モードが有効です。
distributed_background_insert_batch
Type: Bool
Default value: 0
挿入されたデータをバッチで送信することを有効または無効にします。
バッチ送信が有効な場合、Distributed テーブルエンジンは、個別に送信するのではなく、一度の操作で挿入されたデータの複数のファイルを送信しようとします。バッチ送信は、サーバーやネットワークリソースをより有効活用することでクラスタのパフォーマンスを向上させます。
可能な値:
- 1 — 有効。
- 0 — 無効。
distributed_background_insert_max_sleep_time_ms
Type: Milliseconds
Default value: 30000
Distributed テーブルエンジンがデータを送信するための最大インターバル。 distributed_background_insert_sleep_time_ms 設定で設定されたインターバルの指数的成長を制限します。
可能な値:
- 正の整数のミリ秒。
distributed_background_insert_sleep_time_ms
Type: Milliseconds
Default value: 100
Distributed テーブルエンジンがデータを送信するためのベースインターバル。実際のインターバルはエラーが発生した場合、指数的に増加します。
可能な値:
- 正の整数のミリ秒。
distributed_background_insert_split_batch_on_failure
Type: Bool
Default value: 0
失敗した場合にバッチの分割を有効または無効にします。
特定のバッチをリモートシャードに送信する際、Memory limit exceeded
やその他の類似のエラーのために失敗する場合があります。この場合、再試行しても役に立たない(これにより、テーブルへの分散送信が停止します)が、そのバッチからファイルを1つずつ送信すれば INSERT に成功する場合があります。
この設定を 1
にすることで、そうしたバッチに対するバッチ処理が無効になります(つまり、失敗したバッチについては distributed_background_insert_batch
を一時的に無効にします)。
可能な値:
- 1 — 有効。
- 0 — 無効。
この設定は異常終了したサーバー(マシン)のために発生した壊れたバッチにも影響します(fsync_after_insert
/fsync_directories
がない場合)。
自動バッチ分割に依存すべきではありません。パフォーマンスに悪影響を及ぼす可能性があります。
distributed_background_insert_timeout
Type: UInt64
Default value: 0
分散への挿入クエリのタイムアウト。この設定は、insert_distributed_sync が有効な場合にのみ使用されます。ゼロ値はタイムアウトなしを意味します。
distributed_cache_bypass_connection_pool
Type: Bool
Default value: 0
ClickHouse Cloud でのみ効果があります。分散キャッシュ接続プールをバイパスします。
distributed_cache_connect_max_tries
Type: UInt64
Default value: 20
ClickHouse Cloud でのみ効果があります。接続に失敗した場合の分散キャッシュへの接続試行回数。
distributed_cache_data_packet_ack_window
Type: UInt64
Default value: 5
ClickHouse Cloud でのみ効果があります。単一の分散キャッシュ読み取り要求における DataPacket シーケンスに対する ACK を送信するためのウィンドウ。
distributed_cache_discard_connection_if_unread_data
Type: Bool
Default value: 1
ClickHouse Cloud でのみ効果があります。未読データがある場合に接続を廃棄します。
distributed_cache_fetch_metrics_only_from_current_az
Type: Bool
Default value: 1
ClickHouse Cloud でのみ効果があります。system.distributed_cache_metrics、system.distributed_cache_events からのみ現在のアベイラビリティゾーンからメトリクスを取得します。
distributed_cache_log_mode
Type: DistributedCacheLogMode
Default value: on_error
ClickHouse Cloud でのみ効果があります。system.distributed_cache_log への書き込みモード。
distributed_cache_max_unacked_inflight_packets
Type: UInt64
Default value: 10
ClickHouse Cloud でのみ効果があります。単一の分散キャッシュ読み取り要求における未確認のインフライトパケットの最大数。
distributed_cache_min_bytes_for_seek
Type: Bool
Default value: 0
ClickHouse Cloud でのみ効果があります。分散キャッシュでシークを行うための最小バイト数です。
distributed_cache_pool_behaviour_on_limit
Type: DistributedCachePoolBehaviourOnLimit
Default value: wait
ClickHouse Cloud でのみ効果があります。プール制限に達したときの分散キャッシュ接続の動作を識別します。
distributed_cache_read_alignment
Type: UInt64
Default value: 0
ClickHouse Cloud でのみ効果があります。テスト目的のための設定で、変更しないでください。
distributed_cache_receive_response_wait_milliseconds
Type: UInt64
Default value: 60000
ClickHouse Cloud でのみ効果があります。分散キャッシュからリクエストのデータを受け取るための待機時間(ミリ秒)。
distributed_cache_receive_timeout_milliseconds
Type: UInt64
Default value: 10000
ClickHouse Cloud でのみ効果があります。分散キャッシュからのレスポンスを受け取るための待機時間(ミリ秒)。
distributed_cache_throw_on_error
Type: Bool
Default value: 0
ClickHouse Cloud でのみ効果があります。分散キャッシュとの通信中に発生した例外や分散キャッシュから受け取った例外を再スローします。そうでなければ、エラー時に分散キャッシュをスキップします。
distributed_cache_wait_connection_from_pool_milliseconds
Type: UInt64
Default value: 100
ClickHouse Cloud でのみ効果があります。分散キャッシュプール制限の動作が wait の場合、接続プールから接続を受け取るための待機時間(ミリ秒)。
distributed_connections_pool_size
Type: UInt64
Default value: 1024
単一の Distributed テーブルに対するすべてのクエリのリモートサーバーとの同時接続の最大数。クラスタ内のサーバーの数以上に設定することをお勧めします。
distributed_ddl_entry_format_version
Type: UInt64
Default value: 5
分散 DDL (ON CLUSTER) クエリの互換性バージョン。
distributed_ddl_output_mode
Type: DistributedDDLOutputMode
Default value: throw
分散 DDL クエリ結果のフォーマットを設定します。
可能な値:
throw
— クエリが完了したすべてのホストについてのクエリ実行状況の結果セットを返します。もしクエリが一部のホストで失敗した場合、最初の例外を再スローします。すべてのホストでクエリがまだ完了しておらず distributed_ddl_task_timeout を超えた場合、TIMEOUT_EXCEEDED
例外をスローします。none
—throw
と似ていますが、分散 DDL クエリは結果セットを返しません。null_status_on_timeout
— クエリが特定のホストでまだ完了していない場合、結果セットの一部の行で実行状況としてNULL
を返します。never_throw
—TIMEOUT_EXCEEDED
をスローせず、クエリが一部のホストで失敗した場合に例外を再スローしません。none_only_active
-none
と似ていますが、Replicated
データベースの非アクティブレプリカを待たず、実行します。注意: このモードでは、クエリが一部のレプリカで実行されなかったことが判明せず、バックグラウンドで実行されます。null_status_on_timeout_only_active
—null_status_on_timeout
と似ていますが、Replicated
データベースの非アクティブレプリカを待たず、実行します。throw_only_active
—throw
と似ていますが、Replicated
データベースの非アクティブレプリカを待たず、実行します。
クラウドのデフォルト値: none
。
distributed_ddl_task_timeout
Type: Int64
Default value: 180
クラスタ内のすべてのホストからのDDLクエリ応答のタイムアウトを設定します。DDLリクエストがすべてのホストで実行されていない場合、応答にはタイムアウトエラーが含まれ、リクエストは非同期モードで実行されます。負の値は無限を意味します。
可能な値:
- 正の整数。
- 0 — 非同期モード。
- 負の整数 — 無限のタイムアウト。
distributed_foreground_insert
Type: Bool
Default value: 0
Distributed テーブルへの同期データ挿入を有効または無効にします。
デフォルトでは、Distributed
テーブルにデータを挿入すると、ClickHouse サーバーはバックグラウンドモードでクラスター ノードにデータを送信します。 distributed_foreground_insert=1
の場合、データは同期的に処理され、INSERT
操作はすべてのシャードにデータが保存されてから(internal_replication
が true の場合、各シャードの少なくとも1つのレプリカ)成功します。
可能な値:
- 0 — データはバックグラウンドモードで挿入されます。
- 1 — データは同期モードで挿入されます。
クラウドのデフォルト値: 1
。
See Also
distributed_group_by_no_merge
Type: UInt64
Default value: 0
分散クエリ処理のために異なるサーバーからの集計状態をマージしないようにします。特定のシャード上に異なるキーがあることが確実である場合に使用できます。
可能な値:
0
— 無効(最終クエリ処理はイニシエーター ノードで行われます)。1
- 分散クエリ処理のために異なるサーバーからの集計状態をマージしないようにします(クエリはシャードで完全に処理され、イニシエーターはデータをプロキシします)。
Example
distributed_insert_skip_read_only_replicas
Type: Bool
Default value: 0
分散テーブルへの INSERT
クエリのために読み取り専用レプリカをスキップすることを有効にします。
可能な値:
- 0 — 通常の
INSERT
を実行し、読み取り専用レプリカに到達すると失敗します。 - 1 — イニシエーターがデータをシャードに送信する前に、読み取り専用レプリカをスキップします。
distributed_product_mode
Type: DistributedProductMode
Default value: deny
分散サブクエリの動作を変更します。
ClickHouse は、クエリが分散テーブルの生産物を含む場合、つまり、分散テーブルに対するクエリが分散テーブルに対する非 GLOBAL サブクエリを含む場合にこの設定を適用します。
制限事項:
- IN および JOIN サブクエリにのみ適用されます。
- FROM セクションが 1 つ以上のシャードを持つ分散テーブルを使用している場合にのみ適用されます。
- サブクエリが 1 つ以上のシャードを含む分散テーブルに関連している場合。
- テーブル値の remote 関数には使用されません。
可能な値:
deny
— デフォルト値。これらのタイプのサブクエリの使用を禁止します("Double-distributed in/JOIN subqueries is denied" 例外を返します)。local
— 再帰サブクエリのデータベースとテーブルを宛先サーバー(シャード)のローカルなものと置き換え、通常のIN
/JOIN
を残します。global
—IN
/JOIN
クエリをGLOBAL IN
/GLOBAL JOIN
に置き換えます。allow
— これらのタイプのサブクエリの使用を許可します。
distributed_push_down_limit
Type: UInt64
Default value: 1
各シャードでの LIMIT の適用を有効または無効にします。
これにより、次のことを回避できます:
- ネットワークを介して余分な行を送信する。
- イニシエーターでリミットの後ろの行を処理する。
21.9 バージョン以降、この設定を変更しても不正確な結果を取得することはできません。なぜなら、distributed_push_down_limit
は以下の条件の一つが満たされる場合のみ、クエリの実行を変更するからです:
- distributed_group_by_no_merge > 0。
- クエリに
GROUP BY
/DISTINCT
/LIMIT BY
が 含まれていない が、ORDER BY
/LIMIT
が含まれている。 - クエリに
GROUP BY
/DISTINCT
/LIMIT BY
がORDER BY
/LIMIT
で含まれており、次の条件が満たされます:
可能な値:
- 0 — 無効。
- 1 — 有効。
さらに詳しくは:
- distributed_group_by_no_merge
- optimize_skip_unused_shards
- optimize_distributed_group_by_sharding_key
distributed_replica_error_cap
Type: UInt64
Default value: 1000
- Type: unsigned int
- Default value: 1000
各レプリカのエラーカウントはこの値に制限されており、単一のレプリカが過剰なエラーを蓄積することを防ぎます。
さらに詳しく:
- load_balancing
- テーブルエンジン Distributed
- distributed_replica_error_half_life
- distributed_replica_max_ignored_errors
distributed_replica_error_half_life
Type: Seconds
Default value: 60
- Type: seconds
- Default value: 60 seconds
分散テーブルのエラーがゼロになる速度を制御します。レプリカが一時的に利用できなくなり、5つのエラーを蓄積し、distributed_replica_error_half_life
が1秒に設定されている場合、レプリカは最後のエラーから3秒後に正常と見なされます。
さらに詳しく:
- load_balancing
- テーブルエンジン Distributed
- distributed_replica_error_cap
- distributed_replica_max_ignored_errors
distributed_replica_max_ignored_errors
Type: UInt64
Default value: 0
- Type: unsigned int
- Default value: 0
レプリカを選択する際に無視されるエラーの数(load_balancing
アルゴリズムに従って)。
さらに詳しく:
- load_balancing
- テーブルエンジン Distributed
- distributed_replica_error_cap
- distributed_replica_error_half_life
do_not_merge_across_partitions_select_final
Type: Bool
Default value: 0
データを選択する際に、1つのパーティション内でのみ部分をマージします。
empty_result_for_aggregation_by_constant_keys_on_empty_set
Type: Bool
Default value: 1
空のセットに対して定数キーで集計する場合、空の結果を返します。
empty_result_for_aggregation_by_empty_set
Type: Bool
Default value: 0
空のセットに対してキーなしで集計する場合、空の結果を返します。
enable_adaptive_memory_spill_scheduler
Type: Bool
Default value: 0
プロセッサにデータを外部ストレージに適応的にスピルさせます。現在、グレース結合がサポートされています。
enable_blob_storage_log
Type: Bool
Default value: 1
blob ストレージ操作に関する情報を system.blob_storage_log
テーブルに書き込みます。
enable_deflate_qpl_codec
Type: Bool
Default value: 0
有効にすると、DEFLATE_QPL コーデックを使用してカラムを圧縮できます。
enable_early_constant_folding
Type: Bool
Default value: 1
関数とサブクエリの結果を分析し、そこに定数がある場合はクエリを再構築するクエリ最適化を有効にします。
enable_extended_results_for_datetime_functions
Type: Bool
Default value: 0
次の型の結果を返すことを有効または無効にします:
Date32
(Date
型と比較して拡張範囲)のための関数 toStartOfYear、toStartOfISOYear、toStartOfQuarter、toStartOfMonth、toLastDayOfMonth、toStartOfWeek、toLastDayOfWeek および toMonday。DateTime64
(DateTime
型と比較して拡張範囲)のための関数 toStartOfDay、toStartOfHour、toStartOfMinute、toStartOfFiveMinutes、toStartOfTenMinutes、toStartOfFifteenMinutes および timeSlot。
可能な値:
- 0 — 関数はすべての引数の型について
Date
またはDateTime
を返します。 - 1 — 関数は
Date32
またはDateTime64
引数に対してDate32
またはDateTime64
を返し、それ以外はDate
またはDateTime
を返します。
enable_filesystem_cache
Type: Bool
Default value: 1
リモートファイルシステムのキャッシュを使用します。この設定はディスクのキャッシュをオン/オフにするものではなく(それはディスク設定で行う必要があります)、意図的にいくつかのクエリに対してキャッシュをバイパスすることを可能にします。
enable_filesystem_cache_log
Type: Bool
Default value: 0
各クエリのファイルシステムキャッシングログを記録できるようにします。
enable_filesystem_cache_on_write_operations
Type: Bool
Default value: 0
書き込み操作時にキャッシュに書き込みます。この設定が機能するには、ディスク設定にも追加する必要があります。
enable_filesystem_read_prefetches_log
Type: Bool
Default value: 0
クエリ中に system.filesystem
の prefetch_log にログを記録します。テストやデバッグのためにのみ使用し、デフォルトで有効にすることは推奨しません。
enable_global_with_statement
Type: Bool
Default value: 1
UNION クエリやすべてのサブクエリに WITH ステートメントを伝播します。
enable_http_compression
Type: Bool
Default value: 0
HTTP リクエストに対する応答データの圧縮を有効または無効にします。
詳細については、HTTP インターフェースの説明を参照してください。
可能な値:
- 0 — 無効。
- 1 — 有効。
enable_job_stack_trace
Type: Bool
Default value: 1
ジョブが例外を発生させたときに、ジョブクリエイターのスタックトレースを出力します。
enable_lightweight_delete
Type: Bool
Default value: 1
MergeTree テーブル用の軽量 DELETE 変異を有効にします。
enable_memory_bound_merging_of_aggregation_results
Type: Bool
Default value: 1
集計のためにメモリバウンド結合戦略を有効にします。
enable_multiple_prewhere_read_steps
Type: Bool
Default value: 1
WHERE から PREWHERE に多くの条件を移動させ、AND で組み合わされた複数の条件がある場合に、ディスクからの読み取りおよびフィルタリングを複数のステップで行います。
enable_named_columns_in_function_tuple
Type: Bool
Default value: 0
すべての名前がユニークで、引用符なしの識別子として扱うことができる場合、関数 tuple() で名前付きタプルを生成します。
enable_optimize_predicate_expression
Type: Bool
Default value: 1
SELECT
クエリでの述語プッシュダウンを有効にします。
述語プッシュダウンは、分散クエリのネットワークトラフィックを大幅に削減する可能性があります。
可能な値:
- 0 — 無効。
- 1 — 有効。
Usage
次のクエリを考慮してください:
SELECT count() FROM test_table WHERE date = '2018-10-10'
SELECT count() FROM (SELECT * FROM test_table) WHERE date = '2018-10-10'
enable_optimize_predicate_expression = 1
の場合、これらのクエリの実行時間は等しくなります。なぜなら ClickHouse はサブクエリを処理する際に WHERE
を適用するからです。
enable_optimize_predicate_expression = 0
の場合、2番目のクエリの実行時間ははるかに長くなります。なぜなら、WHERE
句はサブクエリが終了した後にすべてのデータに適用されるからです。
enable_optimize_predicate_expression_to_final_subquery
Type: Bool
Default value: 1
述語を最終サブクエリにプッシュすることを許可します。
enable_order_by_all
Type: Bool
Default value: 1
ORDER BY ALL
構文でのソートの有効または無効を設定します。
可能な値:
- 0 —
ORDER BY ALL
を無効。 - 1 —
ORDER BY ALL
を有効。
Example
Query:
Result:
enable_parsing_to_custom_serialization
Type: Bool
Default value: 1
trueの場合、データはテーブルから得たシリアル化のヒントに従ってカラムにカスタムシリアル化(例:Sparse)として直接解析できます。
enable_positional_arguments
Type: Bool
Default value: 1
GROUP BY、LIMIT BY、ORDER BY ステートメントでの位置引数のサポートを有効または無効にします。
可能な値:
- 0 — 位置引数はサポートされていません。
- 1 — 位置引数がサポートされます。カラム番号はカラム名の代わりに使用できます。
Example
Query:
Result:
enable_reads_from_query_cache
Type: Bool
Default value: 1
有効にすると、SELECT
クエリの結果が クエリキャッシュ から取得されます。
可能な値:
- 0 - 無効
- 1 - 有効
enable_s3_requests_logging
Type: Bool
Default value: 0
S3 リクエストの非常に明示的なログを有効にします。デバッグ専用で意味があります。
enable_scalar_subquery_optimization
Type: Bool
Default value: 1
trueの場合、スカラーサブクエリは大規模なスカラー値の (de)シリアル化を防ぎ、同じサブクエリを複数回実行することを回避できます。
enable_sharing_sets_for_mutations
Type: Bool
Default value: 1
IN サブクエリのために構築された共有集合オブジェクトを同じ変異の異なるタスク間で共有できるようにします。これにより、メモリ使用量と CPU 消費を削減できます。
enable_software_prefetch_in_aggregation
Type: Bool
Default value: 1
集計におけるソフトウェアプリフェッチの使用を有効にします。
enable_unaligned_array_join
Type: Bool
Default value: 0
異なるサイズの複数の配列を使用した ARRAY JOIN を許可します。この設定が有効な場合、配列は最長のものにサイズを変更します。
enable_url_encoding
Type: Bool
Default value: 1
URLエンジンテーブル内の URI パスのデコード/エンコードを有効/無効にします。
デフォルトで有効です。
enable_vertical_final
Type: Bool
Default value: 1
有効にすると、マージするのではなく、行を削除としてマークして後でフィルタリングすることにより FINAL の際に重複行を削除します。
enable_writes_to_query_cache
Type: Bool
Default value: 1
有効にすると、SELECT
クエリの結果が クエリキャッシュ に格納されます。
可能な値:
- 0 - 無効
- 1 - 有効
enable_zstd_qat_codec
Type: Bool
Default value: 0
有効にすると、ZSTD_QAT コーデックを使用してカラムを圧縮できます。
enforce_strict_identifier_format
Type: Bool
Default value: 0
有効にすると、アルファベットと数字、アンダースコアの文字のみを含む識別子を許可します。
engine_file_allow_create_multiple_files
Type: Bool
Default value: 0
ファイルエンジンテーブルで、形式が接尾辞(JSON
、ORC
、Parquet
など)を持つ場合、各挿入で新しいファイルを作成することを有効または無効にします。有効な場合、各挿入ごとに次のパターンに従った名前の新しいファイルが作成されます:
data.Parquet
-> data.1.Parquet
-> data.2.Parquet
など。
可能な値:
- 0 —
INSERT
クエリはファイルの末尾に新しいデータを追加します。 - 1 —
INSERT
クエリは新しいファイルを作成します。
engine_file_empty_if_not_exists
Type: Bool
Default value: 0
ファイルのないファイルエンジンテーブルからデータを選択できるようにします。
Possible values:
- 0 —
SELECT
は例外を投げます。 - 1 —
SELECT
は空の結果を返します。
engine_file_skip_empty_files
Type: Bool
Default value: 0
Fileエンジンテーブルで空のファイルをスキップするかどうかを有効または無効にします。
Possible values:
- 0 — 空のファイルが要求された形式と互換性がない場合、
SELECT
は例外を投げます。 - 1 — 空のファイルの場合、
SELECT
は空の結果を返します。
engine_file_truncate_on_insert
Type: Bool
Default value: 0
Fileエンジンテーブルに挿入する前にトランケートを有効または無効にします。
Possible values:
- 0 —
INSERT
クエリはファイルの末尾に新しいデータを追加します。 - 1 —
INSERT
クエリは新しいデータでファイルの既存の内容を置き換えます。
engine_url_skip_empty_files
Type: Bool
Default value: 0
URLエンジンテーブルで空のファイルをスキップするかどうかを有効または無効にします。
Possible values:
- 0 — 空のファイルが要求された形式と互換性がない場合、
SELECT
は例外を投げます。 - 1 — 空のファイルの場合、
SELECT
は空の結果を返します。
except_default_mode
Type: SetOperationMode
Default value: ALL
EXCEPTクエリのデフォルトモードを設定します。Possible values: 空の文字列、'ALL'、'DISTINCT'。空の場合、モードなしのクエリは例外を投げます。
external_storage_connect_timeout_sec
Type: UInt64
Default value: 10
接続タイムアウト(秒)。現在、MySQLのみでサポートされています。
external_storage_max_read_bytes
Type: UInt64
Default value: 0
外部エンジンを持つテーブルが履歴データをフラッシュするときの最大バイト数の制限。現在、MySQLテーブルエンジン、データベースエンジン、辞書にのみ対応しています。0に等しい場合、この設定は無効です。
external_storage_max_read_rows
Type: UInt64
Default value: 0
外部エンジンを持つテーブルが履歴データをフラッシュするときの最大行数の制限。現在、MySQLテーブルエンジン、データベースエンジン、辞書にのみ対応しています。0に等しい場合、この設定は無効です。
external_storage_rw_timeout_sec
Type: UInt64
Default value: 300
読み取り/書き込みのタイムアウト(秒)。現在、MySQLのみでサポートされています。
external_table_functions_use_nulls
Type: Bool
Default value: 1
mysql、postgresql、および odbc テーブル関数がNullableカラムをどのように使用するかを定義します。
Possible values:
- 0 — テーブル関数は明示的にNullableカラムを使用します。
- 1 — テーブル関数は暗黙的にNullableカラムを使用します。
Usage
この設定が0
に設定されている場合、テーブル関数はNullableカラムを作成せず、NULLの代わりにデフォルト値を挿入します。この設定は、配列内のNULL値にも適用されます。
external_table_strict_query
Type: Bool
Default value: 0
trueに設定されている場合、外部テーブルへのクエリに対してローカルフィルタへの変換式が禁止されます。
extract_key_value_pairs_max_pairs_per_row
Type: UInt64
Default value: 1000
extractKeyValuePairs
関数によって生成される最大ペア数。この制限は、過剰なメモリの消費を防ぐために使用されます。
extremes
Type: Bool
Default value: 0
クエリ結果のカラムにおける極値(最小値と最大値)を数えるかどうか。0または1を受け入れます。デフォルトは0(無効)。
詳細については、「極値」セクションを参照してください。
fallback_to_stale_replicas_for_distributed_queries
Type: Bool
Default value: 1
更新データが使用できない場合、古いレプリカへのクエリを強制します。Replicationを参照してください。
ClickHouseは、テーブルの古いレプリカの中から最も関連性の高いものを選択します。
これは、レプリカテーブルを指す分散テーブルからSELECT
を実行する際に使用されます。
デフォルトでは1(有効)です。
filesystem_cache_boundary_alignment
Type: UInt64
Default value: 0
ファイルシステムキャッシュの境界アライメント。この設定は、非ディスク読み取り(リモートテーブルエンジン/テーブル関数のキャッシュなど)にのみ適用され、MergeTreeテーブルのストレージ設定には適用されません。値0はアライメントなしを意味します。
filesystem_cache_enable_background_download_during_fetch
Type: Bool
Default value: 1
ClickHouse Cloudのみに影響があります。ファイルシステムキャッシュ内のスペース予約のためにキャッシュをロックするまでの待機時間。
filesystem_cache_enable_background_download_for_metadata_files_in_packed_storage
Type: Bool
Default value: 1
ClickHouse Cloudのみに影響があります。ファイルシステムキャッシュ内のスペース予約のためにキャッシュをロックするまでの待機時間。
filesystem_cache_max_download_size
Type: UInt64
Default value: 137438953472
単一のクエリによってダウンロード可能な最大リモートファイルシステムキャッシュサイズ。
filesystem_cache_name
Type: String
Default value:
状態を持たないテーブルエンジンやデータレイクで使用するファイルシステムキャッシュ名。
filesystem_cache_prefer_bigger_buffer_size
Type: Bool
Default value: 1
ファイルシステムキャッシュが有効な場合、小さなファイルセグメントの書き込みを避けるために、より大きなバッファサイズを優先します。一方で、この設定を有効にするとメモリ使用量が増加する可能性があります。
filesystem_cache_reserve_space_wait_lock_timeout_milliseconds
Type: UInt64
Default value: 1000
ファイルシステムキャッシュ内にスペースを予約するためにキャッシュをロックするまでの待機時間。
filesystem_cache_segments_batch_size
Type: UInt64
Default value: 20
読み込みバッファがキャッシュから要求できるファイルセグメントの単一バッチのサイズに対する制限。値が低すぎるとキャッシュへの過剰なリクエストが発生し、値が大きすぎるとキャッシュからの追い出しが遅くなる可能性があります。
filesystem_cache_skip_download_if_exceeds_per_query_cache_write_limit
Type: Bool
Default value: 1
クエリキャッシュサイズを超える場合、リモートファイルシステムからのダウンロードをスキップします。
filesystem_prefetch_max_memory_usage
Type: UInt64
Default value: 1073741824
プリフェッチの最大メモリ使用量。
filesystem_prefetch_step_bytes
Type: UInt64
Default value: 0
バイト単位でのプリフェッチステップ。ゼロはauto
を意味します。最適なプリフェッチステップがおおよそ自動的に推論されますが、100%最適でない可能性があります。実際の値は、filesystem_prefetch_min_bytes_for_single_read_task
の設定により異なる場合があります。
filesystem_prefetch_step_marks
Type: UInt64
Default value: 0
マーク単位でのプリフェッチステップ。ゼロはauto
を意味します。最適なプリフェッチステップがおおよそ自動的に推論されますが、100%最適でない可能性があります。実際の値は、filesystem_prefetch_min_bytes_for_single_read_task
の設定により異なる場合があります。
filesystem_prefetches_limit
Type: UInt64
Default value: 200
最大プリフェッチ数。ゼロは無制限を意味します。プリフェッチの数を制限したい場合は、filesystem_prefetches_max_memory_usage
の設定を推奨します。
final
Type: Bool
Default value: 0
クエリ内のすべてのテーブルにFINAL修飾子を自動的に適用します。これは、FINALを適用できるテーブル、結合テーブル、サブクエリ内のテーブル、および分散テーブルに適用されます。
Possible values:
- 0 - 無効
- 1 - 有効
Example:
flatten_nested
Type: Bool
Default value: 1
nestedカラムのデータ形式を設定します。
Possible values:
- 1 — ネストされたカラムが別々の配列にフラット化されます。
- 0 — ネストされたカラムはタプルの単一配列として保持されます。
Usage
この設定が0
に設定されている場合、任意のネストレベルを使用できます。
Examples
Query:
Result:
Query:
Result:
force_aggregate_partitions_independently
Type: Bool
Default value: 0
適用可能な場合には最適化の使用を強制しますが、ヒューリスティクスが使用しないことを決定した場合に適用されます。
force_aggregation_in_order
Type: Bool
Default value: 0
この設定は、サーバー自体によって分散クエリをサポートするために使用されます。手動で変更しないでください。正常な操作が妨げられるからです。(リモートノードでの分散集計時に順序での集計の使用を強制します)。
force_data_skipping_indices
Type: String
Default value:
指定されたデータスキッピングインデックスが使用されていない場合、クエリの実行を無効にします。
次の例を考えてみましょう:
force_grouping_standard_compatibility
Type: Bool
Default value: 1
GROUPING関数が引数が集計キーとして使用されていない場合に1を返すようにします。
force_index_by_date
Type: Bool
Default value: 0
インデックスが日付によって使用できない場合、クエリの実行を無効にします。
MergeTreeファミリーのテーブルで機能します。
force_index_by_date=1
の場合、ClickHouseはクエリがデータ範囲を制限するために使用できる日付キー条件を持っているかどうかを確認します。適切な条件がない場合、例外がスローされます。しかしながら、条件が読み込むデータの量を減少させるかどうかは確認しません。たとえば、条件 Date != ' 2000-01-01 '
は、テーブル内のすべてのデータと一致していても許可されます(すなわち、クエリを実行するには完全なスキャンが必要です)。MergeTreeテーブルにおけるデータ範囲の詳細についてはMergeTreeを参照してください。
force_optimize_projection
Type: Bool
Default value: 0
SELECT
クエリでプロジェクションの使用を強制するかどうかを有効または無効にします。プロジェクション最適化が有効な場合(optimize_use_projections設定を参照)。
Possible values:
- 0 — プロジェクション最適化は義務ではありません。
- 1 — プロジェクション最適化は義務です。
force_optimize_projection_name
Type: String
Default value:
空でない文字列に設定されると、このプロジェクションがクエリで少なくとも一度は使用されるかをチェックします。
Possible values:
- 文字列: クエリで使用されているプロジェクションの名前。
force_optimize_skip_unused_shards
Type: UInt64
Default value: 0
optimize_skip_unused_shardsが有効で、未使用のシャードをスキップできない場合には、クエリの実行を有効または無効にします。スキップが不可能な場合で、この設定が有効な場合は例外がスローされます。
Possible values:
- 0 — 無効。ClickHouseは例外をスローしません。
- 1 — 有効。テーブルにシャーディングキーがある場合のみクエリの実行が無効になります。
- 2 — 有効。テーブルにシャーディングキーが定義されているかどうかに関係なく、クエリの実行が無効になります。
force_optimize_skip_unused_shards_nesting
Type: UInt64
Default value: 0
force_optimize_skip_unused_shards
(したがって、force_optimize_skip_unused_shards
が必要)を分散クエリのネストレベルに応じて制御します(分散テーブルが別の分散テーブルを参照する場合のケース)。
Possible values:
- 0 - 無効、
force_optimize_skip_unused_shards
は常に動作します。 - 1 —
force_optimize_skip_unused_shards
は最初のレベルでのみ有効になります。 - 2 —
force_optimize_skip_unused_shards
は2番目のレベルまで有効になります。
force_primary_key
Type: Bool
Default value: 0
プライマリキーによるインデックス付けが不可能な場合、クエリの実行を無効にします。
MergeTreeファミリーのテーブルで機能します。
force_primary_key=1
の場合、ClickHouseはクエリがデータ範囲を制限するために使用できるプライマリキー条件を持っているかどうかを確認します。適切な条件がない場合は、例外がスローされます。ただし、その条件が読み込むデータの量を減少させるかどうかは確認しません。MergeTreeテーブルにおけるデータ範囲の詳細についてはMergeTreeを参照してください。
force_remove_data_recursively_on_drop
Type: Bool
Default value: 0
DROPクエリでデータを再帰的に削除します。「ディレクトリが空でない」というエラーを回避しますが、デタッチされたデータが静かに削除される可能性があります。
formatdatetime_f_prints_scale_number_of_digits
Type: Bool
Default value: 0
関数 'formatDateTime' のフォーマッタ '%f' は、固定6桁の代わりに DateTime64 に対して桁数スケールを印刷します。
formatdatetime_f_prints_single_zero
Type: Bool
Default value: 0
関数 'formatDateTime' のフォーマッタ '%f' は、フォーマットされた値に小数秒が存在しない場合、6つのゼロの代わりに1つのゼロを印刷します。
formatdatetime_format_without_leading_zeros
Type: Bool
Default value: 0
関数 'formatDateTime' のフォーマッタ '%c', '%l' および '%k' は、先頭ゼロなしで月と時間を印刷します。
formatdatetime_parsedatetime_m_is_month_name
Type: Bool
Default value: 1
関数 'formatDateTime' と 'parseDateTime' におけるフォーマッタ '%M' は、分の代わりに月の名前を印刷/解析します。
fsync_metadata
Type: Bool
Default value: 1
.sqlファイルを書き込む際にfsyncを有効または無効にします。デフォルトで有効です。
サーバーに何百万もの小さなテーブルがあり、それらが常に生成および削除されている場合には、無効にする意味があります。
function_implementation
Type: String
Default value:
特定のターゲットまたはバリアント(実験的)のために関数の実装を選択します。空の場合は、すべてが有効になります。
function_json_value_return_type_allow_complex
Type: Bool
Default value: 0
json_value関数で複雑な型(構造体、配列、マップなど)を返すことを許可するかどうかを制御します。
Possible values:
- true — 許可。
- false — 不許可。
function_json_value_return_type_allow_nullable
Type: Bool
Default value: 0
JSON_VALUE関数の値が存在しない場合にNULL
を返すことを許可するかどうかを制御します。
Possible values:
- true — 許可。
- false — 不許可。
function_locate_has_mysql_compatible_argument_order
Type: Bool
Default value: 1
関数 locate の引数の順序を制御します。
Possible values:
- 0 — Function
locate
は引数(haystack, needle[, start_pos])
を受け付けます。 - 1 — Function
locate
は引数(needle, haystack, [, start_pos])
を受け付けます(MySQL互換の動作)。
function_range_max_elements_in_block
Type: UInt64
Default value: 500000000
関数 rangeによって生成されるデータボリュームの安全閾値を設定します。データブロック内の各行の配列サイズの合計によって生成される最大値を定義します。
Possible values:
- 正の整数。
See Also
function_sleep_max_microseconds_per_block
Type: UInt64
Default value: 3000000
関数 sleep
が各ブロックごとに許可される最大マイクロ秒数。ユーザーが大きな値で呼び出すと、例外がスローされます。この設定は安全のための閾値です。
function_visible_width_behavior
Type: UInt64
Default value: 1
visibleWidth
の動作のバージョン。0 - コードポイントの数をカウントするのみ;1 - ゼロ幅および合成文字を正しくカウントし、全角文字を2としてカウントし、タブ幅を推定し、削除文字をカウントします。
geo_distance_returns_float64_on_float64_arguments
Type: Bool
Default value: 1
geoDistance
、greatCircleDistance
、greatCircleAngle
関数のすべての4つの引数がFloat64の場合、Float64を返し、内部計算にダブル精度を使用します。以前のClickHouseバージョンでは、これらの関数は常にFloat32を返していました。
glob_expansion_max_elements
Type: UInt64
Default value: 1000
許可される最大アドレス数(外部ストレージ、テーブル関数など)。
grace_hash_join_initial_buckets
Type: NonZeroUInt64
Default value: 1
グレースハッシュ結合の初期バケツ数。
grace_hash_join_max_buckets
Type: NonZeroUInt64
Default value: 1024
グレースハッシュ結合のバケツの数の制限。
group_by_overflow_mode
Type: OverflowModeGroupBy
Default value: throw
リミットを超えた場合に何をするか。
group_by_two_level_threshold
Type: UInt64
Default value: 100000
どのキーの数から、2レベル集計が始まるか。0 - 制限は設定されていません。
group_by_two_level_threshold_bytes
Type: UInt64
Default value: 50000000
集計状態のサイズがバイトでどのサイズから、2レベル集計が使用されるか。0 - 制限は設定されていません。1つ以上の制限がトリガーされると2レベル集計が使用されます。
group_by_use_nulls
Type: Bool
Default value: 0
GROUP BY句が集計キーの型をどのように扱うかを変更します。
ROLLUP
、CUBE
、またはGROUPING SETS
指定子が使用される場合、一部の集計キーが結果行を生成するために使用されないことがあります。
これらのキーのカラムは、この設定に応じて、対応する行にデフォルト値またはNULL
で埋められます。
Possible values:
- 0 — 集計キー型のデフォルト値が欠落している値を生成するために使用されます。
- 1 — ClickHouseはSQL標準が言う通りに
GROUP BY
を実行します。集計キーの型はNullable に変換されます。対応する集計キーのカラムは、それが使用されなかった行に対してNULLで埋められます。
See also:
h3togeo_lon_lat_result_order
Type: Bool
Default value: 0
関数 'h3ToGeo' が(true)の場合は(lon, lat)を返し、そうでない場合は(lat, lon)を返します。
handshake_timeout_ms
Type: Milliseconds
Default value: 10000
ハンドシェイク中にレプリカからHelloパケットを受信するためのタイムアウト(ミリ秒)。
hdfs_create_new_file_on_insert
Type: Bool
Default value: 0
HDFSエンジンテーブルに挿入のたびに新しいファイルを作成するかどうかを有効または無効にします。有効な場合、各挿入で次のようにパターンに類似した新しいHDFSファイルが作成されます:
初期: data.Parquet.gz
-> data.1.Parquet.gz
-> data.2.Parquet.gz
など。
Possible values:
- 0 —
INSERT
クエリはファイルの末尾に新しいデータを追加します。 - 1 —
INSERT
クエリは新しいファイルを作成します。
hdfs_ignore_file_doesnt_exist
Type: Bool
Default value: 0
特定のキーを読み込むときにファイルが存在しない場合にその不在を無視します。
Possible values:
- 1 —
SELECT
は空の結果を返します。 - 0 —
SELECT
は例外を投げます。
hdfs_replication
Type: UInt64
Default value: 0
HDFSファイルが作成されるときに指定できる実際のレプリケーション数。
hdfs_skip_empty_files
Type: Bool
Default value: 0
HDFSエンジンテーブルで空のファイルをスキップするかどうかを有効または無効にします。
Possible values:
- 0 — 空のファイルが要求された形式と互換性がない場合、
SELECT
は例外を投げます。 - 1 — 空のファイルの場合、
SELECT
は空の結果を返します。
hdfs_throw_on_zero_files_match
Type: Bool
Default value: 0
グロブ展開ルールに基づいて一致するゼロファイルがある場合にエラーを投げます。
Possible values:
- 1 —
SELECT
は例外を投げます。 - 0 —
SELECT
は空の結果を返します。
hdfs_truncate_on_insert
Type: Bool
Default value: 0
hdfsエンジンテーブルへの挿入前にトランケーションを有効または無効にします。無効の場合、HDFSにファイルが既に存在する場合、挿入を試みると例外がスローされます。
Possible values:
- 0 —
INSERT
クエリはファイルの末尾に新しいデータを追加します。 - 1 —
INSERT
クエリは新しいデータでファイルの既存の内容を置き換えます。
hedged_connection_timeout_ms
Type: Milliseconds
Default value: 50
ヘッジリクエストでレプリカとの接続を確立するための接続タイムアウト。
hnsw_candidate_list_size_for_search
Type: UInt64
Default value: 256
ベクトル類似性インデックスに対する検索時の動的候補リストのサイズ、別名 'ef_search'。
hsts_max_age
Type: UInt64
Default value: 0
HSTSの有効期限。0はHSTSを無効にします。
http_connection_timeout
Type: Seconds
Default value: 1
HTTP接続タイムアウト(秒)。
Possible values:
- 任意の正の整数。
- 0 - 無効(無限のタイムアウト)。
http_headers_progress_interval_ms
Type: UInt64
Default value: 100
HTTPヘッダーX-ClickHouse-Progressを指定された間隔でそれ以上頻繁に送信しないようにします。
http_make_head_request
Type: Bool
Default value: 1
http_make_head_request
設定は、データをHTTPから読み込む際に、読み込むファイルに関する情報(サイズなど)を取得するためにHEAD
リクエストを実行することを許可します。デフォルトで有効なため、サーバーがHEAD
リクエストをサポートしていない場合にはこの設定を無効にすることが望ましい場合があります。
http_max_field_name_size
Type: UInt64
Default value: 131072
HTTPヘッダー内のフィールド名の最大長。
http_max_field_value_size
Type: UInt64
Default value: 131072
HTTPヘッダー内のフィールド値の最大長。
http_max_fields
Type: UInt64
Default value: 1000000
HTTPヘッダー内のフィールドの最大数。
http_max_multipart_form_data_size
Type: UInt64
Default value: 1073741824
multipart/form-dataコンテンツのサイズに制限。これはURLパラメータから解析できず、ユーザープロファイルに設定する必要があります。コンテンツは、クエリ実行開始前にメモリ内に解析され、外部テーブルが作成されます。これは、この段階で効果がある唯一の制限です(最大メモリ使用量および最大実行時間に関する制限は、HTTPフォームデータの読み込み中には影響しません)。
http_max_request_param_data_size
Type: UInt64
Default value: 10485760
HTTPリクエストにおけるクエリパラメータとして使用されるリクエストデータのサイズの制限。
http_max_tries
Type: UInt64
Default value: 10
HTTP経由での最大リトライ数。
http_max_uri_size
Type: UInt64
Default value: 1048576
HTTPリクエストのURIの最大長を設定します。
Possible values:
- 正の整数。
http_native_compression_disable_checksumming_on_decompress
Type: Bool
Default value: 0
クライアントからのHTTP POSTデータを解凍する際にチェックサムの確認を有効または無効にします。ClickHouseのネイティブ圧縮形式にのみ使用され(gzip
やdeflate
では使用されません)。
詳細については、HTTPインターフェースの説明を参照してください。
Possible values:
- 0 — 無効。
- 1 — 有効。
http_receive_timeout
Type: Seconds
Default value: 30
HTTP受信タイムアウト(秒)。
Possible values:
- 任意の正の整数。
- 0 - 無効(無限のタイムアウト)。
http_response_buffer_size
Type: UInt64
Default value: 0
HTTPレスポンスをクライアントに送信する前にサーバーメモリ内にバッファリングするバイト数(http_wait_end_of_queryが有効な場合)。
http_response_headers
Type: Map
Default value:
サーバーが成功したクエリ結果とともにレスポンスで返すHTTPヘッダーを追加または上書きすることを許可します。
これはHTTPインターフェースのみに影響します。
デフォルトで設定されているヘッダーは、提供された値で上書きされます。 デフォルトで設定されていないヘッダーは、ヘッダーリストに追加されます。 デフォルトでサーバーによって設定されており、この設定で上書きされていないヘッダーはそのまま残ります。
この設定により、ヘッダーを定数値に設定することが可能です。現在、動的に計算された値にヘッダーを設定する方法はありません。
設定を変更するUIアプリケーションを実装する場合、ユーザーが設定を変更できるようにしつつ、返されたヘッダーに基づいて意思決定を行う場合には、この設定を読み取り専用に制限することが推奨されます。
Example: SET http_response_headers = '{"Content-Type": "image/png"}'
http_retry_initial_backoff_ms
Type: UInt64
Default value: 100
リトライ時のバックオフの最小ミリ秒数、HTTP経由での読み取りをリトライする場合。
http_retry_max_backoff_ms
タイプ: UInt64
デフォルト値: 10000
HTTP経由での読み取りをリトライする際のバックオフの最大ミリ秒。
http_send_timeout
タイプ: 秒
デフォルト値: 30
HTTP送信のタイムアウト(秒単位)。
可能な値:
- 任意の正の整数。
- 0 - 無効 (タイムアウト無制限)。
これはデフォルトプロファイルにのみ適用されます。変更を反映させるにはサーバの再起動が必要です。
http_skip_not_found_url_for_globs
タイプ: Bool
デフォルト値: 1
HTTP_NOT_FOUND エラーが発生した場合、グロブに対するURLをスキップします。
http_wait_end_of_query
タイプ: Bool
デフォルト値: 0
サーバー側でのHTTPレスポンスバッファリングを有効にします。
http_write_exception_in_output_format
タイプ: Bool
デフォルト値: 1
有効な出力を生成するために出力形式で例外を書き込みます。JSONおよびXML形式で動作します。
http_zlib_compression_level
タイプ: Int64
デフォルト値: 3
enable_http_compression = 1の場合、HTTPリクエストに対するレスポンスのデータ圧縮レベルを設定します。
可能な値: 1から9までの数字。
idle_connection_timeout
タイプ: UInt64
デフォルト値: 3600
指定された秒数後にアイドルTCP接続を閉じるためのタイムアウト。
可能な値:
- 正の整数(0 - 直ちに閉じる、0秒後)。
ignore_cold_parts_seconds
タイプ: Int64
デフォルト値: 0
ClickHouse Cloudでのみ効果があります。新しいデータパーツをSELECTクエリから除外し、事前にウォームアップされるまで(cache_populated_by_fetchを参照)またはこの秒数が経過した後にのみクエリ結果に表示されます。Replicated-/SharedMergeTree専用です。
ignore_data_skipping_indices
タイプ: String
デフォルト値:
クエリで使用された場合、指定されたスキッピングインデックスを無視します。
以下の例を考慮してください。
インデックスを無視しないクエリ:
xy_idx
インデックスを無視する:
MergeTreeファミリーのテーブルで動作します。
ignore_drop_queries_probability
タイプ: Float
デフォルト値: 0
有効にすると、指定された確率で全てのDROPテーブルクエリを無視します(メモリとJOINエンジンの場合、DROPをTRUNCATEに置き換えます)。テスト目的で使用されます。
ignore_materialized_views_with_dropped_target_table
タイプ: Bool
デフォルト値: 0
ビューにプッシュ中に、ドロップされたターゲットテーブルを持つMVを無視します。
ignore_on_cluster_for_replicated_access_entities_queries
タイプ: Bool
デフォルト値: 0
レプリケートされたアクセスエンティティ管理クエリのためのON CLUSTER句を無視します。
ignore_on_cluster_for_replicated_named_collections_queries
タイプ: Bool
デフォルト値: 0
レプリケートされた名前付きコレクション管理クエリのためのON CLUSTER句を無視します。
ignore_on_cluster_for_replicated_udf_queries
タイプ: Bool
デフォルト値: 0
レプリケートされたUDF管理クエリのためのON CLUSTER句を無視します。
implicit_select
タイプ: Bool
デフォルト値: 0
先頭にSELECTキーワードのないシンプルなSELECTクエリの記述を許可します。計算機スタイルの使用に便利です。例えば、1 + 2
は有効なクエリとなります。
clickhouse-local
ではデフォルトで有効であり、明示的に無効にできます。
implicit_transaction
タイプ: Bool
デフォルト値: 0
有効にして、すでにトランザクション内にない場合は、クエリを完全なトランザクション(開始+コミットまたはロールバック)でラップします。
input_format_parallel_parsing
タイプ: Bool
デフォルト値: 1
データフォーマットの順序を保持した並列パースを有効または無効にします。TSV、TSKV、CSV、およびJSONEachRow形式のみサポートされます。
可能な値:
- 1 — 有効。
- 0 — 無効。
insert_allow_materialized_columns
タイプ: Bool
デフォルト値: 0
この設定が有効な場合、INSERT文でマテリアライズされたカラムを許可します。
insert_deduplicate
タイプ: Bool
デフォルト値: 1
INSERT
のブロック重複排除を有効または無効にします(Replicated* テーブル用)。
可能な値:
- 0 — 無効。
- 1 — 有効。
デフォルトでは、Replicatedテーブルに挿入されたブロックは重複排除されます(データレプリケーションを参照)。 Replicatedテーブルの場合、デフォルトでは各パーティションごとに最新の100のブロックのみが重複排除されます(replicated_deduplication_window、replicated_deduplication_window_secondsを参照)。 非レプリケートテーブルの場合は、non_replicated_deduplication_windowを参照してください。
insert_deduplication_token
タイプ: String
デフォルト値:
この設定により、ユーザーはMergeTree/ReplicatedMergeTreeで独自の重複排除セマンティクスを提供できます。 例えば、各INSERT文に対して一意の値を設定することで、挿入されたデータが重複排除されるのを防ぎます。
可能な値:
- 任意の文字列
insert_deduplication_token
は、空でない場合にのみ重複排除に使用されます。
Replicatedテーブルの場合、デフォルトでは各パーティションごとに最新の100のINSERTのみが重複排除されます(replicated_deduplication_window、replicated_deduplication_window_secondsを参照)。 非レプリケートテーブルの場合は、non_replicated_deduplication_windowを参照してください。
insert_deduplication_token
はパーティションレベルで動作します(insert_deduplication
チェックサムと同様です)。複数のパーティションが同じinsert_deduplication_token
を持つことができます。
例:
insert_keeper_fault_injection_probability
タイプ: Float
デフォルト値: 0
挿入中のKeeperリクエストの失敗の約確率。妥当な値は[0.0f, 1.0f]の間である必要があります。
insert_keeper_fault_injection_seed
タイプ: UInt64
デフォルト値: 0
0 - ランダムシード、その他は設定値。
insert_keeper_max_retries
タイプ: UInt64
デフォルト値: 20
この設定により、Replicated MergeTreeへの挿入中のClickHouse Keeper(またはZooKeeper)リクエストの最大リトライ回数が設定されます。リトライの対象は、ネットワークエラー、Keeperセッションタイムアウト、またはリクエストタイムアウトにより失敗したKeeperリクエストのみです。
可能な値:
- 正の整数。
- 0 — リトライ無効。
クラウドのデフォルト値: 20
。
Keeperリクエストのリトライは、いくつかのタイムアウト後に行われます。タイムアウトは次の設定によって制御されます: insert_keeper_retry_initial_backoff_ms
, insert_keeper_retry_max_backoff_ms
。
最初のリトライはinsert_keeper_retry_initial_backoff_ms
タイムアウト後に行われます。次に来るタイムアウトは次のように計算されます:
例えば、insert_keeper_retry_initial_backoff_ms=100
、insert_keeper_retry_max_backoff_ms=10000
、insert_keeper_max_retries=8
の場合、タイムアウトは100, 200, 400, 800, 1600, 3200, 6400, 10000
になります。
故障耐性の他に、リトライはより良いユーザーエクスペリエンスを提供し、例えば、Keeperがアップグレード中に再起動してもINSERTの実行中にエラーを返さないようにします。
insert_keeper_retry_initial_backoff_ms
タイプ: UInt64
デフォルト値: 100
INSERTクエリ実行中に失敗したKeeperリクエストをリトライするための初期タイムアウト(ミリ秒単位)
可能な値:
- 正の整数。
- 0 — タイムアウトなし。
insert_keeper_retry_max_backoff_ms
タイプ: UInt64
デフォルト値: 10000
INSERTクエリ実行中に失敗したKeeperリクエストをリトライするための最大タイムアウト(ミリ秒単位)
可能な値:
- 正の整数。
- 0 — 最大タイムアウトは制限されない。
insert_null_as_default
タイプ: Bool
デフォルト値: 1
nullableデータ型のカラムに対してNULLの代わりにデフォルト値を挿入するかどうかを有効または無効にします。
カラム型がnullableでない場合、この設定が無効になっていると、NULL
を挿入すると例外が発生します。カラム型がnullableの場合、NULL
値はこの設定に関係なくそのまま挿入されます。
この設定はINSERT ... SELECTクエリに適用されます。なお、SELECT
サブクエリはUNION ALL
句で連結できることに注意してください。
可能な値:
- 0 — 非nullableカラムに
NULL
を挿入すると例外が発生します。 - 1 — デフォルトのカラム値が
NULL
の代わりに挿入されます。
insert_quorum
タイプ: UInt64Auto
デフォルト値: 0
この設定はSharedMergeTreeには適用されません。詳細はSharedMergeTreeの整合性を参照してください。
クォーラム書き込みを有効にします。
insert_quorum < 2
の場合、クォーラム書き込みは無効です。insert_quorum >= 2
の場合、クォーラム書き込みは有効です。insert_quorum = 'auto'
の場合、過半数(number_of_replicas / 2 + 1
)をクォーラム数として使用します。
クォーラム書き込み
INSERT
は、ClickHouseがinsert_quorum_timeout
内にinsert_quorum
のレプリカにデータを書き込むのに成功した場合のみ成功します。何らかの理由で、成功した書き込みのあるレプリカの数がinsert_quorum
に達しない場合、その書き込みは失敗と見なされ、ClickHouseはデータがすでに書き込まれているすべてのレプリカから挿入されたブロックを削除します。
insert_quorum_parallel
が無効になっている場合、クォーラム内のすべてのレプリカは整合的であり、すなわちすべての以前のINSERT
クエリからのデータを含みます(INSERT
シーケンスが線形化されます)。insert_quorum
を使用して書き込まれたデータを読む際に、insert_quorum_parallel
が無効になっている場合は、select_sequential_consistencyを使用してSELECT
クエリのための逐次整合性を有効にできます。
ClickHouseは例外を生成します。
- クエリ実行時に利用可能なレプリカの数が
insert_quorum
未満の場合。 insert_quorum_parallel
が無効で、前のブロックがinsert_quorum
のレプリカにまだ挿入されていない場合にデータを書き込もうとした場合。この状況は、ユーザーが前のINSERT
クエリがinsert_quorum
で完了する前に同じテーブルに対して別のINSERT
クエリを実行しようとしたときに発生する可能性があります。
詳細は以下を参照してください:
insert_quorum_parallel
タイプ: Bool
デフォルト値: 1
この設定はSharedMergeTreeには適用されません。詳細はSharedMergeTreeの整合性を参照してください。
クォーラムINSERT
クエリに対する並列性を有効または無効にします。有効にすると、前のクエリがまだ完了していない間に追加のINSERT
クエリを送信できます。無効にすると、同じテーブルへの追加の書き込みは拒否されます。
可能な値:
- 0 — 無効。
- 1 — 有効。
詳細は以下を参照してください:
insert_quorum_timeout
タイプ: ミリ秒
デフォルト値: 600000
クォーラムへの書き込みタイムアウト(ミリ秒単位)。タイムアウトが過ぎても書き込みが行われていない場合、ClickHouseは例外を生成し、クライアントは同じブロックを同じまたは他のレプリカに書き込むためにクエリを繰り返す必要があります。
詳細は以下を参照してください:
insert_shard_id
タイプ: UInt64
デフォルト値: 0
0でない場合、データを同期的に挿入するDistributedテーブルのシャードを指定します。
insert_shard_id
の値が正しくない場合、サーバーは例外をスローします。
requested_cluster
のシャードの数を取得するには、サーバーの設定をチェックするか、このクエリを使用します:
可能な値:
- 0 — 無効。
- 対応するDistributedテーブルの
1
からshards_num
までの任意の数字。
例
クエリ:
結果:
interactive_delay
タイプ: UInt64
デフォルト値: 100000
リクエスト実行がキャンセルされているかどうかをチェックし、進捗を送信するためのマイクロ秒単位の間隔。
intersect_default_mode
タイプ: SetOperationMode
デフォルト値: ALL
INTERSECTクエリのデフォルトモードを設定します。可能な値: 空文字列、'ALL'、'DISTINCT'。空の場合、モードなしのクエリは例外をスローします。
join_algorithm
タイプ: JoinAlgorithm
デフォルト値: direct,parallel_hash,hash
使用されるJOINアルゴリズムを指定します。
複数のアルゴリズムを指定でき、利用可能なものが特定のクエリで選択されます。選択は種類/厳格さおよびテーブルエンジンに基づきます。
可能な値:
- grace_hash
Grace hash joinが使用されます。Grace hashは、メモリ使用を制限しながらパフォーマンスの良い複雑なJOINを提供します。
最初のフェーズは、キー列のハッシュ値に基づいて右テーブルをNバケツに分割します(最初は、Nはgrace_hash_join_initial_buckets
です)。これは、各バケツが独立して処理できることを保証するように行われます。最初のバケツからの行はメモリ内ハッシュテーブルに追加され、他のバケツはディスクに保存されます。ハッシュテーブルがメモリ制限を超えると(例:max_bytes_in_join
によって設定されたように)、バケツの数が増加し各行に割り当てられます。現在のバケツに属さない行はフラッシュされ、再割り当てされます。
INNER/LEFT/RIGHT/FULL ALL/ANY JOIN
をサポートします。
- hash
Hash join algorithmが使用されます。種類と厳格さのすべての組み合わせと、JOIN ON
セクションでOR
で結合された複数のJOINキーをサポートする最も一般的な実装です。
hash
アルゴリズムを使用する場合、JOINの右部分はRAMにアップロードされます。
- parallel_hash
hash
JOINのバリエーションで、データをバケツに分割して、同時に複数のハッシュテーブルを構築して、このプロセスを加速します。
parallel_hash
アルゴリズムを使用する場合、JOINの右部分はRAMにアップロードされます。
- partial_merge
sort-merge algorithmの変種で、右テーブルのみが完全にソートされます。
RIGHT JOIN
とFULL JOIN
は、ALL
の厳密性でのみサポートされます(SEMI
、ANTI
、ANY
、およびASOF
はサポートされていません)。
partial_merge
アルゴリズムを使用する場合、ClickHouseはデータをソートし、ディスクにダンプします。ClickHouseのpartial_merge
アルゴリズムは、従来の実装とは少し異なります。まず、ClickHouseは右テーブルを結合キーでブロックごとにソートし、ソートされたブロックのためのmin-maxインデックスを作成します。そして、左テーブルの部分をjoin key
でソートし、右テーブルと結合します。min-maxインデックスも、不要な右テーブルのブロックをスキップするために使用されます。
- direct
このアルゴリズムは、右テーブルがキー-バリューリクエストをサポートしているストレージに適用できます。
direct
アルゴリズムは、左テーブルの行をキーとして使用して右テーブルでルックアップを行います。これは、DictionaryやEmbeddedRocksDBのような特殊なストレージでのみサポートされ、LEFT
およびINNER
JOINのみで用いられます。
- auto
auto
に設定すると、最初にhash
JOINを試し、メモリ制限が違反された場合は自動的に別のアルゴリズムに切り替えます。
- full_sorting_merge
Sort-merge algorithmで、結合する前にソートされたテーブルを完全にソートします。
- prefer_partial_merge
ClickHouseは可能な場合は常にpartial_merge
JOINを使用しようとし、それ以外の場合はhash
を使用します。非推奨、partial_merge
、hash
と同様です。
- default (非推奨)
レガシー値で、もはや使用しないでください。
direct,hash
、すなわち、最初に直接JOINを試み、次にハッシュJOIN(この順序で)を使用します。
join_any_take_last_row
タイプ: Bool
デフォルト値: 0
ANY
厳格性を持つJOIN操作の挙動を変更します。
この設定は、Joinエンジンテーブルを使用したJOIN
操作のみに適用されます。
可能な値:
- 0 — 右テーブルに一致する行が複数ある場合、最初に見つかった行のみが結合されます。
- 1 — 右テーブルに一致する行が複数ある場合、最後に見つかった行のみが結合されます。
詳細は以下を参照してください:
join_default_strictness
タイプ: JoinStrictness
デフォルト値: ALL
JOIN句のデフォルトの厳格性を設定します。
可能な値:
ALL
— 右テーブルに一致する行が複数ある場合、ClickHouseは一致する行のデカルト積を作成します。これは標準SQLからの通常のJOIN
の動作です。ANY
— 右テーブルに一致する行が複数ある場合、最初に見つかった行のみが結合されます。右テーブルに一致する行が1つしかない場合、ANY
とALL
の結果は同じです。ASOF
— 不確実な一致のシーケンスを結合します。- 空文字列 — クエリに
ALL
またはANY
が指定されていない場合、ClickHouseは例外をスローします。
join_on_disk_max_files_to_merge
タイプ: UInt64
デフォルト値: 64
ディスク上で実行されるMergeJoin操作において、並行ソートで許可されるファイルの数を制限します。
設定の値が大きいほど、使用されるRAMが増え、ディスクI/Oが減少します。
可能な値:
- 2から始まる任意の正の整数。
join_output_by_rowlist_perkey_rows_threshold
タイプ: UInt64
デフォルト値: 5
ハッシュJOINにおいて、行リストで出力するかどうかを判断するための右テーブルのキーごとの平均行の下限。
join_overflow_mode
タイプ: OverflowMode
デフォルト値: throw
制限を超えた場合の動作。
join_to_sort_maximum_table_rows
タイプ: UInt64
デフォルト値: 10000
左または内部JOINで、右テーブルをキーで再整理するかどうかを判断するための右テーブルの最大行数。
join_to_sort_minimum_perkey_rows
タイプ: UInt64
デフォルト値: 40
左または内部JOINで右テーブルをキーで再整理するかどうかを判断するための、右テーブルのキーごとの平均行の下限。この設定により、スパーステーブルキーに対して最適化が適用されないことが保証されます。
join_use_nulls
タイプ: Bool
デフォルト値: 0
JOINの挙動のタイプを設定します。テーブルをマージする際に、空のセルが現れることがあります。ClickHouseはこの設定に基づいてそれらを異なる方法で埋めます。
可能な値:
- 0 — 空のセルは対応するフィールドタイプのデフォルト値で埋まります。
- 1 —
JOIN
は標準SQLと同様に動作します。対応するフィールドのタイプはNullableに変換され、空のセルはNULLで埋まります。
joined_subquery_requires_alias
タイプ: Bool
デフォルト値: 1
正しい名前の資格のために、結合されたサブクエリおよびテーブル関数にエイリアスを持たせることを強制します。
kafka_disable_num_consumers_limit
タイプ: Bool
デフォルト値: 0
利用可能なCPUコアの数に依存するkafka_num_consumersに対する制限を無効にします。
kafka_max_wait_ms
タイプ: ミリ秒
デフォルト値: 5000
リトライの前にKafkaからメッセージを読むための待機時間(ミリ秒単位)。
可能な値:
- 正の整数。
- 0 — 無限のタイムアウト。
詳細は以下を参照してください:
keeper_map_strict_mode
タイプ: Bool
デフォルト値: 0
KeeperMap上の操作中に追加のチェックを強制します。例えば、既存のキーに対して挿入時に例外をスローします。
keeper_max_retries
タイプ: UInt64
デフォルト値: 10
一般的なKeeper操作の最大リトライ数。
keeper_retry_initial_backoff_ms
タイプ: UInt64
デフォルト値: 100
一般的なKeeper操作のための初期バックオフタイムアウト。
keeper_retry_max_backoff_ms
タイプ: UInt64
デフォルト値: 5000
一般的なKeeper操作のための最大バックオフタイムアウト。
least_greatest_legacy_null_behavior
タイプ: Bool
デフォルト値: 0
有効になっている場合、関数'least'および'greatest'は、引数のいずれかがNULLの場合にNULLを返します。
legacy_column_name_of_tuple_literal
タイプ: Bool
デフォルト値: 0
大きなタプルリテラルの要素名をハッシュの代わりにそのカラム名としてリストします。この設定は互換性の理由でのみ存在します。バージョン21.7未満から高いバージョンへのクラスタのローリングアップデート中に'true'に設定することが意味があります。
lightweight_deletes_sync
タイプ: UInt64
デフォルト値: 2
mutations_sync
と同じですが、軽量削除の実行のみを制御します。
可能な値:
- 0 - ミューテーションは非同期で実行されます。
- 1 - クエリは現在のサーバーで軽量削除が完了するまで待機します。
- 2 - クエリはすべてのレプリカで軽量削除が完了するまで待機します(存在する場合)。
関連情報
limit
タイプ: UInt64
デフォルト値: 0
クエリ結果から取得する最大行数を設定します。LIMIT句で設定された値を調整するため、クエリに指定された制限は、この設定で設定された制限を超えることはできません。
可能な値:
- 0 — 行数に制限はありません。
- 正の整数。
live_view_heartbeat_interval
タイプ: 秒
デフォルト値: 15
ライブクエリが生存していることを示すためのハートビート間隔(秒単位)。
load_balancing
タイプ: LoadBalancing
デフォルト値: random
分散クエリ処理に使用されるレプリカ選択のアルゴリズムを指定します。
ClickHouseは、以下のレプリカ選択アルゴリズムをサポートします。
詳細は以下を参照してください:
ランダム(デフォルト)
各レプリカのエラー数がカウントされます。クエリはエラーが最も少ないレプリカに送信され、同じ場合にはその中のいずれかに送信されます。 短所: サーバの近接性は考慮されず、レプリカに異なるデータがある場合、異なるデータが得られます。
最も近いホスト名
各レプリカのエラー数がカウントされます。5分ごとにエラー数は2で整合的に割り算されます。したがって、最近のエラー数が指数的に平滑化されます。最小のエラー数を持つレプリカが1つある場合、クエリはそれに送信されます。同じ最小のエラー数を持つ複数のレプリカがある場合、クエリは設定ファイルのサーバのホスト名に最も近いホスト名のレプリカに送信されます(同じ文字が同じ位置に存在する数まで、両ホスト名の最小長さまで)。
例えば、example01-01-1とexample01-01-2は1箇所異なり、example01-01-1とexample01-02-2は2箇所異なります。 この方法は単純に思えるかもしれませんが、ネットワークトポロジーに関する外部データを必要とせず、IPアドレスを比較することで、私たちのIPv6アドレスに対して複雑になることはありません。
したがって、同等のレプリカがある場合には、名前によって最も近いレプリカが優先されます。 同じサーバにクエリを送信する際、障害がない限り、分散クエリも同じサーバに送信されると仮定できます。したがって、レプリカに異なるデータが配置されていても、クエリはほぼ同じ結果を返します。
ホスト名のレーベンシュタイン距離
nearest_hostname
と同様ですが、ホスト名をレーベンシュタイン距離の観点から比較します。例えば:
In Order
同じ数のエラーを持つレプリカは、設定ファイルに指定された順序でアクセスされます。この方法は、どのレプリカが好ましいか正確にわかっている場合に適しています。
First or Random
このアルゴリズムは、セット内の最初のレプリカを選択するか、最初のレプリカが利用できない場合にはランダムなレプリカを選択します。クロスレプリケーショントポロジーのセットアップでは効果的ですが、他の構成では無駄です。
first_or_random
アルゴリズムは、in_order
アルゴリズムの問題を解決します。in_order
を使用すると、1つのレプリカがダウンすると次のレプリカにダブルロードがかかり、残りのレプリカは通常のトラフィックを処理します。first_or_random
アルゴリズムを使用すると、利用可能なレプリカ間で負荷が均等に分配されます。
最初のレプリカを明示的に定義することも可能で、その際は load_balancing_first_offset
設定を使用します。これにより、クエリのワークロードをレプリカ間で再バランスさせる制御が向上します。
Round Robin
このアルゴリズムは、同じ数のエラーを持つレプリカに対してラウンドロビンポリシーを使用します(round_robin
ポリシーのクエリのみが考慮されます)。
load_balancing_first_offset
タイプ: UInt64
デフォルト値: 0
FIRST_OR_RANDOM ロードバランシング戦略が使用されるときに、クエリを優先して送信するレプリカを指定します。
load_marks_asynchronously
タイプ: Bool
デフォルト値: 0
MergeTree マークを非同期でロードします。
local_filesystem_read_method
タイプ: String
デフォルト値: pread_threadpool
ローカルファイルシステムからデータを読み取る方法の1つ:read、pread、mmap、io_uring、pread_threadpool。 'io_uring' メソッドは実験的であり、Log、TinyLog、StripeLog、File、Set、Join、および同時読み取りと書き込みが存在する場合の追加可能なファイルを持つ他のテーブルには機能しません。
local_filesystem_read_prefetch
タイプ: Bool
デフォルト値: 0
ローカルファイルシステムからデータを読み取るときにプレフェッチを使用すべきかどうか。
lock_acquire_timeout
タイプ: Seconds
デフォルト値: 120
ロック要求が失敗するまでの待機時間(秒)を定義します。
ロックタイムアウトは、テーブルの読み取り/書き込み操作を実行する際にデッドロックから保護するために使用されます。タイムアウトが切れると、ロック要求が失敗し、ClickHouse サーバーは「ロック試行がタイムアウトしました!デッドロックを回避しました。クライアントは再試行する必要があります。」という例外を投げます。
可能な値:
- 正の整数(秒単位)。
- 0 — ロックタイムアウトなし。
log_comment
タイプ: String
デフォルト値:
system.query_log テーブルの log_comment
フィールドに指定する値とサーバーログのコメントテキストを指定します。
これにより、サーバーログの可読性が向上します。さらに、clickhouse-testを実行した後に、system.query_log
からテストに関連するクエリを選択するのに役立ちます。
可能な値:
- max_query_size を超えない限り、任意の文字列。最大クエリサイズを超えると、サーバーは例外を投げます。
例
クエリ:
結果:
log_formatted_queries
タイプ: Bool
デフォルト値: 0
system.query_log システムテーブルにフォーマットされたクエリをログに記録します(formatted_query
カラムがポピュレートされます)。
可能な値:
- 0 — フォーマットされたクエリはシステムテーブルに記録されません。
- 1 — フォーマットされたクエリがシステムテーブルに記録されます。
log_processors_profiles
タイプ: Bool
デフォルト値: 1
テーブル処理中にプロセッサーが費やした時間を system.processors_profile_log
テーブルに記録します。
詳細情報:
log_profile_events
タイプ: Bool
デフォルト値: 1
クエリ性能統計を query_log
、query_thread_log
および query_views_log
にログします。
log_queries
タイプ: Bool
デフォルト値: 1
クエリログを設定します。
この設定で ClickHouse に送信されたクエリは、query_log サーバー設定パラメータのルールに従ってログに記録されます。
例:
log_queries_cut_to_length
タイプ: UInt64
デフォルト値: 100000
クエリの長さが指定されたしきい値(バイト)を超える場合、クエリをクエリログに書き込むときにカットします。また、通常のテキストログに印刷されるクエリの長さも制限します。
log_queries_min_query_duration_ms
タイプ: Milliseconds
デフォルト値: 0
有効にすると(非ゼロ)、この設定の値よりも速いクエリはログに記録されません(これは MySQL Slow Query Log のための long_query_time
と考えることができます)。基本的に、以下のテーブルには見つからないことを意味します:
system.query_log
system.query_thread_log
ログに入るのは以下のタイプのクエリのみです:
-
QUERY_FINISH
-
EXCEPTION_WHILE_PROCESSING
-
タイプ: ミリ秒
-
デフォルト値: 0(すべてのクエリ)
log_queries_min_type
タイプ: LogQueriesType
デフォルト値: QUERY_START
ログに記録する query_log
最小タイプ。
可能な値:
QUERY_START
(=1
)QUERY_FINISH
(=2
)EXCEPTION_BEFORE_START
(=3
)EXCEPTION_WHILE_PROCESSING
(=4
)
これは、どのエンティティが query_log
に記録されるかを制限するために使用できます。たとえば、エラーのみを興味がある場合は、EXCEPTION_WHILE_PROCESSING
を使用できます。
log_queries_probability
タイプ: Float
デフォルト値: 1
ユーザーが、指定された確率でランダムに選択されたクエリのサンプルのみを query_log、query_thread_log、および query_views_log システムテーブルに書き込むことを許可します。これにより、1秒あたりの大量のクエリの負荷を軽減するのに役立ちます。
可能な値:
- 0 — クエリはシステムテーブルに記録されません。
- 正の浮動小数点数 [0..1] の範囲。たとえば、設定値が
0.5
の場合、約半分のクエリがシステムテーブルにログされます。 - 1 — すべてのクエリがシステムテーブルに記録されます。
log_query_settings
タイプ: Bool
デフォルト値: 1
クエリ設定を query_log
および OpenTelemetry span log にログします。
log_query_threads
タイプ: Bool
デフォルト値: 0
クエリスレッドのログ設定。
この設定は、log_queries が true の場合にのみ効果があります。この設定が有効な場合、ClickHouse によって実行されるクエリのスレッドが system.query_thread_log テーブルにログされます。
可能な値:
- 0 — 無効。
- 1 — 有効。
例
log_query_views
タイプ: Bool
デフォルト値: 1
クエリビューのログ設定。
この設定が有効な ClickHouse によって実行されるクエリに関連するビュー(マテリアライズドビューまたはライブビュー)がある場合、これらは query_views_log サーバー設定パラメータに記録されます。
例:
low_cardinality_allow_in_native_format
タイプ: Bool
デフォルト値: 1
LowCardinality データ型を Native フォーマットで使用することを許可または制限します。
LowCardinality
の使用が制限されている場合、ClickHouse サーバーは SELECT
クエリの場合に LowCardinality
カラムを通常のカラムに変換し、INSERT
クエリの場合には通常のカラムを LowCardinality
カラムに変換します。
この設定は主に、LowCardinality
データ型をサポートしていないサードパーティのクライアント向けに必要です。
可能な値:
- 1 —
LowCardinality
の使用が制限されていません。 - 0 —
LowCardinality
の使用が制限されています。
low_cardinality_max_dictionary_size
タイプ: UInt64
デフォルト値: 8192
LowCardinality データ型の共有グローバル辞書の最大行数を、ストレージファイルシステムに書き込むことができます。この設定は、辞書の無制限な成長に対処するためにRAMの問題を防ぎます。最大辞書サイズの制限によりエンコードできないすべてのデータは、ClickHouseは普通の方法で書き込みます。
可能な値:
- 任意の正の整数。
low_cardinality_use_single_dictionary_for_part
タイプ: Bool
デフォルト値: 0
データパーツの単一辞書の使用を有効または無効にします。
デフォルトでは、ClickHouse サーバーは辞書のサイズを監視しており、辞書がオーバーフローすると、サーバーは次の辞書を書き始めます。複数の辞書を作成しないようにするには、low_cardinality_use_single_dictionary_for_part = 1
を設定します。
可能な値:
- 1 — データパーツの複数の辞書を作成することが禁止されます。
- 0 — データパーツの複数の辞書を作成することが禁止されません。
materialize_skip_indexes_on_insert
タイプ: Bool
デフォルト値: 1
INSERT の際にスキップインデックスを構築および保存します。無効にすると、スキップインデックスはマージ中または明示的な MATERIALIZE INDEX によって構築および保存されます。
materialize_statistics_on_insert
タイプ: Bool
デフォルト値: 1
INSERT の際に統計を構築して挿入します。無効にすると、統計はマージ中または明示的な MATERIALIZE STATISTICS によって構築および保存されます。
materialize_ttl_after_modify
タイプ: Bool
デフォルト値: 1
ALTER MODIFY TTL クエリの後に古いデータに TTL を適用します。
materialized_views_ignore_errors
タイプ: Bool
デフォルト値: 0
MATERIALIZED VIEW のエラーを無視し、MV に関係なくオリジナルのブロックをテーブルに提供します。
max_analyze_depth
タイプ: UInt64
デフォルト値: 5000
インタープリタによって実行される最大解析数。
max_ast_depth
タイプ: UInt64
デフォルト値: 1000
クエリ構文木の最大深さです。解析後にチェックされます。
max_ast_elements
タイプ: UInt64
デフォルト値: 50000
ノード数におけるクエリ構文木の最大サイズです。解析後にチェックされます。
max_autoincrement_series
タイプ: UInt64
デフォルト値: 1000
generateSeriesID
関数によって作成されるシリーズの最大数。
各シリーズは Keeper 内のノードを表すため、数百万人を超えないことを推奨します。
max_backup_bandwidth
タイプ: UInt64
デフォルト値: 0
特定のバックアップに対してサーバー上での最大読み取り速度(バイト毎秒)。ゼロは無制限を意味します。
max_block_size
タイプ: UInt64
デフォルト値: 65409
ClickHouse では、データはブロックによって処理され、これはカラムパーツのセットです。単一ブロックの内部処理サイクルは効率的ですが、各ブロックを処理する際には目立ったコストがかかります。
max_block_size
設定は、テーブルからデータをロードするときに単一ブロックに含めることが推奨される最大行数を示します。max_block_size
のサイズのブロックは、テーブルから常にロードされるわけではなく、ClickHouse がより少ないデータを取得する必要があると判断した場合には、小さなブロックが処理されます。
ブロックサイズは、各ブロックを処理する際の目立ったコストを避けるためには大きすぎてはいけません。また、LIMIT 条項を持つクエリが最初のブロックを処理した後に迅速に実行されることを確保するためには、小さすぎてもいけません。max_block_size
を設定する際は、大量のカラムを複数スレッドで抽出する際にあまり多くのメモリを消費せず、ある程度のキャッシュローカリティが保たれることを目指すべきです。
max_bytes_before_external_group_by
タイプ: UInt64
デフォルト値: 0
GROUP BY 操作中のメモリ使用量がバイトでこのしきい値を超える場合、'外部集約' モードをアクティブにします(データをディスクにスピルします)。推奨値は利用可能なシステムメモリの半分です。
max_bytes_before_external_sort
タイプ: UInt64
デフォルト値: 0
ORDER BY 操作中のメモリ使用量がバイトでこのしきい値を超える場合、'外部ソート' モードをアクティブにします(データをディスクにスピルします)。推奨値は利用可能なシステムメモリの半分です。
max_bytes_before_remerge_sort
タイプ: UInt64
デフォルト値: 1000000000
ORDER BY と LIMIT の場合に、メモリ使用量が指定されたしきい値を超えると、最終的なマージの前にブロックを追加でマージする手順を実行して、上位の LIMIT 行だけを保持します。
max_bytes_in_distinct
タイプ: UInt64
デフォルト値: 0
DISTINCT の実行のための状態の最大サイズ(未圧縮バイト)です。
max_bytes_in_join
タイプ: UInt64
デフォルト値: 0
JOIN のためのハッシュテーブルの最大サイズ(メモリ内のバイト数)です。
max_bytes_in_set
タイプ: UInt64
デフォルト値: 0
IN セクションの実行結果として得られるセットの最大サイズ(メモリ内のバイト数)です。
max_bytes_ratio_before_external_group_by
タイプ: Double
デフォルト値: 0.5
外部 GROUP BY を有効にする前の使用メモリの比率。これを 0.6 に設定すると、メモリ使用量がクエリの許可メモリの 60% に達した時点で外部 GROUP BY が使用されます。
max_bytes_ratio_before_external_sort
タイプ: Double
デフォルト値: 0.5
外部 ORDER BY を有効にする前の使用メモリの比率。これを 0.6 に設定すると、メモリ使用量がクエリの許可メモリの 60% に達した時点で外部 ORDER BY が使用されます。
max_bytes_to_read
タイプ: UInt64
デフォルト値: 0
最も「深い」ソースからの読み取りバイト(圧縮後)の制限。それは、最も深いサブクエリにのみ適用されます。リモートサーバーから読み取る場合は、リモートサーバーでのみチェックされます。
max_bytes_to_read_leaf
タイプ: UInt64
デフォルト値: 0
分散クエリのリーフノードでの読み取りバイト(圧縮後)の制限。制限はローカル読み取りにのみ適用され、ルートノードでの最終的なマージステージは除外されます。この設定は prefer_localhost_replica=1
で不安定です。
max_bytes_to_sort
タイプ: UInt64
デフォルト値: 0
ORDER BY 操作のために処理される必要がある(未圧縮)バイト数が指定された量を超える場合、その動作は 'sort_overflow_mode' によって決定され、デフォルトでは例外を投げます。
max_bytes_to_transfer
タイプ: UInt64
デフォルト値: 0
GLOBAL IN/JOIN セクションが実行されたときに、送信される外部テーブルの最大サイズ(未圧縮バイト数)です。
max_columns_to_read
タイプ: UInt64
デフォルト値: 0
クエリが指定された数のカラムを超えて読み取る必要がある場合、例外が投げられます。ゼロの値は無制限を意味します。この設定は、あまりにも複雑なクエリを防ぐのに役立ちます。
max_compress_block_size
タイプ: UInt64
デフォルト値: 1048576
テーブルへの書き込みのために圧縮する前の未圧縮データブロックの最大サイズです。デフォルトは1,048,576(1 MiB)です。小さなブロックサイズを指定すると、一般的に圧縮率がわずかに減少し、圧縮および解凍速度がわずかに向上し、メモリ消費が削減されます。
これはエキスパートレベルの設定であり、ClickHouseを初めて使用する場合は変更しないでください。
圧縮用のブロック(バイトの塊)をクエリ処理用のブロック(テーブルからの行のセット)と混同しないでください。
max_concurrent_queries_for_all_users
タイプ: UInt64
デフォルト値: 0
この設定の値が、同時に処理されているクエリの数と同じか少ない場合、例外を投げます。
例: max_concurrent_queries_for_all_users
を99に設定し、データベース管理者は自己のために100に設定して、サーバーが過負荷の際にも調査のためのクエリを実行できるようにします。
この設定を1つのクエリまたはユーザーに対して変更しても、他のクエリには影響しません。
可能な値:
- 正の整数。
- 0 — 限度なし。
例
関連情報
max_concurrent_queries_for_user
タイプ: UInt64
デフォルト値: 0
ユーザーごとに同時に処理されるクエリの最大数。
可能な値:
- 正の整数。
- 0 — 限度なし。
例
max_distributed_connections
タイプ: UInt64
デフォルト値: 1024
単一の Distributed テーブルへの単一クエリのために、リモートサーバーとの同時接続の最大数。クラスタ内のサーバーの数以上の値を設定することを推奨します。
以下のパラメータは、Distributed テーブルの作成時(およびサーバーの起動時)にのみ使用されるため、ランタイム中に変更する理由はありません。
max_distributed_depth
タイプ: UInt64
デフォルト値: 5
Distributed テーブルに対する再帰クエリの最大深さを制限します。
値が超えた場合、サーバーは例外を投げます。
可能な値:
- 正の整数。
- 0 — 無制限の深さ。
max_download_buffer_size
タイプ: UInt64
デフォルト値: 10485760
各スレッドごとの並列ダウンロードの最大バッファサイズ(例:URLエンジン用)。
max_download_threads
タイプ: MaxThreads
デフォルト値: 4
データをダウンロードするためのスレッドの最大数(例:URLエンジン用)。
max_estimated_execution_time
タイプ: Seconds
デフォルト値: 0
クエリの推定実行時間の最大値(秒)。
max_execution_speed
タイプ: UInt64
デフォルト値: 0
毎秒の最大実行行数。
max_execution_speed_bytes
タイプ: UInt64
デフォルト値: 0
毎秒の最大実行バイト数。
max_execution_time
タイプ: Seconds
デフォルト値: 0
クエリの実行時間が指定された秒数を超えた場合、その動作は 'timeout_overflow_mode' によって決定され、デフォルトでは例外を投げます。タイムアウトはチェックされ、クエリはデータ処理中の指定された場所でのみ停止できます。現在、集約状態のマージ中やクエリ分析中に停止することはできず、実際の実行時間はこの設定の値よりも大きくなります。
max_execution_time_leaf
タイプ: Seconds
デフォルト値: 0
max_execution_time と同様の意味ですが、分散クエリのリーフノードでのみ適用され、タイムアウト動作は 'timeout_overflow_mode_leaf' によって決定され、デフォルトでは例外を投げます。
max_expanded_ast_elements
タイプ: UInt64
デフォルト値: 500000
エイリアスとアスタリスクの展開後のノード数におけるクエリ構文木の最大サイズです。
max_fetch_partition_retries_count
タイプ: UInt64
デフォルト値: 5
別のホストからパーティションを取得する際のリトライ回数です。
max_final_threads
タイプ: MaxThreads
デフォルト値: 'auto(12)'
FINAL 修飾子を使用した SELECT
クエリのデータ読み取りフェーズに対しての最大並列スレッド数を設定します。
可能な値:
- 正の整数。
- 0 または 1 — 無効。
SELECT
クエリは単一スレッドで実行されます。
max_http_get_redirects
タイプ: UInt64
デフォルト値: 0
許可される最大の HTTP GET リダイレクトホップ数。悪意のあるサーバーが不明なサービスにリクエストをリダイレクトするのを防ぐために追加のセキュリティ対策が講じられます。
外部サーバーが他のアドレスにリダイレクトする場合、ただし、そのアドレスが企業のインフラストラクチャ内部に見える場合、内部サーバーにHTTPリクエストを送信することで、認証をバイパスしたり、Redis や Memcached などの他のサービスを要求することができます。内部インフラストラクチャ(ローカルホスト上で実行されている何かを含む)がない場合、またはサーバーを信頼している場合、リダイレクトの使用は安全です。ただし、URL が HTTP を使用している場合、リモートサーバーだけでなく、ISP および中間のすべてのネットワークも信頼しなければならないことを念頭に置いてください。
max_hyperscan_regexp_length
タイプ: UInt64
デフォルト値: 0
hyperscan マルチマッチ関数における各正規表現の最大長を定義します。
可能な値:
- 正の整数。
- 0 - 長さは制限されていません。
例
クエリ:
結果:
クエリ:
結果:
関連情報
max_hyperscan_regexp_total_length
タイプ: UInt64
デフォルト値: 0
各 hyperscan マルチマッチ関数 におけるすべての正規表現の最大総長を設定します。
可能な値:
- 正の整数。
- 0 - 長さは制限されていません。
例
クエリ:
結果:
クエリ:
結果:
関連情報
max_insert_block_size
タイプ: UInt64
デフォルト値: 1048449
テーブルに挿入するために形成する行数のブロックサイズです。この設定は、サーバーがブロックを形成する場合にのみ適用されます。たとえば、HTTPインターフェース経由のINSERTの場合、サーバーはデータ形式を解析し、指定されたサイズのブロックを形成します。しかし、clickhouse-client を使用する場合、クライアントがデータを自ら解析し、サーバーの 'max_insert_block_size' 設定は挿入されるブロックのサイズに影響しません。この設定は、INSERT SELECT を使用する場合には目的がありません。なぜなら、データは SELECT によって形成された同じブロックを使用して挿入されるからです。
デフォルトは、max_block_size
よりもわずかに大きくなっています。これは、特定のテーブルエンジン(*MergeTree
)が、挿入された各ブロックのためにディスク上にデータパートを形成する、大規模なエンティティであるためです。同様に、*MergeTree
テーブルは挿入中にデータをソートするため、十分なサイズのブロックサイズにより、RAM内でより多くのデータをソートすることができます。
max_insert_delayed_streams_for_parallel_write
タイプ: UInt64
デフォルト値: 0
最終部分フラッシュを遅延させるための最大ストリーム(カラム)の数。デフォルト - auto(基盤となるストレージが並列書き込みをサポートする場合は1000、それ以外は無効)。
max_insert_threads
タイプ: UInt64
デフォルト値: 0
INSERT SELECT
クエリを実行するための最大スレッド数。
可能な値:
- 0(または1) —
INSERT SELECT
は並列実行されません。 - 正の整数。1より大きい。
クラウドのデフォルト値: サービスサイズに応じて 2
から 4
まで。
並列 INSERT SELECT
は、SELECT
部分が並列で実行されている場合にのみ効果があります。このための設定は max_threads です。
高い値は、より多くのメモリ使用につながります。
max_joined_block_size_rows
タイプ: UInt64
デフォルト値: 65409
JOIN 結果の最大ブロックサイズ(結合アルゴリズムがサポートする場合)。0 は無制限を意味します。
max_limit_for_ann_queries
タイプ: UInt64
デフォルト値: 1000000
この設定より大きい LIMIT を持つ SELECT クエリは、ベクトル類似インデックスを使用できません。ベクトル類似インデックスにおけるメモリのオーバーフローを防ぐのに役立ちます。
max_live_view_insert_blocks_before_refresh
タイプ: UInt64
デフォルト値: 64
マージ可能なブロックがドロップされ、クエリが再実行される最大挿入ブロック数を制限します。
max_local_read_bandwidth
タイプ: UInt64
デフォルト値: 0
ローカル読み取りの最大速度(バイト毎秒)です。
max_local_write_bandwidth
タイプ: UInt64
デフォルト値: 0
ローカル書き込みの最大速度(バイト毎秒)です。
max_memory_usage
タイプ: UInt64
デフォルト値: 0
単一クエリの処理のための最大メモリ使用量。ゼロは無制限を意味します。
max_memory_usage_for_user
タイプ: UInt64
デフォルト値: 0
ユーザーが同時に実行されているクエリの最大メモリ使用量。ゼロは無制限を意味します。
max_network_bandwidth
タイプ: UInt64
デフォルト値: 0
ネットワーク越しのデータ交換速度をバイト毎秒で制限します。この設定はすべてのクエリに適用されます。
可能な値:
- 正の整数。
- 0 — 帯域幅制御は無効です。
max_network_bandwidth_for_all_users
タイプ: UInt64
デフォルト値: 0
ネットワーク上でのデータ交換速度をバイト毎秒で制限します。この設定は、サーバー上で同時に実行されるすべてのクエリに適用されます。
可能な値:
- 正の整数。
- 0 — データ速度制御は無効です。
max_network_bandwidth_for_user
タイプ: UInt64
デフォルト値: 0
ネットワーク越しのデータ交換速度をバイト毎秒で制限します。この設定は、単一のユーザーによって実行されるすべての同時クエリに適用されます。
可能な値:
- 正の整数。
- 0 — データ速度制御は無効です。
max_network_bytes
タイプ: UInt64
デフォルト値: 0
クエリを実行する際にネットワーク上で受信または送信されるデータ量(バイト)を制限します。この設定は、各個別のクエリに適用されます。
可能な値:
- 正の整数。
- 0 — データ量制御は無効です。
max_number_of_partitions_for_independent_aggregation
タイプ: UInt64
デフォルト値: 128
最適化を適用するためのテーブル内のパーティションの最大数です。
max_parallel_replicas
タイプ: NonZeroUInt64
デフォルト値: 1000
クエリを実行する際の各シャードにおけるレプリカの最大数です。
可能な値:
- 正の整数。
追加情報
このオプションは、使用される設定によって異なる結果を生じます。
この設定は、結合やサブクエリが含まれている場合に不正確な結果を生成します。すべてのテーブルが特定の要件を満たしていない場合。詳細は、Distributed Subqueries and max_parallel_replicas を参照してください。
Parallel processing using SAMPLE
key
クエリは、複数のサーバーで並列に実行されるとより速く処理される可能性があります。しかし、次の場合にはクエリ性能が低下することがあります:
- サンプリングキーの位置がパーティションキー内で効率的な範囲スキャンを許可しない場合。
- テーブルにサンプリングキーを追加することが、他のカラムによるフィルタリングを非効率的にする場合。
- サンプリングキーが計算コストの高い式の場合。
- クラスタの遅延分布に長い尾があるため、より多くのサーバーをクエリすると全体のクエリ遅延が増加する場合。
Parallel processing using parallel_replicas_custom_key
この設定は、すべてのレプリケートテーブルにとって有用です。
min_insert_block_size_rows_for_materialized_views
Type: UInt64
Default value: 0
INSERT
クエリによってテーブルに挿入できるブロック内の最小行数を設定します。サイズの小さいブロックは大きいブロックに圧縮されます。この設定は、マテリアライズドビューに挿入されるブロックにのみ適用されます。この設定を調整することで、マテリアライズドビューにプッシュする際のブロック圧縮を制御し、過剰なメモリ使用を回避します。
Possible values:
- 任意の正の整数。
- 0 — 圧縮無効。
See Also
min_joined_block_size_bytes
Type: UInt64
Default value: 524288
JOIN結果の最小ブロックサイズ(JOINアルゴリズムがサポートしている場合)。0は無制限を意味します。
mongodb_throw_on_unsupported_query
Type: Bool
Default value: 1
有効にすると、MongoDBクエリを生成できない場合、MongoDBテーブルはエラーを返します。そうでない場合、ClickHouseはテーブル全体を読み取り、ローカルで処理します。このオプションは、レガシー実装や 'allow_experimental_analyzer=0' の場合には適用されません。
move_all_conditions_to_prewhere
Type: Bool
Default value: 1
WHEREからPREWHEREへすべての有効な条件を移動します。
move_primary_key_columns_to_end_of_prewhere
Type: Bool
Default value: 1
主キー列を含むPREWHERE条件をANDチェーンの末尾に移動します。これらの条件は主キー分析中に考慮される可能性が高く、PREWHEREフィルタリングに大きく寄与しない可能性があります。
multiple_joins_try_to_keep_original_names
Type: Bool
Default value: 0
複数のJOIN書き換え時にトップレベルの表現リストにエイリアスを追加しない。
mutations_execute_nondeterministic_on_initiator
Type: Bool
Default value: 0
trueの場合、定数非決定論的関数(例えば、now()
関数)はイニシエーターで実行され、UPDATE
およびDELETE
クエリ内のリテラルに置き換えられます。これにより、定数非決定論的関数を使用してミューテーションを実行する際に、レプリカ間でデータを同期させることができます。デフォルト値: false
。
mutations_execute_subqueries_on_initiator
Type: Bool
Default value: 0
trueの場合、スカラーサブクエリがイニシエーターで実行され、UPDATE
およびDELETE
クエリ内のリテラルに置き換えられます。デフォルト値: false
。
mutations_max_literal_size_to_replace
Type: UInt64
Default value: 16384
UPDATE
およびDELETE
クエリ内で置き換える最大バイト数の直列化リテラルサイズ。上記の2つの設定のうち少なくとも1つが有効な場合のみ影響します。デフォルト値: 16384(16 KiB)。
mutations_sync
Type: UInt64
Default value: 0
synchronously
に ALTER TABLE ... UPDATE|DELETE|MATERIALIZE INDEX|MATERIALIZE PROJECTION|MATERIALIZE COLUMN|MATERIALIZE STATISTICS
クエリを実行できます(ミューテーション)。
Possible values:
- 0 - ミューテーションは非同期で実行されます。
- 1 - クエリは現在のサーバー上のすべてのミューテーションが完了するまで待機します。
- 2 - クエリはすべてのレプリカでのすべてのミューテーションが完了するまで待機します(存在する場合)。
mysql_datatypes_support_level
Type: MySQLDataTypesSupport
Default value:
MySQLタイプが対応するClickHouseタイプにどのように変換されるかを定義します。decimal
、datetime64
、date2Date32
、またはdate2String
の任意の組み合わせでカンマ区切りのリストです。
decimal
: 精度が可能な場合、NUMERIC
およびDECIMAL
タイプをDecimal
に変換します。datetime64
: 精度が0
でない場合、DATETIME
およびTIMESTAMP
タイプをDateTime64
に変換します。date2Date32
:DATE
をDate
の代わりにDate32
に変換します。これはdate2String
よりも優先されます。date2String
:DATE
をDate
の代わりにString
に変換します。datetime64
によりオーバーライドされます。
mysql_map_fixed_string_to_text_in_show_columns
Type: Bool
Default value: 1
有効にすると、FixedString ClickHouseデータ型はSHOW COLUMNSでTEXT
として表示されます。
MySQLワイヤプロトコルを介して接続が行われている場合のみ効果があります。
- 0 -
BLOB
を使用。 - 1 -
TEXT
を使用。
mysql_map_string_to_text_in_show_columns
Type: Bool
Default value: 1
有効にすると、String ClickHouseデータ型はSHOW COLUMNSでTEXT
として表示されます。
MySQLワイヤプロトコルを介して接続が行われている場合のみ効果があります。
- 0 -
BLOB
を使用。 - 1 -
TEXT
を使用。
mysql_max_rows_to_insert
Type: UInt64
Default value: 65536
MySQLストレージエンジンのバッチ挿入時の最大行数です。
network_compression_method
Type: String
Default value: LZ4
サーバー間、およびサーバーとclickhouse-client間の通信に使用されるデータ圧縮方法を設定します。
Possible values:
LZ4
— LZ4圧縮方法を設定します。ZSTD
— ZSTD圧縮方法を設定します。
See Also
network_zstd_compression_level
Type: Int64
Default value: 1
ZSTD圧縮のレベルを調整します。network_compression_methodがZSTD
に設定されているときのみ使用されます。
Possible values:
- 1から15までの正の整数。
normalize_function_names
Type: Bool
Default value: 1
関数名をその標準名に正規化します。
number_of_mutations_to_delay
Type: UInt64
Default value: 0
変異したテーブルが未完了の変異を少なくともその数だけ含む場合、テーブルの変異を人工的に遅らせます。0 - 無効。
number_of_mutations_to_throw
Type: UInt64
Default value: 0
変異したテーブルが未完了の変異を少なくともその数だけ含む場合、'Too many mutations ...'例外をスローします。0 - 無効。
odbc_bridge_connection_pool_size
Type: UInt64
Default value: 16
ODBCブリッジ内の各接続設定文字列の接続プールサイズです。
odbc_bridge_use_connection_pooling
Type: Bool
Default value: 1
ODBCブリッジで接続プーリングを使用します。falseに設定すると、毎回新しい接続が作成されます。
offset
Type: UInt64
Default value: 0
クエリから行を返す前にスキップする行数を設定します。OFFSET句によって設定されたオフセットを調整します。
Possible values:
- 0 — 行はスキップされません。
- 正の整数。
Example
入力テーブル:
クエリ:
結果:
opentelemetry_start_trace_probability
Type: Float
Default value: 0
ClickHouseが実行されたクエリのためにトレースを開始できる確率を設定します(親のトレースコンテキストが供給されていない場合)。
Possible values:
- 0 — すべての実行されたクエリのトレースが無効になります(親のトレースコンテキストが供給されていない場合)。
- 0から1の範囲の正の浮動小数点数。たとえば、設定値が
0.5
の場合、ClickHouseは平均してクエリの半分でトレースを開始できます。 - 1 — すべての実行されたクエリのトレースが有効です。
opentelemetry_trace_processors
Type: Bool
Default value: 0
プロセッサー用のOpenTelemetryスパンを収集します。
optimize_aggregation_in_order
Type: Bool
Default value: 0
集約データを対応する順序でGROUP BY最適化を有効にするためのSELECTクエリです。
Possible values:
- 0 —
GROUP BY
最適化は無効。 - 1 —
GROUP BY
最適化は有効。
See Also
optimize_aggregators_of_group_by_keys
Type: Bool
Default value: 1
SELECTセクションのGROUP BYキーのmin/max/any/anyLast集約器を排除します。
optimize_and_compare_chain
Type: Bool
Default value: 1
フィルタリング能力を向上させるためにANDチェーン内の定数比較を埋め込みます。サポートする演算子は<
、<=
、>
、>=
、=
およびそれらの混合です。たとえば、(a < b) AND (b < c) AND (c < 5)
は(a < b) AND (b < c) AND (c < 5) AND (b < 5) AND (a < 5)
に置き換えられます。
optimize_append_index
Type: Bool
Default value: 0
制約を使用してインデックス追加条件を追加します。デフォルトはfalse
です。
Possible values:
- true, false
optimize_arithmetic_operations_in_aggregate_functions
Type: Bool
Default value: 1
演算機能を集約関数の外に移動します。
optimize_count_from_files
Type: Bool
Default value: 1
異なる入力形式のファイルから行数を数える最適化を有効または無効にします。テーブル関数/エンジンfile
/s3
/url
/hdfs
/azureBlobStorage
に適用されます。
Possible values:
- 0 — 最適化無効。
- 1 — 最適化有効。
optimize_distinct_in_order
Type: Bool
Default value: 1
DISTINCTの列の順序のプレフィックスがある場合、DISTINCT最適化を有効にします。たとえば、マージツリーでのソートキーのプレフィックスやORDER BYステートメント。
optimize_distributed_group_by_sharding_key
Type: Bool
Default value: 1
イニシエーターサーバー上でのコストのかかる集約を避けることによって、GROUP BY sharding_key
クエリを最適化します(これにより、イニシエーターサーバーでのクエリメモリ使用量が削減されます)。
サポートされるクエリの種類は次のとおりです(およびそれらの組み合わせ):
SELECT DISTINCT [..., ]sharding_key[, ...] FROM dist
SELECT ... FROM dist GROUP BY sharding_key[, ...]
SELECT ... FROM dist GROUP BY sharding_key[, ...] ORDER BY x
SELECT ... FROM dist GROUP BY sharding_key[, ...] LIMIT 1
SELECT ... FROM dist GROUP BY sharding_key[, ...] LIMIT 1 BY x
サポートされないクエリの種類は次のとおりです(後々サポートが追加されるかもしれません):
SELECT ... GROUP BY sharding_key[, ...] WITH TOTALS
SELECT ... GROUP BY sharding_key[, ...] WITH ROLLUP
SELECT ... GROUP BY sharding_key[, ...] WITH CUBE
SELECT ... GROUP BY sharding_key[, ...] SETTINGS extremes=1
Possible values:
- 0 — 無効。
- 1 — 有効。
See also:
現在、optimize_skip_unused_shards
が必要です(その理由は、将来的にはデフォルトで有効にされ、データがDistributedテーブルを通じて挿入された場合にのみ正しく機能します。つまり、データがsharding_keyに従って分散されます)。
optimize_extract_common_expressions
Type: Bool
Default value: 1
WHERE、PREWHERE、ON、HAVING、QUALIFYの表現から共通の表現を抽出できるようにします。論理式のような(A AND B) OR (A AND C)
はA AND (B OR C)
に書き換えることができ、これが以下に役立ちます:
- 単純なフィルタリングエクスプレッションにおけるインデックスの利用
- クロスから内側JOINの最適化
optimize_functions_to_subcolumns
Type: Bool
Default value: 1
いくつかの関数をサブカラムを読み取るように変換して最適化します。これにより、読み込むデータの量が削減されます。
次の関数が変換できます:
- length をサイズ0のサブカラムを読み取るように変換します。
- empty をサイズ0のサブカラムを読み取るように変換します。
- notEmpty をサイズ0のサブカラムを読み取るように変換します。
- isNull をnullのサブカラムを読み取るように変換します。
- isNotNull をnullのサブカラムを読み取るように変換します。
- count をnullのサブカラムを読み取るように変換します。
- mapKeys をkeysのサブカラムを読み取るように変換します。
- mapValues をvaluesのサブカラムを読み取るように変換します。
Possible values:
- 0 — 最適化無効。
- 1 — 最適化有効。
optimize_group_by_constant_keys
Type: Bool
Default value: 1
すべてのブロック内のキーが定数である場合、GROUP BYを最適化します。
optimize_group_by_function_keys
Type: Bool
Default value: 1
GROUP BYセクション内での他のキーの関数を排除します。
optimize_if_chain_to_multiif
Type: Bool
Default value: 0
if(cond1, then1, if(cond2, ...) のチェーンをmultiIfに置き換えます。現在、この機能は数値タイプにとって有益ではありません。
optimize_if_transform_strings_to_enum
Type: Bool
Default value: 0
IfおよびTransform内の文字列タイプ引数をenumに置き換えます。これはデフォルトで無効であり、分散クエリの不整合な変更を引き起こし、その失敗を招く可能性があります。
optimize_injective_functions_in_group_by
Type: Bool
Default value: 1
GROUP BYセクション内で自身を持つinjective関数を引数に置き換えます。
optimize_injective_functions_inside_uniq
Type: Bool
Default value: 1
uniq*() 関数内の単一引数のinjective関数を削除します。
optimize_min_equality_disjunction_chain_length
Type: UInt64
Default value: 3
最適化のための表現expr = x1 OR ... expr = xN
の最小長。
optimize_min_inequality_conjunction_chain_length
Type: UInt64
Default value: 3
最適化のための表現expr <> x1 AND ... expr <> xN
の最小長。
optimize_move_to_prewhere
Type: Bool
Default value: 1
SELECTクエリにおける自動PREWHERE最適化を有効または無効にします。
MergeTreeテーブルにのみ機能します。
Possible values:
- 0 — 自動
PREWHERE
最適化は無効。 - 1 — 自動
PREWHERE
最適化は有効。
optimize_move_to_prewhere_if_final
Type: Bool
Default value: 0
FINAL修飾子を持つSELECTクエリにおける自動PREWHERE最適化を有効または無効にします。
MergeTreeテーブルにのみ機能します。
Possible values:
- 0 —
FINAL
修飾子を持つSELECT
クエリの自動PREWHERE
最適化は無効。 - 1 —
FINAL
修飾子を持つSELECT
クエリの自動PREWHERE
最適化は有効。
See Also
optimize_multiif_to_if
Type: Bool
Default value: 1
'multiIf'を一つの条件だけを持つ'if'に置き換えます。
optimize_normalize_count_variants
Type: Bool
Default value: 1
semantically count()と等しい集約関数をcount()に書き換えます。
optimize_on_insert
Type: Bool
Default value: 1
挿入前にデータ変換を有効または無効にし、このブロックでマージが行われたかのように扱います(テーブルエンジンに従います)。
Possible values:
- 0 — 無効。
- 1 — 有効。
Example
有効と無効の違い:
クエリ:
結果:
この設定はマテリアライズドビューの動作にも影響します。
optimize_or_like_chain
Type: Bool
Default value: 0
複数のOR LIKEをmultiMatchAnyに最適化します。この最適化は、インデックス分析を一部のケースで無効にするため、デフォルトでは有効にすべきではありません。
optimize_read_in_order
Type: Bool
Default value: 1
MergeTreeテーブルからデータを読むためのSELECTクエリのORDER BY最適化を有効にします。
Possible values:
- 0 —
ORDER BY
最適化は無効。 - 1 —
ORDER BY
最適化は有効。
See Also
optimize_read_in_window_order
Type: Bool
Default value: 1
MergeTreeテーブルでの対応する順序でデータを読むためのウィンドウ句内におけるORDER BY最適化を有効にします。
optimize_redundant_functions_in_order_by
Type: Bool
Default value: 1
ORDER BY内で、その引数もORDER BYにある場合、関数を削除します。
optimize_respect_aliases
Type: Bool
Default value: 1
これがtrueに設定されている場合、WHERE/GROUP BY/ORDER BYでエイリアスを尊重します。これにより、パーティションプルーニング/二次インデックス/optimize_aggregation_in_order/optimize_read_in_order/optimize_trivial_countが助けられます。
optimize_rewrite_aggregate_function_with_if
Type: Bool
Default value: 1
論理的に等しい場合、if式を引数に持つ集約関数を再書き換えます。
たとえば、avg(if(cond, col, null))
はavgOrNullIf(cond, col)
に書き換えることができます。これにより、パフォーマンスが向上する可能性があります。
アナライザーがサポートされている場合にのみ有効です(enable_analyzer = 1
)。
optimize_rewrite_array_exists_to_has
Type: Bool
Default value: 0
論理的に等しい場合、arrayExists()関数をhas()に書き換えます。たとえば、arrayExists(x -> x = 1, arr)はhas(arr, 1)に置き換えられる場合があります。
optimize_rewrite_sum_if_to_count_if
Type: Bool
Default value: 1
論理的に等しい場合、sumIf()およびsum(if())関数をcountIf()関数に書き換えます。
optimize_skip_merged_partitions
Type: Bool
Default value: 0
単一のレベルが> 0
で、期限切れTTLがない場合に、OPTIMIZE TABLE ... FINALクエリの最適化を有効または無効にします。
OPTIMIZE TABLE ... FINAL SETTINGS optimize_skip_merged_partitions=1
デフォルトでは、OPTIMIZE TABLE ... FINAL
クエリは単一のパーツがあっても再書き換えされます。
Possible values:
- 1 - 最適化を有効にします。
- 0 - 最適化を無効にします。
optimize_skip_unused_shards
Type: Bool
Default value: 0
WHERE/PREWHERE
にshardingキー条件があるSELECTクエリに対して、未使用のシャードのスキップの有効または無効を設定します(データがshardingキーによって分散されていることを前提としています、そうでなければクエリの結果は不正確になります)。
Possible values:
- 0 — 無効。
- 1 — 有効。
optimize_skip_unused_shards_limit
Type: UInt64
Default value: 1000
shardingキー値の数の制限、制限を超えた場合はoptimize_skip_unused_shards
をオフにします。
値が多すぎると、処理にかなりの時間がかかる可能性がある一方で、利益は疑わしいです。大量の値がIN (...)
にある場合、その場合も多くのシャードに送信される可能性が高いです。
optimize_skip_unused_shards_nesting
Type: UInt64
Default value: 0
optimize_skip_unused_shards
を制御します(したがって、まだoptimize_skip_unused_shards
が必要です)。分散クエリのネストレベルに依存する(Distributedテーブルが別のDistributedテーブルを参照する場合)。
Possible values:
- 0 — 無効、
optimize_skip_unused_shards
は常に機能。 - 1 — 最初のレベルでのみ
optimize_skip_unused_shards
を有効にする。 - 2 — 2番目のレベルまで
optimize_skip_unused_shards
を有効にする。
optimize_skip_unused_shards_rewrite_in
Type: Bool
Default value: 1
リモートシャードのクエリでINを再書き換え、シャードに属さない値を除外します(optimize_skip_unused_shards
が必要です)。
Possible values:
- 0 — 無効。
- 1 — 有効。
optimize_sorting_by_input_stream_properties
Type: Bool
Default value: 1
入力ストリームのソートプロパティによるソートを最適化します。
optimize_substitute_columns
Type: Bool
Default value: 0
制約を使用してカラムの置き換えを行います。デフォルトはfalse
です。
Possible values:
- true, false
optimize_syntax_fuse_functions
Type: Bool
Default value: 0
同一の引数を持つ集約関数を融合させることを可能にします。同一の引数を持つ少なくとも2つの集約関数が含まれるクエリを再書き換え、sum、count、またはavgからsumCountに変換されます。
Possible values:
- 0 — 同一の引数を持つ関数は融合されません。
- 1 — 同一の引数を持つ関数は融合されます。
Example
クエリ:
結果:
optimize_throw_if_noop
Type: Bool
Default value: 0
OPTIMIZEクエリがマージを行わなかった場合に例外をスローするか無効にします。
デフォルトでは、OPTIMIZE
は何も行わなくても正常に戻ります。この設定により、これらの状況を識別し、例外メッセージで理由を得ることができます。
Possible values:
- 1 — 例外をスローすることが有効になります。
- 0 — 例外をスローすることが無効になります。
optimize_time_filter_with_preimage
Type: Bool
Default value: 1
関数を変換することなく比較に置き換えることによって、日付および日時の述語を最適化します(例:toYear(col) = 2023 -> col >= '2023-01-01' AND col <= '2023-12-31'
)
optimize_trivial_approximate_count_query
Type: Bool
Default value: 0
そのような推定をサポートするストレージのための簡易なカウント最適化に対して近似値を使用します。例えば、EmbeddedRocksDB。
Possible values:
- 0 — 最適化無効。
- 1 — 最適化有効。
optimize_trivial_count_query
Type: Bool
Default value: 1
メタデータを使用して、SELECT count() FROM table
のトリビアルクエリの最適化を有効または無効にします。行レベルのセキュリティを使用する必要がある場合、この設定を無効にします。
Possible values:
- 0 — 最適化無効。
- 1 — 最適化有効。
See also:
optimize_trivial_insert_select
Type: Bool
Default value: 0
トリビアルな 'INSERT INTO table SELECT ... FROM TABLES' クエリを最適化します。
optimize_uniq_to_count
Type: Bool
Default value: 1
独自のクエリがdistinctまたはgroup by句を持つサブクエリを含む場合、uniqおよびその変種(uniqUpToを除く)を書き換え、countにします。
optimize_use_implicit_projections
Type: Bool
Default value: 1
SELECTクエリを実行するために暗黙の投影を自動的に選択します。
optimize_use_projections
Type: Bool
Default value: 1
SELECTクエリを処理するときのプロジェクション最適化を有効にします。
Possible values:
- 0 — プロジェクション最適化無効。
- 1 — プロジェクション最適化有効。
optimize_using_constraints
Type: Bool
Default value: 0
クエリ最適化のために制約を使用します。デフォルトはfalse
です。
Possible values:
- true, false
os_thread_priority
Type: Int64
Default value: 0
クエリを実行するスレッドの優先度(nice)を設定します。OSスケジューラは次に実行するスレッドを選択する際にこの優先度を考慮します。
この設定を使用するには、CAP_SYS_NICE
の権限を設定する必要があります。clickhouse-server
パッケージはインストール中にこれを設定します。一部の仮想環境では、CAP_SYS_NICE
の権限を設定できません。この場合、clickhouse-server
は起動時にこれについてのメッセージを表示します。
Possible values:
[-20, 19]
の範囲で値を設定できます。
低い値はより高い優先度を意味します。低いnice
優先度値を持つスレッドは、高い値を持つスレッドよりも頻繁に実行されます。高い値は、長時間実行される非対話型クエリに対して望ましく、短い対話型クエリが到着するときにリソースを迅速に放棄することを可能にします。
output_format_compression_level
Type: UInt64
Default value: 3
クエリ出力が圧縮されている場合のデフォルト圧縮レベル。この設定は、SELECT
クエリがINTO OUTFILE
を持つか、テーブル関数file
、url
、hdfs
、s3
、またはazureBlobStorage
に書き込むときに適用されます。
Possible values: 1
から22
まで。
output_format_compression_zstd_window_log
Type: UInt64
Default value: 0
出力圧縮方法がzstd
の場合に使用できます。0より大きい場合、この設定は圧縮ウィンドウサイズ(2
の累乗)を明示的に設定し、zstd圧縮のロングレンジモードを有効にします。これにより、より良い圧縮率を達成できる可能性があります。
Possible values: 非負の数。値が小さすぎるか大きすぎると、zstdlib
は例外をスローします。通常の値は20
(ウィンドウサイズ=1MB
)から30
(ウィンドウサイズ=1GB
)です。
output_format_parallel_formatting
Type: Bool
Default value: 1
データ形式の並列フォーマットを有効または無効にします。TSV、TSKV、CSV、およびJSONEachRow形式でのみサポートされています。
Possible values:
- 1 — 有効。
- 0 — 無効。
page_cache_inject_eviction
Type: Bool
Default value: 0
ユーザースペースページキャッシュは、時折ランダムでいくつかのページを無効にします。テスト用の機能です。
parallel_distributed_insert_select
Type: UInt64
Default value: 0
並列分散 INSERT ... SELECT
クエリを有効にします。
INSERT INTO distributed_table_a SELECT ... FROM distributed_table_b
クエリを実行し、両方のテーブルが同じクラスターを使用し、両方のテーブルが レプリケートされた または非レプリケートである場合、このクエリは各シャードでローカルに処理されます。
Possible values:
- 0 — 無効。
- 1 —
SELECT
は分散エンジンの基盤テーブルの各シャードで実行されます。 - 2 —
SELECT
とINSERT
は分散エンジンの基盤テーブルの各シャードで実行されます。
parallel_replica_offset
Type: UInt64
Default value: 0
これは内部設定であり、直接使用すべきではなく、「並列レプリカ」モードの実装の詳細を示します。この設定は、並列レプリカ間でクエリ処理に参加するレプリカのインデックスへの分散クエリのために、イニシエーターサーバーによって自動的に設定されます。
parallel_replicas_allow_in_with_subquery
Type: Bool
Default value: 1
true の場合、IN のサブクエリは各フォロワーレプリカで実行されます。
parallel_replicas_count
Type: UInt64
Default value: 0
これは内部設定であり、直接使用すべきではなく、「並列レプリカ」モードの実装の詳細を示します。この設定は、並列レプリカでクエリ処理に参加する並列レプリカの数のために、イニシエーターサーバーによって自動的に設定されます。
parallel_replicas_custom_key
Type: String
Default value:
特定のテーブルのレプリカ間で作業を分割するために使用できる任意の整数式。 値は任意の整数式で構いません。
主キーを使用した単純な式が好まれます。
この設定が、複数のレプリカを持つ単一シャードからなるクラスターで使用されると、これらのレプリカは仮想シャードに変換されます。
それ以外の場合、SAMPLE
キーと同様に機能し、各シャードの複数のレプリカを使用します。
parallel_replicas_custom_key_range_lower
Type: UInt64
Default value: 0
フィルタータイプ range
がカスタム範囲 [parallel_replicas_custom_key_range_lower, INT_MAX]
に基づいてレプリカ間で作業を均等に分割することを許可します。
parallel_replicas_custom_key_range_upper と併用すると、範囲 [parallel_replicas_custom_key_range_lower, parallel_replicas_custom_key_range_upper]
でレプリカ間で作業を均等に分割します。
注意: この設定は、クエリ処理中に追加のデータがフィルタリングされることはなく、並列処理のために範囲フィルターが範囲 [0, INT_MAX]
を分割するポイントを変更します。
parallel_replicas_custom_key_range_upper
Type: UInt64
Default value: 0
フィルタータイプ range
がカスタム範囲 [0, parallel_replicas_custom_key_range_upper]
に基づいてレプリカ間で作業を均等に分割することを許可します。0の値は上限を無効にし、カスタムキー式の最大値を設定します。
parallel_replicas_custom_key_range_lower と併用すると、範囲 [parallel_replicas_custom_key_range_lower, parallel_replicas_custom_key_range_upper]
でレプリカ間で作業を均等に分割します。
注意: この設定は、クエリ処理中に追加のデータがフィルタリングされることはなく、並列処理のために範囲フィルターが範囲 [0, INT_MAX]
を分割するポイントを変更します。
parallel_replicas_for_non_replicated_merge_tree
Type: Bool
Default value: 0
true の場合、ClickHouse は非レプリケートMergeTreeテーブルに対しても並列レプリカアルゴリズムを使用します。
parallel_replicas_index_analysis_only_on_coordinator
Type: Bool
Default value: 1
インデックス分析はレプリカコーディネーターでのみ実行され、他のレプリカではスキップされます。これは、parallel_replicas_local_plan
が有効な場合にのみ効果があります。
parallel_replicas_local_plan
Type: Bool
Default value: 1
ローカルレプリカのためのローカルプランを構築します。
parallel_replicas_mark_segment_size
Type: UInt64
Default value: 0
パーツを仮想的にセグメントに分割し、それをレプリカ間で並列読み取りのために分配します。この設定は、これらのセグメントのサイズを制御します。何をしているか確実でない限り変更は推奨されません。値は範囲 [128; 16384] であるべきです。
parallel_replicas_min_number_of_rows_per_replica
Type: UInt64
Default value: 0
クエリで使用されるレプリカの数を制限します。(推定行数 / min_number_of_rows_per_replica)。最大は依然として 'max_parallel_replicas' に制限されます。
parallel_replicas_mode
Type: ParallelReplicasMode
Default value: read_tasks
カスタムキーで並列レプリカに使用するフィルターのタイプ。デフォルト - カスタムキーに対して剰余演算を使用、範囲 - カスタムキーに対して範囲フィルターを使用し、カスタムキーの値タイプのすべての可能な値を使用。
parallel_replicas_only_with_analyzer
Type: Bool
Default value: 1
アナライザーが有効でないと、クエリ実行はローカル実行にフォールバックし、レプリカからの並列読み取りが有効であっても、アナライザーが有効でない限り並列レプリカの使用はサポートされません。
parallel_replicas_prefer_local_join
Type: Bool
Default value: 1
true の場合、JOIN を並列レプリカアルゴリズムで実行でき、右 JOIN 部分のすべてのストレージが *MergeTree の場合、ローカル JOIN が使用されます。グローバル JOIN の代わりに。
parallel_view_processing
Type: Bool
Default value: 0
添付されたビューに対して順次ではなく同時にプッシュすることを有効にします。
parallelize_output_from_storages
Type: Bool
Default value: 1
ストレージからの読み取りステップの出力を並列化します。可能な場合、ストレージから読み込んだ後すぐにクエリ処理の並列化を可能にします。
parsedatetime_parse_without_leading_zeros
Type: Bool
Default value: 1
フォーマッタ '%c', '%l' および '%k' は、'parseDateTime' 関数で月および時間をゼロパディングなしで解析します。
partial_merge_join_left_table_buffer_bytes
Type: UInt64
Default value: 0
0でない場合、部分的マージジョインの左側のテーブルに対して、左側のテーブルのブロックを大きいものにグループ化します。それは、結合スレッドごとに指定されたメモリの最大 2 倍を使用します。
partial_merge_join_rows_in_right_blocks
Type: UInt64
Default value: 65536
部分的マージジョインアルゴリズムにおける右側の結合データブロックのサイズに制限を設けます。これは、JOIN クエリ用です。
ClickHouse サーバー:
- 右側の結合データを指定された行数のブロックに分割します。
- 各ブロックをその最小値および最大値でインデックスします。
- 可能であれば、準備されたブロックをディスクにアンロードします。
Possible values:
- 任意の正の整数。推奨される値の範囲: [1000, 100000]。
partial_result_on_first_cancel
Type: Bool
Default value: 0
クエリがキャンセルされた後に部分的な結果を返すことを許可します。
parts_to_delay_insert
Type: UInt64
Default value: 0
宛先テーブルが単一パーティション内にアクティブなパーツをその数だけ含む場合、テーブルへの挿入を人工的に遅延させます。
parts_to_throw_insert
Type: UInt64
Default value: 0
宛先テーブルの単一パーティション内にこの数よりも多くのアクティブなパーツがある場合、「パーツが多すぎる ...」例外をスローします。
periodic_live_view_refresh
Type: Seconds
Default value: 60
定期的に更新されるライブビューが強制的に更新されるまでの間隔。
poll_interval
Type: UInt64
Default value: 10
指定された秒数の間、サーバーでクエリ待機ループをブロックします。
postgresql_connection_attempt_timeout
Type: UInt64
Default value: 2
PostgreSQL エンドポイントへの接続の単一試行における接続タイムアウト(秒)。
この値は接続URLの connect_timeout
パラメータとして渡されます。
postgresql_connection_pool_auto_close_connection
Type: Bool
Default value: 0
接続をプールに返す前に閉じます。
postgresql_connection_pool_retries
Type: UInt64
Default value: 2
PostgreSQLテーブルエンジンおよびデータベースエンジンの接続プールのプッシュ/ポップ試行回数。
postgresql_connection_pool_size
Type: UInt64
Default value: 16
PostgreSQLテーブルエンジンおよびデータベースエンジンの接続プールのサイズ。
postgresql_connection_pool_wait_timeout
Type: UInt64
Default value: 5000
PostgreSQLテーブルエンジンおよびデータベースエンジンの空のプールにおける接続プールのプッシュ/ポップタイムアウト。デフォルトでは、空のプールでブロックされます。
postgresql_fault_injection_probability
Type: Float
Default value: 0
内部(レプリケーション用)のPostgreSQLクエリが失敗する確率の概算。妥当な値は [0.0f, 1.0f] の範囲です。
prefer_column_name_to_alias
Type: Bool
Default value: 0
クエリ表現や節においてエイリアスの代わりに元のカラム名を使用するかどうかを有効または無効にします。特に、エイリアスがカラム名と同じ場合は重要です。Expression Aliasesを参照してください。この設定を有効にすることで、ClickHouseのエイリアス構文ルールが他のほとんどのデータベースエンジンとより互換性を持つようになります。
Possible values:
- 0 — カラム名はエイリアスに置き換えられます。
- 1 — カラム名はエイリアスに置き換えられません。
Example
有効と無効の違い:
クエリ:
結果:
クエリ:
結果:
prefer_external_sort_block_bytes
Type: UInt64
Default value: 16744704
外部ソートのための最大ブロックバイトを優先し、マージ中のメモリ使用量を削減します。
prefer_global_in_and_join
Type: Bool
Default value: 0
IN
/JOIN
演算子を GLOBAL IN
/GLOBAL JOIN
に置き換えることを有効にします。
Possible values:
- 0 — 無効。
IN
/JOIN
演算子はGLOBAL IN
/GLOBAL JOIN
に置き換えられません。 - 1 — 有効。
IN
/JOIN
演算子はGLOBAL IN
/GLOBAL JOIN
に置き換えられます。
Usage
SET distributed_product_mode=global
は、分散テーブルのクエリの動作を変更できますが、ローカルテーブルや外部リソースからのテーブルには適していません。ここで prefer_global_in_and_join
設定が登場します。
例えば、ローカルテーブルを含むクエリサービスノードがある場合、これらは分散に適していません。分散処理中にデータをフライで散布する必要があります。GLOBAL
キーワードを使用して GLOBAL IN
/GLOBAL JOIN
です。
prefer_global_in_and_join
の別の使用ケースは、外部エンジンによって作成されたテーブルへのアクセスです。この設定は、そのようなテーブルを結合する際の外部ソースへのコールの回数を減らすのに役立ちます:クエリごとに1回の呼び出しのみ。
See also:
- Distributed subqueries で
GLOBAL IN
/GLOBAL JOIN
の使用方法についての詳細を確認できます。
prefer_localhost_replica
Type: Bool
Default value: 1
分散クエリの処理時にローカルホストレプリカの使用を好むかどうかを有効または無効にします。
Possible values:
- 1 — ClickHouse はローカルホストレプリカが存在する場合、常にクエリをそのレプリカに送信します。
- 0 — ClickHouse は load_balancing 設定で指定されたバランス戦略を使用します。
parallel_replicas_custom_key を使用せずに max_parallel_replicas を使用する場合は、この設定を無効にします。 parallel_replicas_custom_key が設定されている場合は、複数のレプリカを含む複数のシャードのクラスターで使用されている場合にのみ、この設定を無効にします。 単一シャードと複数のレプリカのクラスターで使用されている場合、この設定を無効にすると悪影響があります。
prefer_warmed_unmerged_parts_seconds
Type: Int64
Default value: 0
ClickHouse Cloudでのみ影響します。マージされたパーツがこの秒数未満の新しいもので、未プレウォーム(cache_populated_by_fetchを参照)の場合、すべてのソースパーツが利用可能でプレウォームされているとき、SELECTクエリはそれらのパーツから読み取ります。Replicated-/SharedMergeTree のみ。これは、CacheWarmer がパーツを処理したかどうかを確認するだけであり、何か別のものでキャッシュに取得された場合でも、それはまだ冷たく、CacheWarmer がそれに到達しなければなりません。ウォームされた場合、キャッシュから排除されると、まだウォームと見なされます。
preferred_block_size_bytes
Type: UInt64
Default value: 1000000
この設定は、クエリ処理のためのデータブロックサイズを調整し、より粗い 'max_block_size' 設定に対する追加的な微調整を表します。カラムが大きく、'max_block_size' 行がある場合、ブロックサイズは指定されたバイト数よりも大きくなる可能性があり、その場合はより良いCPUキャッシュのローカリティのためにサイズが小さくなります。
preferred_max_column_in_block_size_bytes
Type: UInt64
Default value: 0
読み取り時のブロック内の最大カラムサイズに制限を設けます。キャッシュミスの数を減少させるのに役立ちます。L2キャッシュサイズに近い必要があります。
preferred_optimize_projection_name
Type: String
Default value:
非空の文字列に設定されると、ClickHouseはクエリ内で指定されたプロジェクションを適用しようとします。
Possible values:
- string: 推奨されるプロジェクションの名前
prefetch_buffer_size
Type: UInt64
Default value: 1048576
ファイルシステムから読み取るためのプレフェッチバッファの最大サイズです。
print_pretty_type_names
Type: Bool
Default value: 1
DESCRIBE
クエリや toTypeName()
関数で、深くネストされたタイプ名をインデント付きで美しく印刷できるようにします。
Example:
priority
Type: UInt64
Default value: 0
クエリの優先度。1 - 最高、より高い値 - 低い優先度; 0 - 優先度を使用しません。
push_external_roles_in_interserver_queries
Type: Bool
Default value: 1
クエリを実行する際に、元のユーザー役割を他のノードにプッシュすることを有効にします。
query_cache_compress_entries
Type: Bool
Default value: 1
クエリキャッシュのエントリを圧縮します。クエリキャッシュのメモリ消費を抑え、挿入時や読み取り時の速度を遅くします。
Possible values:
- 0 - 無効
- 1 - 有効
query_cache_max_entries
Type: UInt64
Default value: 0
現在のユーザーがクエリキャッシュに保存できるクエリ結果の最大数。0は無制限を意味します。
Possible values:
- 正の整数 >= 0。
query_cache_max_size_in_bytes
Type: UInt64
Default value: 0
現在のユーザーがクエリキャッシュに割り当てることができる最大のメモリ量(バイト単位)。0は無制限を意味します。
Possible values:
- 正の整数 >= 0。
query_cache_min_query_duration
Type: Milliseconds
Default value: 0
クエリが結果をクエリキャッシュに保存するために実行する必要がある最小の時間(ミリ秒)。
Possible values:
- 正の整数 >= 0。
query_cache_min_query_runs
Type: UInt64
Default value: 0
クエリ結果をクエリキャッシュに保存する前に、SELECT
クエリが実行される必要がある最小回数。
Possible values:
- 正の整数 >= 0。
query_cache_nondeterministic_function_handling
Type: QueryResultCacheNondeterministicFunctionHandling
Default value: throw
クエリキャッシュが rand()
や now()
のような非決定論的関数を持つ SELECT
クエリをどのように扱うかを制御します。
Possible values:
'throw'
- 例外をスローし、クエリ結果をキャッシュしません。'save'
- クエリ結果をキャッシュします。'ignore'
- クエリ結果をキャッシュせず、例外をスローしません。
query_cache_share_between_users
Type: Bool
Default value: 0
有効にした場合、クエリキャッシュにキャッシュされたSELECT
クエリの結果を他のユーザーが読み取ることができます。
セキュリティ上の理由から、この設定を有効にすることは推奨されません。
Possible values:
- 0 - 無効
- 1 - 有効
query_cache_squash_partial_results
Type: Bool
Default value: 1
部分的な結果ブロックを最大ブロックサイズのサイズのブロックへと圧縮します。これにより、クエリキャッシュへの挿入のパフォーマンスが低下しますが、キャッシュエントリの圧縮可能性が向上します(query_cache_compress-entriesを参照)。
Possible values:
- 0 - 無効
- 1 - 有効
query_cache_system_table_handling
Type: QueryResultCacheSystemTableHandling
Default value: throw
クエリキャッシュがシステムテーブル、すなわち system.*
および information_schema.*
データベースのテーブルに対する SELECT
クエリをどのように扱うかを制御します。
Possible values:
'throw'
- 例外をスローし、クエリ結果をキャッシュしません。'save'
- クエリ結果をキャッシュします。'ignore'
- クエリ結果をキャッシュせず、例外をスローしません。
query_cache_tag
Type: String
Default value:
クエリキャッシュエントリのラベルとして機能する文字列。 タグが異なる同じクエリは、クエリキャッシュによって別々のものと見なされます。
Possible values:
- 任意の文字列
query_cache_ttl
Type: Seconds
Default value: 60
この時間(秒)が経過すると、クエリキャッシュ内のエントリは古くなります。
Possible values:
- 正の整数 >= 0。
query_metric_log_interval
Type: Int64
Default value: -1
個別のクエリに対する query_metric_log を収集する間隔(ミリ秒)。
負の値が設定された場合、query_metric_log settingからの collect_interval_milliseconds
の値を取るか、存在しない場合はデフォルトで1000の値になります。
単一のクエリの収集を無効にするには、query_metric_log_interval
を0に設定します。
Default value: -1
query_plan_aggregation_in_order
Type: Bool
Default value: 1
クエリプランレベル最適化での順序ごとの集約を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_convert_outer_join_to_inner_join
Type: Bool
Default value: 1
結合後のフィルタが常にデフォルトの値をフィルタリングする場合、OUTER JOINをINNER JOINに変換することを許可します。
query_plan_enable_multithreading_after_window_functions
Type: Bool
Default value: 1
ウィンドウ関数の評価後にマルチスレッド処理を有効にして並列ストリーム処理を可能にします。
query_plan_enable_optimizations
Type: Bool
Default value: 1
クエリプランレベルでのクエリ最適化を切り替えます。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - クエリプランレベルでのすべての最適化を無効にする
- 1 - クエリプランレベルでの最適化を有効にする(ただし、個々の最適化は各自の設定を介して無効にされることもあります)
query_plan_execute_functions_after_sorting
Type: Bool
Default value: 1
ソートステップの後に演算を実行するクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_filter_push_down
Type: Bool
Default value: 1
クエリプランにおけるフィルターを実行計画内に移動させる最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_join_swap_table
Type: BoolAuto
Default value: auto
結合でビルドテーブル(ハッシュ結合のハッシュテーブルに挿入されるもの)としてどちらの側のテーブルを使用するかを決定します。この設定は、JOIN ON
節を持つ ALL
結合のみでサポートされます。可能な値は次のとおりです。
- 'auto': プランナーがビルドテーブルとして使用するテーブルを決定します。
- 'false': テーブルを入れ替えません(右のテーブルがビルドテーブルです)。
- 'true': テーブルを常に入れ替えます(左のテーブルがビルドテーブルです)。
query_plan_lift_up_array_join
Type: Bool
Default value: 1
ARRAY JOINを実行計画内に移動させるクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_lift_up_union
Type: Bool
Default value: 1
より大きなクエリプランの部分木を結合に移動させ、さらなる最適化を有効にするクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_max_optimizations_to_apply
Type: UInt64
Default value: 10000
クエリプランに適用される最適化の総数を制限します。query_plan_enable_optimizations 設定を見てください。 複雑なクエリに対して長い最適化時間を避けるのに役立ちます。 EXPLAIN PLAN クエリでは、この制限に達した後は最適化を適用するのを止めて、そのままのプランを返します。 通常のクエリ実行では、実際の最適化数がこの設定を超えた場合、例外がスローされます。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
query_plan_merge_expressions
Type: Bool
Default value: 1
連続するフィルターをマージするクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_merge_filters
Type: Bool
Default value: 1
クエリプランの中でフィルターをマージできるようにします。
query_plan_optimize_prewhere
Type: Bool
Default value: 1
サポートされているストレージのプレイングエクスプレッションへのフィルターをプッシュダウンできるようにします。
query_plan_push_down_limit
Type: Bool
Default value: 1
実行計画の中でLIMITを下に移動させるクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_read_in_order
Type: Bool
Default value: 1
読み取り順序の最適化クエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_remove_redundant_distinct
Type: Bool
Default value: 1
冗長な DISTINCT ステップを削除するクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_remove_redundant_sorting
Type: Bool
Default value: 1
冗長なソートステップを削除するクエリプランレベルの最適化を切り替えます(例えば、サブクエリの場合)。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_reuse_storage_ordering_for_window_functions
Type: Bool
Default value: 1
ウィンドウ関数のソートに合わせてストレージソートを使用するクエリプランレベルの最適化を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_split_filter
Type: Bool
Default value: 1
これは、開発者によるデバッグ専用の専門家レベルの設定です。この設定は、将来後方互換性のない方法で変更されるか、削除される可能性があります。
クエリプランレベルの最適化でフィルタを式に分割する機能を切り替えます。 query_plan_enable_optimizations 設定が 1 の場合のみ効果があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_try_use_vector_search
Type: Bool
Default value: 1
クエリプランレベルの最適化を切り替えます。これはベクトル類似インデックスを使用しようとします。 設定query_plan_enable_optimizationsが1の場合にのみ効果があります。
これは専門家向けの設定で、開発者によるデバッグのためにのみ使用する必要があります。この設定は、今後互換性のない方法で変更されるか、削除される可能性があります。
Possible values:
- 0 - 無効
- 1 - 有効
query_plan_use_new_logical_join_step
Type: Bool
Default value: 1
クエリプランに新しい論理結合ステップを使用します。
query_profiler_cpu_time_period_ns
Type: UInt64
Default value: 1000000000
クエリプロファイラのCPUクロックタイマーの期間を設定します。このタイマーはCPU時間のみをカウントします。
Possible values:
-
正の整数ナノ秒。
推奨値:
- 単一クエリの場合は10000000(1秒間に100回)ナノ秒以上。
- クラスター全体のプロファイリングには1000000000(1秒に1回)。
-
タイマーをオフにするには0を使用します。
ClickHouse Cloudでは一時的に無効にされています。
See also:
- システムテーブルtrace_log
query_profiler_real_time_period_ns
Type: UInt64
Default value: 1000000000
クエリプロファイラのリアルクロックタイマーの期間を設定します。リアルクロックタイマーはウォールクロック時間をカウントします。
Possible values:
-
正の整数ナノ秒。
推奨値:
- 単一クエリの場合は10000000(1秒間に100回)ナノ秒以下。
- クラスター全体のプロファイリングには1000000000(1秒に1回)。
-
タイマーをオフにするには0を使用します。
ClickHouse Cloudでは一時的に無効にされています。
See also:
- システムテーブルtrace_log
queue_max_wait_ms
Type: Milliseconds
Default value: 0
同時リクエストの数が最大を超えた場合のリクエストキューでの待機時間。
rabbitmq_max_wait_ms
Type: Milliseconds
Default value: 5000
RabbitMQから読み取る待機時間、再試行前。
read_backoff_max_throughput
Type: UInt64
Default value: 1048576
スローリード時のスレッド数を減少させるための設定。読み取り帯域幅が指定バイト/秒未満の場合にイベントをカウントします。
read_backoff_min_concurrency
Type: UInt64
Default value: 1
スローリード時に最小スレッド数を維持しようとするための設定。
read_backoff_min_events
Type: UInt64
Default value: 2
スローリード時のスレッド数を減少させるための設定。スレッド数が減少するイベントの数。
read_backoff_min_interval_between_events_ms
Type: Milliseconds
Default value: 1000
スローリード時のスレッド数を減少させるための設定。前のイベントから一定時間未満が経過している場合、そのイベントに注意を払わない。
read_backoff_min_latency_ms
Type: Milliseconds
Default value: 1000
スローリード時のスレッド数を減少させるための設定。指定された時間以上かかったリードのみに注意を払う。
read_from_filesystem_cache_if_exists_otherwise_bypass_cache
Type: Bool
Default value: 0
ファイルシステムキャッシュをパッシブモードで使用することを許可します - 既存のキャッシュエントリから利益を得ますが、キャッシュに新しいエントリは追加しません。この設定をヘビーなアドホッククエリ用に設定し、リアルタイムクエリ用に無効にすると、重すぎるクエリによるキャッシュスラッシングを避け、全体のシステム効率を向上させることができます。
read_from_page_cache_if_exists_otherwise_bypass_cache
Type: Bool
Default value: 0
ユーザースペースページキャッシュをパッシブモードで使用します。これはread_from_filesystem_cache_if_exists_otherwise_bypass_cacheに似ています。
read_in_order_two_level_merge_threshold
Type: UInt64
Default value: 100
プライマリキー順にマルチスレッド読み取りを行う際の予備マージステップを実行するために読み取る必要がある最小パーツ数。
read_in_order_use_buffering
Type: Bool
Default value: 1
プライマリキーの順序で読み取る際にマージ前にバッファリングを使用します。クエリ実行の並列性を向上させます。
read_in_order_use_virtual_row
Type: Bool
Default value: 0
プライマリキーまたはその単調関数の順序で読み取る際に、仮想行を使用します。これは、複数のパーツを検索する際に、関連するものにのみ触れるため便利です。
read_overflow_mode
Type: OverflowMode
Default value: throw
制限が超えた場合の対応を指定します。
read_overflow_mode_leaf
Type: OverflowMode
Default value: throw
葉の制限が超えた場合の対応を指定します。
read_priority
Type: Int64
Default value: 0
ローカルファイルシステムまたはリモートファイルシステムからデータを読み取る際の優先度。ローカルファイルシステムに対しては 'pread_threadpool' メソッド、リモートファイルシステムに対しては threadpool
メソッドにのみ対応しています。
read_through_distributed_cache
Type: Bool
Default value: 0
ClickHouse Cloudでのみ効果があります。分散キャッシュからの読み取りを許可します。
readonly
Type: UInt64
Default value: 0
0 - 読み取り専用制限なし。1 - 読み取りリクエストと、明示的に許可された設定の変更のみ。2 - 読み取りリクエストと、設定の変更が許可されていますが、'readonly'設定は除外されます。
receive_data_timeout_ms
Type: Milliseconds
Default value: 2000
最初のデータパケットまたはレプリカからの進捗状況が正のデータパケットを受信するための接続タイムアウト。
receive_timeout
Type: Seconds
Default value: 300
ネットワークからデータを受信する際のタイムアウト(秒)。この間にバイトが受信されなかった場合、例外がスローされます。この設定をクライアントで行うと、ソケットの 'send_timeout' もサーバーの対応する接続端で設定されます。
regexp_max_matches_per_row
Type: UInt64
Default value: 1000
単一の正規表現に対する最大一致数を行ごとに設定します。これは、extractAllGroupsHorizontal関数で貪欲な正規表現を使用する際にメモリ過負荷から保護するために使用します。
Possible values:
- 正の整数。
reject_expensive_hyperscan_regexps
Type: Bool
Default value: 1
ハイパースキャンで評価するのが高コストになる可能性のあるパターンを拒否します(NFA状態の爆発のため)。
remerge_sort_lowered_memory_bytes_ratio
Type: Float
Default value: 2
再マージ後のメモリ使用量がこの比率で減少しなかった場合、再マージは無効になります。
remote_filesystem_read_method
Type: String
Default value: threadpool
リモートファイルシステムからデータを読み取る際のメソッド。readまたはthreadpoolのいずれかです。
remote_filesystem_read_prefetch
Type: Bool
Default value: 1
リモートファイルシステムからデータを読み取る際にプリフェッチを使用する必要があります。
remote_fs_read_backoff_max_tries
Type: UInt64
Default value: 5
バックオフ時の最大リトライ回数。
remote_fs_read_max_backoff_ms
Type: UInt64
Default value: 10000
リモートディスクからデータを読み取る際の最大待機時間。
remote_read_min_bytes_for_seek
Type: UInt64
Default value: 4194304
リモートリード(url, s3)でシークを行うために必要な最小バイト数。リードを無視する代わりにシークを行います。
rename_files_after_processing
Type: String
Default value:
-
Type: String
-
Default value: 空文字列
この設定は、file
テーブル関数で処理されたファイルの名前変更パターンを指定することを許可します。このオプションが設定されると、file
テーブル関数で読み取られたすべてのファイルは、指定されたパターンに従って、プレースホルダーに従って名前が変更されます。ファイル処理が成功した場合のみです。
Placeholders
%a
— 完全な元のファイル名(例:"sample.csv")。%f
— 拡張子なしの元のファイル名(例:"sample")。%e
— ドット付きの元のファイル拡張子(例: ".csv")。%t
— タイムスタンプ(マイクロ秒単位)。%%
— パーセント記号 ("%")。
Example
-
オプション:
--rename_files_after_processing="processed_%f_%t%e"
-
クエリ:
SELECT * FROM file('sample.csv')
sample.csv
の読み取りが成功した場合、ファイルはprocessed_sample_1683473210851438.csv
に名前が変更されます。
replace_running_query
Type: Bool
Default value: 0
HTTPインターフェースを使用する際、query_id
パラメータを渡すことができます。これはクエリ識別子として機能する任意の文字列です。
同じユーザーから同じquery_id
のクエリがすでに存在する場合、動作はreplace_running_query
パラメータに依存します。
0
(デフォルト) – 例外をスローします(同じquery_id
のクエリがすでに実行中の場合はクエリを実行できません)。
1
– 古いクエリをキャンセルし、新しいクエリを実行します。
このパラメータを1に設定することで、セグメンテーション条件の提案を実装します。次の文字を入力した後、古いクエリがまだ完了していない場合はキャンセルされるべきです。
replace_running_query_max_wait_ms
Type: Milliseconds
Default value: 5000
replace_running_query設定がアクティブな場合、同じquery_id
のクエリが終了するまでの待機時間。
Possible values:
- 正の整数。
- 0 — サーバーがすでに同じ
query_id
のクエリを実行している場合、新しいクエリが実行されないように例外をスローします。
replication_wait_for_inactive_replica_timeout
Type: Int64
Default value: 120
ALTER、OPTIMIZE、またはTRUNCATEクエリを実行するまで非アクティブレプリカが待機する秒数を指定します。
Possible values:
- 0 — 待機しない。
- 負の整数 — 無制限で待機する。
- 正の整数 — 待機する秒数。
restore_replace_external_dictionary_source_to_null
Type: Bool
Default value: 0
復元時に外部辞書ソースをNullに置き換えます。テスト目的で便利です。
restore_replace_external_engines_to_null
Type: Bool
Default value: 0
テスト目的で。すべての外部エンジンをNullに置き換えて外部接続を開始しないようにします。
restore_replace_external_table_functions_to_null
Type: Bool
Default value: 0
テスト目的で。すべての外部テーブル関数をNullに置き換えて外部接続を開始しないようにします。
restore_replicated_merge_tree_to_shared_merge_tree
Type: Bool
Default value: 0
RESTORE中にテーブルエンジンをReplicatedMergeTreeからSharedMergeTreeに置き換えます。
result_overflow_mode
Type: OverflowMode
Default value: throw
制限が超えた場合の対応を指定します。
rewrite_count_distinct_if_with_count_distinct_implementation
Type: Bool
Default value: 0
countDistcintIf
をcount_distinct_implementation設定で書き換えることを許可します。
Possible values:
- true — 許可。
- false — 不許可。
s3_allow_multipart_copy
Type: Bool
Default value: 1
S3でのマルチパートコピーを許可します。
s3_allow_parallel_part_upload
Type: Bool
Default value: 1
s3のマルチパートアップロードに対して複数のスレッドを使用します。これにより、わずかにメモリ使用量が増加する可能性があります。
s3_check_objects_after_upload
Type: Bool
Default value: 0
アップロードが成功したことを確認するために、ヘッドリクエストでS3にアップロードされた各オブジェクトをチェックします。
s3_connect_timeout_ms
Type: UInt64
Default value: 1000
S3ディスクからホストへの接続タイムアウト。
s3_create_new_file_on_insert
Type: Bool
Default value: 0
S3エンジンテーブルへの各挿入時に新しいファイルの作成を有効または無効にします。有効にすると、各挿入で新しいS3オブジェクトが作成され、次のようなパターンのキーが使われます:
初期: data.Parquet.gz
-> data.1.Parquet.gz
-> data.2.Parquet.gz
など。
Possible values:
- 0 —
INSERT
クエリはファイルの末尾に新しいデータを追加します。 - 1 —
INSERT
クエリは新しいファイルを作成します。
s3_disable_checksum
Type: Bool
Default value: 0
ファイルをS3に送信する際にチェックサムを計算しません。これにより、ファイルに対する過剰な処理を回避することで書き込み速度が向上します。MergeTreeテーブルのデータはClickHouseによってチェックサムされているため、これはほとんど安全です。HTTPSでアクセスする際には、TLSレイヤーがすでに転送中の整合性を提供します。追加のチェックサムがS3上での防御を強化します。
s3_ignore_file_doesnt_exist
Type: Bool
Default value: 0
特定のキーの読み取り時にファイルが存在しない場合の無視を許可します。
Possible values:
- 1 —
SELECT
は空の結果を返します。 - 0 —
SELECT
は例外をスローします。
s3_list_object_keys_size
Type: UInt64
Default value: 1000
ListObjectリクエストでバッチ的に返される可能性のある最大ファイル数。
s3_max_connections
Type: UInt64
Default value: 1024
サーバーごとの最大接続数。
s3_max_get_burst
Type: UInt64
Default value: 0
リクエストごとの制限に達する前に一度に発行できる最大リクエスト数。デフォルト(0)はs3_max_get_rps
に等しくなります。
s3_max_get_rps
Type: UInt64
Default value: 0
スロットルがかかる前のS3 GETリクエストの毎秒制限。ゼロは無制限を意味します。
s3_max_inflight_parts_for_one_file
Type: UInt64
Default value: 20
マルチパートアップロードリクエストで同時に読み込まれる最大パーツ数。0は無制限を意味します。
s3_max_part_number
Type: UInt64
Default value: 10000
S3アップロードパートの最大部分番号。
s3_max_put_burst
Type: UInt64
Default value: 0
リクエストごとの制限に達する前に一度に発行できる最大リクエスト数。デフォルト(0)はs3_max_put_rps
に等しくなります。
s3_max_put_rps
Type: UInt64
Default value: 0
スロットルがかかる前のS3 PUTリクエストの毎秒制限。ゼロは無制限を意味します。
s3_max_redirects
Type: UInt64
Default value: 10
許可される最大S3リダイレクトホップ数。
s3_max_single_operation_copy_size
Type: UInt64
Default value: 33554432
s3での単一操作コピーの最大サイズ。この設定は、s3_allow_multipart_copyがtrueの場合にのみ使用されます。
s3_max_single_part_upload_size
Type: UInt64
Default value: 33554432
単一パートアップロードを使用する際にS3にアップロードするオブジェクトの最大サイズ。
s3_max_single_read_retries
Type: UInt64
Default value: 4
単一S3読み取り時の最大リトライ回数。
s3_max_unexpected_write_error_retries
Type: UInt64
Default value: 4
S3書き込み時の予期しないエラーが発生した場合の最大リトライ回数。
s3_max_upload_part_size
Type: UInt64
Default value: 5368709120
マルチパートアップロード中にS3にアップロードするパートの最大サイズ。
s3_min_upload_part_size
Type: UInt64
Default value: 16777216
マルチパートアップロード中にS3にアップロードするパートの最小サイズ。
s3_request_timeout_ms
Type: UInt64
Default value: 30000
S3へのデータの送信および受信の際のアイドルタイムアウト。単一のTCP読み取りまたは書き込み呼び出しがこの間にブロックされると失敗します。
s3_retry_attempts
Type: UInt64
Default value: 100
Aws::Client::RetryStrategy用の設定。Aws::Clientは自分自身でリトライを行います。0はリトライしないことを意味します。
s3_skip_empty_files
Type: Bool
Default value: 1
S3エンジンテーブル内の空のファイルをスキップすることを有効または無効にします。
Possible values:
- 0 — 空のファイルがリクエストされた形式と互換性がない場合、
SELECT
は例外をスローします。 - 1 — 空のファイルに対して
SELECT
が空の結果を返します。
s3_strict_upload_part_size
Type: UInt64
Default value: 0
マルチパートアップロード中にS3にアップロードするパートの正確なサイズ(いくつかの実装は可変サイズパーツをサポートしていません)。
s3_throw_on_zero_files_match
Type: Bool
Default value: 0
ListObjectsリクエストがファイルに一致しない場合にエラーをスローします。
s3_truncate_on_insert
Type: Bool
Default value: 0
S3エンジンテーブルへの挿入の前にトランケートを有効または無効にします。無効にすると、S3オブジェクトがすでに存在する場合、挿入を試みると例外がスローされます。
Possible values:
- 0 —
INSERT
クエリはファイルの末尾に新しいデータを追加します。 - 1 —
INSERT
クエリはファイルの既存の内容を新しいデータで置き換えます。
s3_upload_part_size_multiply_factor
Type: UInt64
Default value: 2
s3_multiply_parts_count_thresholdからの単一書き込みからアップロードされた各s3_min_upload_part_sizeをこの係数で乗算します。
s3_upload_part_size_multiply_parts_count_threshold
Type: UInt64
Default value: 500
この数のパーツがS3にアップロードされるたびに、s3_min_upload_part_sizeがs3_upload_part_size_multiply_factorで乗算されます。
s3_use_adaptive_timeouts
Type: Bool
Default value: 1
true
に設定されている場合、すべてのs3リクエストに対して最初の2回の試行を低スピードの送信および受信タイムアウトで行います。
false
に設定されている場合、すべての試行は同一のタイムアウトで行われます。
s3_validate_request_settings
Type: Bool
Default value: 1
s3リクエスト設定の検証を有効にします。
Possible values:
- 1 — 設定を検証します。
- 0 — 設定を検証しません。
s3queue_default_zookeeper_path
Type: String
Default value: /clickhouse/s3queue/
S3Queueエンジンのデフォルトのzookeeperパスプレフィックス。
s3queue_enable_logging_to_s3queue_log
Type: Bool
Default value: 0
system.s3queue_logへの書き込みを有効にします。この値はテーブル設定で上書きできます。
s3queue_migrate_old_metadata_to_buckets
Type: Bool
Default value: 0
S3Queueテーブルの古いメタデータ構造を新しいものに移行します。
schema_inference_cache_require_modification_time_for_url
Type: Bool
Default value: 1
最終更新時刻の検証を伴うURLのためにキャッシュからスキーマを使用します(Last-Modifiedヘッダーを持つURL用)。
schema_inference_use_cache_for_azure
Type: Bool
Default value: 1
Azureテーブル関数を使用する際にスキーマ推論でキャッシュを使用します。
schema_inference_use_cache_for_file
Type: Bool
Default value: 1
ファイルテーブル関数を使用する際にスキーマ推論でキャッシュを使用します。
schema_inference_use_cache_for_hdfs
Type: Bool
Default value: 1
HDFSテーブル関数を使用する際にスキーマ推論でキャッシュを使用します。
schema_inference_use_cache_for_s3
Type: Bool
Default value: 1
S3テーブル関数を使用する際にスキーマ推論でキャッシュを使用します。
schema_inference_use_cache_for_url
Type: Bool
Default value: 1
URLテーブル関数を使用する際にスキーマ推論でキャッシュを使用します。
select_sequential_consistency
Type: UInt64
Default value: 0
この設定はSharedMergeTreeとReplicatedMergeTreeでの動作が異なります。SharedMergeTreeでのselect_sequential_consistency
の動作についての詳細は、SharedMergeTreeの一貫性を参照してください。
SELECT
クエリのための逐次一貫性を有効または無効にします。insert_quorum_parallel
を無効にする必要があります(デフォルトでは有効です)。
Possible values:
- 0 — 無効。
- 1 — 有効。
Usage
逐次一貫性が有効になっている場合、ClickHouseは、クライアントがinsert_quorum
を用いて実行されたすべての以前のINSERT
クエリのデータを含むレプリカに対してのみSELECT
クエリを実行することを許可します。クライアントが部分的なレプリカに言及した場合、ClickHouseは例外を生成します。SELECTクエリは、まだクォーラムのレプリカに書かれていないデータを含みません。
insert_quorum_parallel
が有効(デフォルト)になっている場合、select_sequential_consistency
は機能しません。これは、並列のINSERT
クエリが異なるクォーラムレプリカのセットに書き込むことができるため、単一のレプリカがすべての書き込みを受け取った保証がないからです。
See also:
send_logs_level
Type: LogsLevel
Default value: fatal
指定した最小レベルのサーバーテキストログをクライアントに送信します。 有効な値: 'trace', 'debug', 'information', 'warning', 'error', 'fatal', 'none'
send_logs_source_regexp
Type: String
Default value:
指定した正規表現でログソース名を一致させるサーバーテキストログを送信します。空の場合はすべてのソースとなります。
send_progress_in_http_headers
Type: Bool
Default value: 0
clickhouse-server
の応答でX-ClickHouse-Progress
HTTPレスポンスヘッダーを有効または無効にします。
詳細については、HTTPインターフェースの説明を参照してください。
Possible values:
- 0 — 無効。
- 1 — 有効。
send_timeout
Type: Seconds
Default value: 300
ネットワークへのデータ送信のためのタイムアウト(秒)。クライアントがデータを送信する必要があるが、この間にバイトを送ることができない場合、例外がスローされます。この設定をクライアントで設定すると、接続するサーバーの端でのソケットもreceive_timeout
が設定されます。
session_timezone
Type: Timezone
Default value:
現在のセッションまたはクエリの暗黙的なタイムゾーンを設定します。 暗黙的なタイムゾーンは、明示的に指定されたタイムゾーンがないDateTime/DateTime64型の値に適用されるタイムゾーンです。 この設定は、グローバルに設定された(サーバーレベルの)暗黙的なタイムゾーンに優先します。 ''(空文字列)の値は、現在のセッションまたはクエリの暗黙的なタイムゾーンがサーバーのタイムゾーンと等しいことを意味します。
timeZone()
およびserverTimeZone()
関数を使用して、セッションタイムゾーンおよびサーバータイムゾーンを取得できます。
Possible values:
system.time_zones
からの任意のタイムゾーン名(例:Europe/Berlin
、UTC
、またはZulu
)。
例:
明示的にタイムゾーンが指定されていない内蔵DateTimeにセッションタイムゾーン"America/Denver"を割り当てます:
すべての関数がDateTime/DateTime64を解析するときにsession_timezone
を尊重するわけではありません。これにより、微妙なエラーが発生する可能性があります。
以下の例と説明を参照してください。
これは異なる解析パイプラインによるものです:
- 明示的に指定されたタイムゾーンを持たない
toDateTime()
は最初のSELECT
クエリでsession_timezone
とグローバルタイムゾーンを尊重します。 - 2番目のクエリでは、文字列からDateTimeが解析され、既存のカラム
d
の型とタイムゾーンを継承します。したがって、session_timezone
設定とグローバルタイムゾーンは尊重されません。
See also
set_overflow_mode
Type: OverflowMode
Default value: throw
制限が超えた場合の対応を指定します。
shared_merge_tree_sync_parts_on_partition_operations
Type: Bool
Default value: 1
SMTテーブル内でのMOVE|REPLACE|ATTACHパーティション操作後にデータパーツのセットを自動的に同期します。クラウド専用。
short_circuit_function_evaluation
Type: ShortCircuitFunctionEvaluation
Default value: enable
if、multiIf、and、およびor関数を短絡スキームに従って計算することを許可します。これにより、これらの関数の複雑な式の実行を最適化し、予期しない場合の可能な例外(ゼロ除算など)を防ぐのに役立ちます。
Possible values:
enable
— 短絡関数評価を適用可能な関数に対して有効にします(例外をスローする可能性があるか、計算が重い)。force_enable
— すべての関数に対して短絡関数評価を有効にします。disable
— 短絡関数評価を無効にします。
short_circuit_function_evaluation_for_nulls
Type: Bool
Default value: 1
任意の引数がNULLである場合にNULLを返す関数の評価を最適化します。有効化されると、関数の引数でNULL値の割合がshort_circuit_function_evaluation_for_nulls_thresholdを超えた場合、システムは行ごとに関数を評価するのをスキップします。代わりに、すべての行に対してNULLを即座に返し、無駄な計算を回避します。
short_circuit_function_evaluation_for_nulls_threshold
Type: Double
Default value: 1
NULL引数のある関数をすべての引数で非NULLの行でのみ実行するためのNULL値の割合しきい値。short_circuit_function_evaluation_for_nullsが有効な場合に適用されます。 NULL値を含む行の割合がこのしきい値を超えると、NULL値を含む行は評価されません。
show_table_uuid_in_table_create_query_if_not_nil
Type: Bool
Default value: 0
SHOW TABLE
クエリの表示を設定します。
Possible values:
- 0 — テーブルUUIDなしでクエリが表示されます。
- 1 — テーブルUUID付きでクエリが表示されます。
single_join_prefer_left_table
Type: Bool
Default value: 1
識別子のあいまいさがある場合に、単一のJOINで左側のテーブルを優先します。
skip_redundant_aliases_in_udf
Type: Bool
Default value: 0
ユーザー定義関数内で冗長なエイリアスが使用されない(置き換えられない)ため、使用が簡素化されます。
Possible values:
- 1 — エイリアスがUDF内でスキップ(置き換え)されます。
- 0 — エイリアスはUDF内でスキップ(置き換え)されません。
Example
有効と無効の違い:
クエリ:
結果:
クエリ:
結果:
skip_unavailable_shards
Type: Bool
Default value: 0
利用できないシャードを静かにスキップするかどうかを有効または無効にします。
シャードは、そのすべてのレプリカが利用できない場合、利用できないと見なされます。レプリカが利用できない場合は、以下のいずれかのケースに該当します。
-
ClickHouse がレプリカに接続できない場合、いかなる理由でも無効です。
レプリカに接続する際、ClickHouse は複数回試みます。すべての試みが失敗した場合、そのレプリカは無効と見なされます。
-
レプリカは DNS 経由で解決できません。
レプリカのホスト名が DNS 経由で解決できない場合、以下の状況を示す場合があります。
-
レプリカのホストに DNS レコードがありません。これは、例えば Kubernetes のように、ダウンタイム中にノードが解決できないことがある動的 DNS システムで発生する可能性がありますが、これはエラーではありません。
-
設定エラー。ClickHouse の設定ファイルに誤ったホスト名が含まれています。
-
可能な値:
-
1 — スキップが有効。
シャードが利用できない場合、ClickHouse は部分データに基づいた結果を返し、ノードの可用性に関する問題を報告しません。
-
0 — スキップが無効。
シャードが利用できない場合、ClickHouse は例外を投げます。
sleep_after_receiving_query_ms
Type: Milliseconds
Default value: 0
TCPHandler でクエリを受信した後のスリープ時間
sleep_in_send_data_ms
Type: Milliseconds
Default value: 0
TCPHandler でデータを送信する際のスリープ時間
sleep_in_send_tables_status_ms
Type: Milliseconds
Default value: 0
TCPHandler でテーブルのステータス応答を送信する際のスリープ時間
sort_overflow_mode
Type: OverflowMode
Default value: throw
制限が超えた場合の処理方法。
split_intersecting_parts_ranges_into_layers_final
Type: Bool
Default value: 1
FINAL 最適化の際に交差するパーツ範囲をレイヤーに分割します。
split_parts_ranges_into_intersecting_and_non_intersecting_final
Type: Bool
Default value: 1
FINAL 最適化の際にパーツ範囲を交差するものとしないものに分割します。
splitby_max_substrings_includes_remaining_string
Type: Bool
Default value: 0
引数 max_substrings
> 0 の関数 splitBy*() が結果の配列の最後の要素に残りの文字列を含むかどうかを制御します。
可能な値:
0
- 残りの文字列は結果の配列の最後の要素に含まれません。1
- 残りの文字列は結果の配列の最後の要素に含まれます。これは、Spark のsplit()
関数および Python の 'string.split()' メソッドの動作です。
stop_refreshable_materialized_views_on_startup
Type: Bool
Default value: 0
サーバー起動時に、まるで SYSTEM STOP VIEWS
のように、リフレッシュ可能なマテリアライズドビューのスケジュールを防ぎます。その後、SYSTEM START VIEWS
または SYSTEM START VIEW <name>
で手動で開始できます。新しく作成されたビューにも適用されます。リフレッシュ不可能なマテリアライズドビューには影響しません。
storage_file_read_method
Type: LocalFSReadMethod
Default value: pread
ストレージファイルからデータを読み取る方法。次のいずれかです:read
, pread
, mmap
。mmap メソッドは clickhouse-server には適用されず(clickhouse-local 用に意図されています)。
storage_system_stack_trace_pipe_read_timeout_ms
Type: Milliseconds
Default value: 100
system.stack_trace
テーブルをクエリした際にスレッドから情報を受信するためのパイプからの読み取りにかかる最大時間。この設定はテスト目的で使用されており、ユーザーによって変更されるべきではありません。
stream_flush_interval_ms
Type: Milliseconds
Default value: 7500
ストリーミング対応のテーブルでタイムアウトが発生した場合や、スレッドが max_insert_block_size 行を生成した際に機能します。
デフォルト値は 7500 です。
値が小さいほど、データがテーブルにフラッシュされる頻度が高くなります。値を低くしすぎるとパフォーマンスが悪化します。
stream_like_engine_allow_direct_select
Type: Bool
Default value: 0
Kafka、RabbitMQ、FileLog、Redis Streams、および NATS エンジンに対して直接の SELECT クエリを許可します。マテリアライズドビューが添付されている場合、この設定が有効であっても SELECT クエリは許可されません。
stream_like_engine_insert_queue
Type: String
Default value:
ストリームライクエンジンが複数のキューから読み取る際、書き込み時に挿入するキューを選択する必要があります。Redis Streams および NATS で使用されます。
stream_poll_timeout_ms
Type: Milliseconds
Default value: 500
ストリーミングストレージからのデータポーリングのタイムアウト。
system_events_show_zero_values
Type: Bool
Default value: 0
system.events
からゼロ値のイベントを選択できるようにします。
一部の監視システムでは、メトリクスの値がゼロであっても、各チェックポイントに対してすべてのメトリクス値を渡す必要があります。
可能な値:
- 0 — 無効。
- 1 — 有効。
例
クエリ
結果
クエリ
結果
table_function_remote_max_addresses
Type: UInt64
Default value: 1000
remote 関数からパターンによって生成される最大アドレス数を設定します。
可能な値:
- 正の整数。
tcp_keep_alive_timeout
Type: Seconds
Default value: 290
TCP がキープアライブプローブを送信し始める前に接続がアイドル状態である必要がある時間(秒)。
temporary_data_in_cache_reserve_space_wait_lock_timeout_milliseconds
Type: UInt64
Default value: 600000
ファイルシステムキャッシュ内の一時データの空間予約のためのキャッシュをロックする待機時間。
temporary_files_codec
Type: String
Default value: LZ4
ディスク上のソートおよび結合操作で使用する一時ファイルの圧縮コーデックを設定します。
可能な値:
- LZ4 — LZ4 圧縮が適用されます。
- NONE — 圧縮は適用されません。
throw_if_deduplication_in_dependent_materialized_views_enabled_with_async_insert
Type: Bool
Default value: 1
設定 deduplicate_blocks_in_dependent_materialized_views
が有効で、async_insert
とともに使用される場合、INSERT クエリで例外を投げます。これは、これらの機能が同時に機能できないため、正当性を保証します。
throw_if_no_data_to_insert
Type: Bool
Default value: 1
空の INSERT を許可または禁止します。デフォルトで有効(空の挿入時にエラーを投げます)。これは clickhouse-client
または gRPC インターフェイス を使用する INSERT にのみ適用されます。
throw_on_error_from_cache_on_write_operations
Type: Bool
Default value: 0
書き込み操作(INSERT、マージ)時のキャッシュからのエラーを無視します。
throw_on_max_partitions_per_insert_block
Type: Bool
Default value: 1
max_partitions_per_insert_block とともに使用されます。true(デフォルト)の場合、max_partitions_per_insert_block に達した際に例外が投げられます。false の場合、この制限に達した挿入クエリの詳細がログに記録されます。これは、max_partitions_per_insert_block を変更する際のユーザーへの影響を理解するのに役立つ場合があります。
throw_on_unsupported_query_inside_transaction
Type: Bool
Default value: 1
トランザクション内でサポートされていないクエリが使用された場合に例外を投げます。
timeout_before_checking_execution_speed
Type: Seconds
Default value: 10
指定された時間が経過した後、速度があまりにも低くないかをチェックします。
timeout_overflow_mode
Type: OverflowMode
Default value: throw
制限が超えた場合にどうするか。
timeout_overflow_mode_leaf
Type: OverflowMode
Default value: throw
リーフ制限が超えた場合にどうするか。
totals_auto_threshold
Type: Float
Default value: 0.5
totals_mode = 'auto'
の閾値。
「WITH TOTALS 修飾子」のセクションを参照してください。
totals_mode
Type: TotalsMode
Default value: after_having_exclusive
HAVING が存在する場合、および max_rows_to_group_by と group_by_overflow_mode = 'any' が存在する場合の TOTALS の計算方法。
「WITH TOTALS 修飾子」のセクションを参照してください。
trace_profile_events
Type: Bool
Default value: 0
プロファイルイベントの各更新時にスタックトレースを収集し、プロファイルイベントの名前およびインクリメントの値を trace_log に送信するかどうかを有効または無効にします。
可能な値:
- 1 — プロファイルイベントのトレースが有効。
- 0 — プロファイルイベントのトレースが無効。
transfer_overflow_mode
Type: OverflowMode
Default value: throw
制限が超えた場合にどうするか。
transform_null_in
Type: Bool
Default value: 0
デフォルトでは、NULL
値は比較できません。なぜなら、NULL
は定義されていない値を意味するからです。そのため、比較 expr = NULL
は常に false
を返す必要があります。この設定を有効にすると、NULL = NULL
が IN
演算子で true
を返します。
可能な値:
- 0 —
IN
演算子でのNULL
値の比較はfalse
を返します。 - 1 —
IN
演算子でのNULL
値の比較はtrue
を返します。
例
null_in
テーブルを考えてみましょう:
クエリ:
結果:
クエリ:
結果:
関連情報
traverse_shadow_remote_data_paths
Type: Bool
Default value: 0
クエリ system.remote_data_paths に対して、実際のテーブルデータに加えて凍結されたデータ(シャドウディレクトリ)をトラバースします。
union_default_mode
Type: SetOperationMode
Default value:
SELECT
クエリ結果を結合するモードを設定します。この設定は、UNION ALL
または UNION DISTINCT
を明示的に指定せずに UNION と共有されているときにのみ使用されます。
可能な値:
'DISTINCT'
— ClickHouse は重複行を削除して、クエリの結合結果として行を出力します。'ALL'
— ClickHouse は重複行を含めて、クエリの結合結果としてすべての行を出力します。''
— ClickHouse は、UNION
と共に使用されると例外を生成します。
UNION における例を参照してください。
unknown_packet_in_send_data
Type: UInt64
Default value: 0
データ N 番目のデータパケットの代わりに不明なパケットを送信します。
use_async_executor_for_materialized_views
Type: Bool
Default value: 0
マテリアライズドビュークエリの非同期およびおそらくマルチスレッド実行を使用します。これにより、INSERT 中のビュー処理の速度が向上しますが、メモリを多く消費する可能性もあります。
use_cache_for_count_from_files
Type: Bool
Default value: 1
テーブル関数 file
/s3
/url
/hdfs
/azureBlobStorage
からのカウント時に行数をキャッシュすることを有効にします。
デフォルトで有効です。
use_client_time_zone
Type: Bool
Default value: 0
DateTime 文字列値の解釈にクライアントタイムゾーンを使用し、サーバーのタイムゾーンを採用しません。
use_compact_format_in_distributed_parts_names
Type: Bool
Default value: 1
Distributed
エンジンを持つテーブルに対するバックグラウンド (distributed_foreground_insert
) INSERT のためのブロックを格納するためにコンパクトフォーマットを使用します。
可能な値:
- 0 —
user[:password]@host:port#default_database
ディレクトリ形式を使用します。 - 1 —
[shard{shard_index}[_replica{replica_index}]]
ディレクトリ形式を使用します。
use_compact_format_in_distributed_parts_names=0
の場合、クラスター定義の変更はバックグラウンド INSERT に対して適用されません。use_compact_format_in_distributed_parts_names=1
の場合、クラスター定義内のノードの順序を変更すると、shard_index
/replica_index
が変更されるため注意が必要です。
use_concurrency_control
Type: Bool
Default value: 1
サーバーの並行制御を尊重します(concurrent_threads_soft_limit_num
と concurrent_threads_soft_limit_ratio_to_cores
のグローバルサーバー設定を参照)。無効にすると、サーバーが過負荷の状態であってもより多くのスレッドを使用することが可能になります(通常の使用には推奨されず、主にテスト用です)。
use_hedged_requests
Type: Bool
Default value: 1
リモートクエリのためのヘッジリクエストロジックを有効にします。これにより、クエリのために異なるレプリカとの多くの接続を確立できます。既存の接続が確立されなかった場合や、データが受信されなかった場合に新しい接続が有効になります。クエリは、最初の空でない進捗パケット(またはデータパケット、allow_changing_replica_until_first_data_packet
が有効な場合)を送信する接続を使用します。他の接続はキャンセルされます。max_parallel_replicas > 1
のクエリがサポートされています。
デフォルトで有効です。
Cloud ではデフォルトで無効です。
use_hive_partitioning
Type: Bool
Default value: 1
有効な場合、ClickHouse はファイルライクテーブルエンジン File/S3/URL/HDFS/AzureBlobStorage のパス内の Hive スタイルのパーティショニングを検出し、クエリ内で仮想カラムとしてパーティションカラムを使用できるようにします。これらの仮想カラムは、パーティションされたパスと同じ名前で始まりますが、_
から始まります。
use_iceberg_partition_pruning
Type: Bool
Default value: 0
Iceberg テーブルのための Iceberg パーティショニングプルーニングを使用します。
use_index_for_in_with_subqueries
Type: Bool
Default value: 1
IN 演算子の右側にサブクエリまたはテーブル式がある場合、インデックスを使用しようとします。
use_index_for_in_with_subqueries_max_values
Type: UInt64
Default value: 0
フィルタリングにテーブルインデックスを使用するために、IN 演算子の右側のセットの最大サイズ。大規模なクエリの準備のために追加のデータ構造を準備することで性能の低下とメモリ使用量の増加を回避できるようになります。ゼロは制限がないことを意味します。
use_json_alias_for_old_object_type
Type: Bool
Default value: 0
有効な場合、JSON
データ型エイリアスは新しい JSON 型の代わりに古い Object('json') 型を作成するために使用されます。
use_local_cache_for_remote_storage
Type: Bool
Default value: 1
リモートストレージ(HDFS または S3 のような)用のローカルキャッシュを使用します。これはリモートテーブルエンジンのみに使用されます。
use_page_cache_for_disks_without_file_cache
Type: Bool
Default value: 0
ファイルシステムキャッシュを有効にしていないリモートディスク用にユーザースペースページキャッシュを使用します。
use_page_cache_with_distributed_cache
Type: Bool
Default value: 0
分散キャッシュが使用されている場合にユーザースペースページキャッシュを使用します。
use_query_cache
Type: Bool
Default value: 0
これがオンになっている場合、SELECT
クエリは クエリキャッシュ を利用できる場合があります。より詳細にキャッシュの使用が制御されるパラメータ enable_reads_from_query_cache と enable_writes_to_query_cache を参照してください。
可能な値:
- 0 - 無効
- 1 - 有効
use_query_condition_cache
Type: Bool
Default value: 0
クエリ条件キャッシュを有効にします。
可能な値:
- 0 - 無効
- 1 - 有効
use_skip_indexes
Type: Bool
Default value: 1
クエリ実行中にデータスキッピングインデックスを使用します。
可能な値:
- 0 — 無効。
- 1 — 有効。
use_skip_indexes_if_final
Type: Bool
Default value: 0
FINAL 修飾子を持つクエリを実行する際にスキッピングインデックスが使用されるかどうかを制御します。
デフォルトでは、この設定は無効です。これは、スキップインデックスが最新のデータを含む行(グラニュール)を除外する可能性があり、誤った結果を引き起こす可能性があるためです。これを有効にすると、FINAL 修飾子があってもスキッピングインデックスが適用されるため、パフォーマンスが向上する可能性がありますが、最近の更新を見逃すリスクがあります。
可能な値:
- 0 — 無効。
- 1 — 有効。
use_structure_from_insertion_table_in_table_functions
Type: UInt64
Default value: 2
データからのスキーマ推論の代わりに挿入テーブルからの構造を使用します。可能な値: 0 - 無効、1 - 有効、2 - 自動
use_uncompressed_cache
Type: Bool
Default value: 0
非圧縮のブロックのキャッシュを使用するかどうか。0 または 1 を受け入れます。デフォルトでは 0(無効)です。 非圧縮キャッシュ(MergeTree ファミリのテーブルのみ)は、大量の短いクエリを処理する際にレイテンシを大幅に減少させ、スループットを向上させる可能性があります。頻繁に短いリクエストを送信するユーザーにはこの設定を有効にすることをお勧めします。また、非圧縮キャッシュブロックのサイズを設定する uncompressed_cache_size 構成パラメーターにも注意してください(設定ファイルにのみ設定)。デフォルトでは 8 GiB です。非圧縮キャッシュは必要に応じて充填され、最も使用されていないデータは自動的に削除されます。
少しでも大きなデータ量(100 万行以上)を読み取るクエリの場合、非圧縮キャッシュは自動的に無効になり、非常に小さなクエリのためのスペースが確保されます。これは、常に 'use_uncompressed_cache' 設定を 1 に設定できることを意味します。
use_variant_as_common_type
Type: Bool
Default value: 0
if
(../../sql-reference/functions/conditional-functions.md/#if) / multiIf
(../../sql-reference/functions/conditional-functions.md/#multiif) / array
(../../sql-reference/functions/array-functions.md) / map
(../../sql-reference/functions/tuple-map-functions.md) 関数の引数タイプに共通のタイプがない場合に、Variant
タイプを結果タイプとして使用できます。
例:
use_with_fill_by_sorting_prefix
Type: Bool
Default value: 1
WITH FILL のカラムに preceding するカラムは、ORDER BY 句のソートプレフィックスを形成します。ソートプレフィックスの異なる値の行は独立してフィルされます。
validate_enum_literals_in_operators
Type: Bool
Default value: 0
有効な場合、IN
、NOT IN
、==
、!=
のような演算子の enum リテラルを enum タイプに対して検証し、リテラルが無効な enum 値である場合は例外を投げます。
validate_mutation_query
Type: Bool
Default value: 1
ミューテーションクエリを受け入れる前に検証します。ミューテーションはバックグラウンドで実行されており、無効なクエリが実行されるとミューテーションがスタックし、手動による介入が必要になります。
後方互換性のないバグに遭遇した場合のみ、この設定を変更してください。
validate_polygons
Type: Bool
Default value: 1
ポリゴンが自己交差または自己接触している場合に pointInPolygon 関数内で例外を投げるかどうかを有効または無効にします。
可能な値:
- 0 — 例外を投げることが無効になります。
pointInPolygon
は無効なポリゴンを受け入れ、その結果が不正確である可能性があります。 - 1 — 例外を投げることが有効になります。
wait_changes_become_visible_after_commit_mode
Type: TransactionsWaitCSNMode
Default value: wait_unknown
コミットされた変更が最新のスナップショットに実際に見えるようになるまで待ちます。
wait_for_async_insert
Type: Bool
Default value: 1
true の場合、非同期挿入の処理を待ちます。
wait_for_async_insert_timeout
Type: Seconds
Default value: 120
非同期挿入の処理を待つためのタイムアウト。
wait_for_window_view_fire_signal_timeout
Type: Seconds
Default value: 10
イベントタイム処理におけるウィンドービューの発火シグナルを待つためのタイムアウト。
window_view_clean_interval
Type: Seconds
Default value: 60
古いデータを解放するためのウィンドービューのクリン間隔(秒)。
window_view_heartbeat_interval
Type: Seconds
Default value: 15
ウォッチクエリが生きていることを示すためのハートビート間隔(秒)。
workload
Type: String
Default value: default
リソースにアクセスするために使用するワークロードの名前。
write_through_distributed_cache
Type: Bool
Default value: 0
ClickHouse Cloud でのみ効果があります。分散キャッシュへの書き込みを許可します(S3 への書き込みも分散キャッシュによって行われます)。
zstd_window_log_max
Type: Int64
Default value: 0
ZSTD の最大ウィンドウログを選択できます(MergeTree ファミリには使用されません)。