这些设置可在 system.settings 中找到,并由 源代码 自动生成。
parallel_distributed_insert_select
类型
UInt64
默认值
2
版本历史
| 版本 | 默认值 | 注释 |
|---|---|---|
| 25.7 | 2 | 默认启用并行分布式 `INSERT ... SELECT` |
启用并行分布式 INSERT ... SELECT 查询。
如果执行 INSERT INTO distributed_table_a SELECT ... FROM distributed_table_b 查询,并且两张表使用同一个集群,且两张表要么都是 复制表,要么都是非复制表,那么该查询会在每个分片上本地处理。
可选值:
0— 禁用。1—SELECT将在每个分片上针对分布式引擎的底层表执行。2—SELECT和INSERT都将在每个分片上针对分布式引擎的底层表执行。
从 v25.4 起,源表为 ReplicatedMergeTree 或 SharedMergeTree 的 INSERT ... SELECT 也可以在各副本间并行执行。要启用此功能:
parallel_distributed_insert_select = 2enable_parallel_replicas = 1
parallel_hash_join_threshold
类型
UInt64
默认值
100000
版本历史
| 版本 | 默认值 | 注释 |
|---|---|---|
| 25.5 | 100000 | 新设置 |
| 25.4 | 0 | 新设置 |
| 25.3 | 0 | 新设置 |
应用基于哈希的 JOIN 算法时,此阈值用于帮助决定使用 hash 还是 parallel_hash (仅在可以估算右表大小时适用) 。
如果已知右表大小低于该阈值,则使用前者。
parallel_non_joined_rows_processing
类型
Bool
默认值
1
版本历史
| 版本 | 默认值 | 注释 |
|---|---|---|
| 26.2 | 1 | 新增设置:启用在 RIGHT/FULL `parallel_hash` JOIN 中并行处理右表未匹配的行。 |
允许在 RIGHT 和 FULL JOIN 期间使用多个线程并行处理右表中未匹配的行。
使用 parallel_hash join 算法处理大表时,这可以加快未匹配阶段的处理速度。
禁用后,未匹配的行将由单个线程处理。
parallel_replica_offset
类型
UInt64
默认值
0
这是一个内部设置,不应直接使用,表示“并行副本”模式的实现细节。对于分布式查询,发起服务器会自动将此设置设为参与并行副本查询处理的副本索引。
parallel_view_processing
类型
Bool
默认值
0
启用后,将并发而非按顺序向已附加的视图推送。