Skip to main content
这些设置可在 system.settings 中查看,并由 源代码 自动生成。

insert_quorum

此设置不适用于 SharedMergeTree,更多信息请参见 SharedMergeTree 一致性
启用仲裁写入。
  • 如果 insert_quorum < 2,则仲裁写入被禁用。
  • 如果 insert_quorum >= 2,则启用仲裁写入。
  • 如果 insert_quorum = 'auto',则使用多数值 (number_of_replicas / 2 + 1) 作为仲裁数量。
仲裁写入 仅当 ClickHouse 在 insert_quorum_timeout 期间成功将数据写入 insert_quorum 个副本时,INSERT 才会成功。如果由于任何原因,成功写入的副本数未达到 insert_quorum,则此次写入会被视为失败,ClickHouse 会从所有已写入数据的副本中删除该插入块。 insert_quorum_parallel 被禁用时,仲裁中的所有副本都保持一致,也就是说,它们包含此前所有 INSERT 查询的数据 (INSERT 序列是线性化的) 。读取通过 insert_quorum 写入的数据时,如果 insert_quorum_parallel 被禁用,可以通过 select_sequential_consistencySELECT 查询启用顺序一致性。 ClickHouse 会生成异常:
  • 如果查询时可用副本的数量少于 insert_quorum
  • insert_quorum_parallel 被禁用,并且在前一个块尚未写入 insert_quorum 个副本之前又尝试写入数据时。这种情况可能发生在前一个带有 insert_quorumINSERT 尚未完成时,用户又尝试对同一个表执行另一条 INSERT 查询。
另请参见:

insert_quorum_parallel

此设置不适用于 SharedMergeTree,更多信息请参见 SharedMergeTree 一致性
启用或禁用仲裁 INSERT 查询的并行执行。如果启用,则在之前的查询尚未完成时,仍可发送额外的 INSERT 查询。如果禁用,则会拒绝对同一表的额外写入。 可能的值:
  • 0 — 禁用。
  • 1 — 启用。
另请参见:

insert_quorum_timeout

以毫秒为单位的仲裁写入超时时间。如果超时时间已到且仍未完成写入,ClickHouse 将抛出异常,客户端必须重试该查询,将同一个块写入同一副本或其他任意副本。 另请参见:
最后修改于 2026年7月23日