作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在测试具有不同配置的 Cassandra 集群的行为。其中之一使用 ByteOrderedPartitioner 沿节点分发 key 。
数据模型由胖行组成,每行都以一个整数(IntegerType)作为键,其值从 0 到 9999。我这样设置了一个10个节点的环:
Address Rack Status State Owns Token
Token(bytes[0900])
node1 Up Normal 5.14 MB 10.00% Token(bytes[00])
node2 Up Normal 377.42 MB 10.00% Token(bytes[0100])
node3 Up Normal 373.06 MB 10.00% Token(bytes[0200])
node4 Up Normal 966.15 KB 10.00% Token(bytes[0300])
node5 Up Normal 953.4 KB 10.00% Token(bytes[0400])
node6 Up Normal 953.26 KB 10.00% Token(bytes[0500])
node7 Up Normal 944.54 KB 10.00% Token(bytes[0600])
node8 Up Normal 953.4 KB 10.00% Token(bytes[0700])
node9 Up Normal 962.42 KB 10.00% Token(bytes[0800])
node10 Up Normal 961.31 KB 10.00% Token(bytes[0900])
但所有负载都在节点 2 和节点 3 上进行副本。
为什么这些 token 不起作用?我应该如何修复它们?
最佳答案
首先,您应该在每个节点上运行清理,以确保在引导后您不会看到该节点不再负责的额外数据。
完成后,您可以使用 getRangeKeySample
JMX 方法来获取节点上的键示例。然后,如果需要,您可以将其 token 调整为一个值,将适当数量的键移动到其邻居。
也就是说:您几乎肯定应该使用 RandomPartitioner
来代替,以避免这个问题。我已经在像 this 这样的帖子中解释过如何在分区键内使用集群来进行排序,否则您可能会想使用 BOP。
关于cassandra - 如何计算 ByteOrderedPartitioner 的 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11109162/
我想在结构如下的表上执行一些范围查询: CREATE TABLE table( num int, val1 int, val2 float, val3 text, ... PRIMARY KEY(nu
我正在测试具有不同配置的 Cassandra 集群的行为。其中之一使用 ByteOrderedPartitioner 沿节点分发 key 。 数据模型由胖行组成,每行都以一个整数(IntegerTyp
我是一名优秀的程序员,十分优秀!