【发布时间】:2014-07-16 15:21:15
【问题描述】:
我有一个 8 节点 Cassandra 集群(Cassandra 2.0.8)。当我使用 nodetool 运行状态时,我看到以下内容。我是新手,想知道为什么其中一个节点(该节点是我的初始种子节点)上的负载比其他节点高?
我还注意到,当我尝试使用 PIG 将数据推送到 Cassandra 表(列族)时,一个节点正在使用非常高的 CPU (95%+),而其他节点则没有 (20-30%)
Note: Ownership information does not include topology; for complete information, specify a keyspace
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN xxx.xxx.xx.xxx 15.55 MB 256 6.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 36.89 MB 256 6.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 3.77 GB 256 6.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 1.04 GB 256 56.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 43.49 MB 256 6.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 40.36 MB 256 6.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 43.69 MB 256 6.2% ------------------------------------ rack1
UN xxx.xxx.xx.xxx 40.23 MB 256 6.2% ------------------------------------ rack1
感谢任何帮助。谢谢。
【问题讨论】:
-
你的复制因子是多少?
-
包含大部分负载的表的定义是什么?如何管理(或生成)分区键?
-
复制因子 1 和我的表定义就像 CREATE TABLE emp (empID int, deptID int, first_name varchar, last_name varchar, PRIMARY KEY (empID, deptID)) 一样简单;
-
我想我正在使用默认分区,我相信它是 Murmur3Partitioner
-
我没有发布答案,因为我不确定它是否足够,请更改复制因子,如果它仍然为 1,则每条记录将只有一个副本,并将存储在单个节点