选择使用低基数列作为分区键

本文介绍为什么建议在云数据库ClickHouse企业版中的表插入数据时选择一个低基数作为分区键。

在云数据库ClickHouse企业版中,当您向没有使用分区键的表发送一个插入语句(插入许多行)时,插入该表所有的行数据将会在存储中写入一个新的Part(即数据片段)。image.png

然而,当您向云数据库ClickHouse企业版中有分区键的表发送一个插入语句时,云数据库ClickHouse会执行以下操作:

  1. 检查插入表中包含的行的分区键值。

  2. 在存储中为每个不同的分区键值创建新的Part(即数据片段)。

  3. 将行按照分区键值放入相应的分区中。

image.png

因此,为了最小化向云数据库ClickHouse企业版的对象存储发送写入请求数量,请使用低基数的分区键或避免在表中使用任何分区键。