Cassandra tpstats和调整

时间:2015-06-06 08:48:39

标签: cassandra cassandra-2.0 nodetool

在六节点Cassandra集群[复制因子2]上,我们注意到一个节点被热点[重负载]。在查看tpstats时,我可以看到Flush writer和Writelicate在写阶段的任务都被阻止了。

我们只有一个数据目录[因此配置cassandra只使用一个flushwriter]并且memtable flush的队列大小为2

Heavily Loaded Node
Replicate-on-write-stage    32  4128    599249  48  371304
Flush-writer    0   0   85  0   24

Normal Node:
ReplicateOnWriteStage  0         0         753665         0      0
FlushWriter            0         0            137         0      25

所有节点的配置完全相同,我们使用Murmur Partitioner。

我是否可以参考其他一些统计信息,以追踪CPU负载问题并在单个节点上阻止写入阶段复制?

tpstats中的这些计数器是历史计数器还是每N分钟刷新一次?

here可以看出,阻止可能是因为IO没有保留或者是巨大的行和排序[这会增加cpu负载]。后者可能是整个集群中一个节点出现异常负载的原因吗?

1 个答案:

答案 0 :(得分:0)

增加堆大小应该是解决方案。在您的日志中,如果您发现GC过了很长时间,GC暂停时间可能是罪魁祸首。

您是否也可以发布日志,以便我们找到更好的解决方案。