distributed_aggregation_memory_efficient
distributed_connections_pool_size
distributed_foreground_insert
insert_distributed_sync
启用或禁用向 Distributed 表同步插入数据。
默认情况下,向 Distributed 表插入数据时,ClickHouse server 会以后台模式将数据发送到集群节点。当 distributed_foreground_insert=1 时,数据会同步处理,并且只有在所有数据都保存到所有分片上之后,INSERT 操作才会成功 (如果 internal_replication 为 true,则每个分片上至少有一个副本) 。
可能的值:
0— 数据以后台模式插入。1— 数据以同步模式插入。
1。
另请参见
distributed_group_by_no_merge
0— 禁用 (最终查询处理在发起节点上完成) 。1- 在分布式查询处理过程中,不合并来自不同服务器的聚合状态 (查询在分片上完全处理,发起节点仅转发数据) ;当可以确定不同分片上的键各不相同时,可使用此设置。2- 与1相同,但会在发起节点上应用ORDER BY和LIMIT(而在distributed_group_by_no_merge=1的情况下,当查询完全在远程节点上处理时,这是不可能的) (可用于带有ORDER BY和/或LIMIT的查询) 。
distributed_insert_skip_read_only_replicas
- 0 — INSERT 行为保持不变;如果请求发送到只读副本,将会失败
- 1 — 发起节点会在将数据发送到分片之前跳过只读副本。
distributed_product_mode
- 仅适用于 IN 和 JOIN 子查询。
- 仅当 FROM 子句使用了包含多个分片的分布式表时。
- 仅当子查询涉及包含多个分片的分布式表时。
- 不适用于表值函数 remote。
deny— 默认值。禁止使用这类子查询 (返回 “Double-distributed in/JOIN subqueries is denied” 异常) 。local— 将子查询中的数据库和表替换为目标端服务器 (分片) 的本地数据库和表,保留普通的IN/JOIN.global— 将IN/JOIN查询替换为GLOBAL IN/GLOBAL JOIN.allow— 允许使用这类子查询。
distributed_push_down_limit
- 通过网络传输多余的行;
- 在发起节点上处理超出 LIMIT 的行。
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 — 启用。