Cassandra 卡桑德拉压实vs修复vs清理

Cassandra 卡桑德拉压实vs修复vs清理,cassandra,cassandra-2.1,nodetool,Cassandra,Cassandra 2.1,Nodetool,在发布了一篇文章和阅读了一些文章之后,我仍然不理解这三个操作之间的关系: 卡桑德拉压缩任务 nodetool修复 nodetool清理 是可以在压缩任务运行时处理修复任务,还是可以在压缩任务运行时进行清理?清理是一项每周都需要执行的操作吗?为什么修复操作需要手动执行,而不在Cassandra默认行为中 健康群集维护的基本规则是什么?Acleanup是一种压缩,它只删除节点令牌范围之外的内容。repair具有“验证压缩”功能,用于构建merkle树以与其他节点进行比较,因此nodetool r

在发布了一篇文章和阅读了一些文章之后,我仍然不理解这三个操作之间的关系:

  • 卡桑德拉压缩任务
  • nodetool修复
  • nodetool清理
是可以在压缩任务运行时处理修复任务,还是可以在压缩任务运行时进行清理?清理是一项每周都需要执行的操作吗?为什么修复操作需要手动执行,而不在Cassandra默认行为中


健康群集维护的基本规则是什么?

A
cleanup
是一种压缩,它只删除节点令牌范围之外的内容。
repair
具有“验证压缩”功能,用于构建merkle树以与其他节点进行比较,因此
nodetool repair
的一部分将具有压缩功能

是可以在压缩任务运行时处理修复任务,还是可以在压缩任务运行时进行清理

在正常压缩、修复、清理、清理等过程中,有一个压缩共享池。这是cassandra.yaml中的
并发压缩程序设置,默认为核心数和数据目录的组合:

清理是一项每周都需要执行的操作吗

不,只有在拓扑真正改变之后

为什么修复操作需要手动执行,而不在Cassandra默认行为中

它的手册,因为它的要求在您的数据和
gc\u grace
要求方面可能有很大差异。正在把它带到卡桑德拉内部,尽管如此,在未来它将是自动的

健康集群维护的基本规则是什么

我想说:

  • 定期备份(取决于要求和可接受的数据丢失 这可以是任何内容,从每周/每天到不断增加)。
    • 这与“内部”错误(“OPP我删除了一个客户”)和停机一样多。即使使用强大的多dc复制,您也需要最少的备份
  • 确保在这些表的gc_宽限期内至少删除一次的所有表的修复完成
  • 如果您希望能够调试问题,度量和日志存储非常重要

很好的总结!谢谢。将节点添加到群集后,执行清理而不进行修复是否安全?