在批量加载期间应用哪种节点修复策略?

时间:2015-03-23 13:22:05

标签: cassandra

目前,我正在将30TB的数据批量加载到运行Cassandra 2.1.2的十节点集群中。我使用' sstableloader'在~5 TB的阶段从平面文件批量加载。

我知道,需要运行“nodetool repair'定期每个Cassandra节点。但目前(在10TB负载下)每个节点修复需要48小时以上。大容量负载需要承受压力。那么哪种修复策略更好:

  1. 要在每个5 TB阶段之间轮流修复每个节点吗?
  2. 批量加载所有30TB然后开始修复?
  3. 使用sstableloader运行同时修复节点?
  4. 理想情况下,我需要一种工具来衡量维修的需要。熵的度量。这样的事情存在吗?

1 个答案:

答案 0 :(得分:2)

如果您要使用数据引导群集,则无需在每次导入运行之间运行修复。 sstableloader工具应该注意在集群中正确创建所有副本。完成所有导入后,您可以进行全面修复。但是,请记住,修复只能确保以一致的方式在群集中复制数据。如果装载机根本没有保存部分数据 - 无论出于何种原因 - 维修将无法注意到。因此,在某些时候,您必须信任tableloader或编写自己的脚本来验证结果。

相关问题