UUID 或 Integer 是作为分区键的好选择吗?

Ale*_*Tbk 5 data-modeling cql cassandra

两个简单的问题:

  • UUID 作为分区键是一个不错的选择吗?这会在集群中的所有节点之间平均分配数据吗?
  • (唯一的)整数是一个不错的选择吗?

这些选项中的任何一个都会创建“热”分区吗?

谢谢!

Ale*_*Ott 4

UUID 是分区键的不错选择 - 它应该很好地分布在集群节点之间。“唯一”整数更棘手 - 某些节点需要成为生成该数字的权威,而这在分布式环境中很难做到。

关于热分区 - 这将取决于您的数据模型。如果除了分区键之外您还有其他主键组件,是的 - 您可能会遇到此问题。例如,您为传感器生成一个随机 UUID,并开始向其中写入大量数据。