enable_adaptive_codec_selection
启用后,对于使用默认编解码器的列 (即未指定CODEC 子句或指定 CODEC(Default)) ,合并和变更会为每个块选择编解码器。
候选编解码器包括表的默认编解码器 (请参阅 default_compression_codec 设置) 、NONE 以及适合该列类型的专用编解码器;每个专用编解码器既会单独作为候选项,当默认编解码器为 LZ4 或 ZSTD 等通用压缩算法时,也会在其后串联默认编解码器作为候选项。
输出最小的候选项将被选中。因此,压缩效果不会比默认编解码器更差,无法压缩的块会以原始形式存储。
如果某列的默认编解码器包含加密 (例如 AES_128_GCM_SIV) ,则不会对其进行自适应选择,因此始终会应用加密。
每个块所使用的编解码器可通过 mergeTreeCodecBlockCounts 表函数查看。
enable_index_granularity_compression
如果可以,则压缩内存中的索引粒度值enable_max_bytes_limit_for_min_age_to_force_merge
设置min_age_to_force_merge_seconds 和
min_age_to_force_merge_on_partition_only 是否应遵循
max_bytes_to_merge_at_max_space_in_pool 设置。
可选值:
truefalse
enable_mixed_granularity_parts
启用或禁用切换为使用index_granularity_bytes 设置来控制粒度大小。在 19.11 版本之前,只有
index_granularity 设置可用于限制粒度大小。index_granularity_bytes
设置可在从包含大行 (数十到数百 MB) 的表中读取数据时提升 ClickHouse 的性能。
如果你的表中存在大行,可以为这些表启用此设置,
以提高 SELECT 查询的效率。
enable_replacing_merge_with_cleanup_for_min_age_to_force_merge
在将分区合并为单个 part 时,是否对 ReplacingMergeTree 使用 CLEANUP 合并。需要启用allow_experimental_replacing_merge_with_cleanup、min_age_to_force_merge_seconds 和 min_age_to_force_merge_on_partition_only。
可选值:
truefalse
enable_row_mask_update_coalescing
在对采用 Full 存储格式的 Wide 分片执行变更时,将相邻的单个UPDATE _row_exists = 0 命令合并执行。已持久化的变更命令及其
版本保持不变。
设置为 false 时,每个命令将单独执行。
enable_the_endpoint_id_with_zookeeper_name_prefix
为 ReplicatedMergeTree 表启用带有 ZooKeeper 名称前缀的 Endpoint ID。enable_vertical_merge_algorithm
允许符合条件的后台合并使用纵向合并算法。纵向合并逐列处理数据,以降低宽表的峰值内存占用,但可能降低合并速度。将此设置设为0 会强制使用横向合并;非零值仅表示允许使用纵向合并,实际是否采用该算法仍取决于分片格式、表引擎、TTL 操作以及 vertical_merge_algorithm_min_* 阈值。