批量插入
上述机制展示了无论插入大小如何,始终存在的恒定开销,这使得批量大小成为提高摄取吞吐量的最重要优化因素。批量插入减少了总插入时间的开销比例,并提高了处理效率。
我们建议以至少 1,000 行为一个批次插入数据,理想情况下在 10,000 到 100,000 行之间。更少的、更大的插入减少了写入的分区片段数量,最小化了合并负载,降低了整体系统资源使用。
要使同步插入策略有效,客户端必须进行批量处理。
如果您无法在客户端进行数据批量处理,ClickHouse 支持将批量处理转移到服务器的异步插入(见)。
提示
无论插入的大小如何,我们建议将插入查询的数量保持在每秒一个插入查询左右。这一建议的原因在于,创建的分区片段在后台合并为更大的分区片段(以优化您的数据以供读取查询),而每秒发送过多的插入查询可能导致后台合并无法跟上新分区片段的数量。但是,当您使用异步插入时,可以使用更高的每秒插入查询速率(见异步插入)。