parallel_distributed_insert_select
INSERT ... SELECT 查询。
如果执行 INSERT INTO distributed_table_a SELECT ... FROM distributed_table_b 查询,并且两张表使用同一个集群,且两张表要么都是 复制表,要么都是非复制表,那么该查询会在每个分片上本地处理。
可选值:
0— 禁用。1—SELECT将在每个分片上针对分布式引擎的底层表执行。2—SELECT和INSERT都将在每个分片上针对分布式引擎的底层表执行。
ReplicatedMergeTree 或 SharedMergeTree 的 INSERT ... SELECT 也可以在各副本间并行执行。要启用此功能:
parallel_distributed_insert_select = 2enable_parallel_replicas = 1
parallel_hash_join_threshold
hash 还是 parallel_hash (仅在可以估算右表大小时适用) 。
如果已知右表大小低于该阈值,则使用前者。
parallel_non_joined_rows_processing
parallel_hash join 算法处理大表时,这可以加快未匹配阶段的处理速度。
禁用后,未匹配的行将由单个线程处理。