这些设置可在 system.merge_tree_settings 中查看,且由 ClickHouse 源码自动生成。
exclude_deleted_rows_for_part_size_in_merge
类型
Bool
默认值
0
如果启用,则在选择要合并的数据分区片段时,将使用数据分区片段的预计实际大小 (即排除通过 DELETE FROM 删除的那些行) 。请注意,此行为仅对在启用此设置后执行 DELETE FROM 所影响的数据分区片段生效。
可能的值:
truefalse
另请参阅
exclude_materialize_skip_indexes_on_merge
版本历史
| 版本 | 默认值 | 注释 |
|---|---|---|
| 25.10 | 新设置。 |
将给定的逗号分隔跳过索引列表排除,不在 合并 期间构建和存储。如果 materialize_skip_indexes_on_merge 为 false,则此设置不生效。
被排除的跳过索引仍会通过显式 MATERIALIZE INDEX 查询,或根据 materialize_skip_indexes_on_insert session 设置在 INSERT 期间构建和存储。
示例:
CREATE TABLE tab
(
a UInt64,
b UInt64,
INDEX idx_a a TYPE minmax,
INDEX idx_b b TYPE set(3)
)
ENGINE = MergeTree ORDER BY tuple() SETTINGS exclude_materialize_skip_indexes_on_merge = 'idx_a';
INSERT INTO tab SELECT number, number / 50 FROM numbers(100); -- setting has no effect on INSERTs
-- idx_a will be excluded from update during background or explicit merge via OPTIMIZE TABLE FINAL
-- can exclude multiple indexes by providing a list
ALTER TABLE tab MODIFY SETTING exclude_materialize_skip_indexes_on_merge = 'idx_a, idx_b';
-- default setting, no indexes excluded from being updated during merge
ALTER TABLE tab MODIFY SETTING exclude_materialize_skip_indexes_on_merge = '';