Cassandra Cleanup是否从现有群集中删除旧数据

时间:2014-10-01 11:03:13

标签: cassandra nodetool

我有一个包含9 TB数据的5节点cassandra集群,并计划在集群中再添加5个节点。添加新节点后,将启动负载平衡,并将分区键的子范围映射到新节点。什么时候我应该给nodetool清理。是否在启动新节点后立即进行nodetool清理将从群集中的旧节点中删除属于该子范围的旧数据。

1 个答案:

答案 0 :(得分:2)

DataStax doc Adding nodes to an existing cluster提到了这一点:

  
      
  1. 在每个新节点上启动Cassandra。在节点之间允许两分钟   初始化。您可以监视启动和数据流   使用nodetool netstats的进程。

  2.   
  3. 运行所有新节点后,运行   nodetool清理每个先前存在的要删除的节点   密钥不再属于那些节点。等待清理   在完成下一个节点之前完成一个节点。清理可能是安全的   推迟了低使用时间。

  4.   

这似乎表明,一旦所有新节点启动,运行和完全自举,您应该运行nodetool cleanup。此过程将从旧节点上的子范围中删除旧数据。如上所述,请确保在每个旧节点上运行nodetool cleanup,一次一个节点。