分区程序的选择可以带来什么样的差异可以带来我的吞吐量和延迟。我已经完成了所有三个分区。我有一点在脑海中清楚地表明有序的分区有开销,所以不要使用它们。现在我对选择 Random和murmur3 partitioner 感到困惑。
答案 0 :(得分:7)
两者之间的主要区别在于每个如何生成令牌哈希值。随机分区器使用JDK本机MD5哈希(因为它对于所有JDK的开发人员和标准都很方便)。但由于Cassandra确实不需要加密哈希,因此该功能需要的时间比它需要的时间长得多。
使用Murmur3分区程序,令牌散列只是Cassandra需要它做的事情。其中,是生成一个令牌,确保在节点之间均匀分布。这导致令牌散列性能提高3到5倍,这完全转化为Carlo上面提到的整体10%的增益。
还应注意DataStax警告分区器不兼容。这意味着,一旦你从一个分区开始,你就不能(轻松)转换到另一个分区。因此,我会选择更新,稍快的Murmur3分区器。
答案 1 :(得分:3)
新的默认partitoner是杂音3.它应该比随机分区器提供大约10%的性能增强而没有负面影响