从SizeTiered切换到Scylla db中的级别压缩策略需要多少磁盘空间?

时间:2020-10-14 14:55:18

标签: cassandra scylla

我有一个20节点的scylla数据库集群,每个节点的磁盘空间使用率为70%。我想从大小分层策略切换到分层压缩策略。我可以用剩下的这么多磁盘空间来这样做吗?最多需要多少磁盘空间?

2 个答案:

答案 0 :(得分:2)

通常使用大小分层压缩策略或分层压缩策略,您要保留大约50%的磁盘空间。

我们有一个Scylla Enterprise功能Incremental Compaction Strategy,它非常适合在磁盘利用率达到70%的情况下舒适地运行。

更改压缩策略以及重新编写所有当前表将需要的磁盘空间是当前使用的磁盘空间的两倍。 (当前使用量的140%。)因此,您可能需要暂时扩展集群才能正确运行压缩。

据我了解,首先需要花费一些时间来平均地重新平衡节点。然后,您应该使用现有策略运行一次完整压缩,然后更改为新的压缩。然后,如果通过压缩节省了空间,则可以停用所有不需要的节点。

如果您还有其他具体问题,我邀请您join our Slack直接问我们的社区成员。

答案 1 :(得分:1)

如前所述,您没有足够的磁盘空间来切换压缩策略。我可以想到两种或可能三种方法来解决此问题。

  1. 添加更多磁盘空间-如果您处于云环境中,则增长数据磁盘和扩展文件系统可能不会成为问题。
  2. 添加更多节点-但是,这将需要一段时间,因为必须将数据流式传输到所有新节点,然后您需要在集群上运行nodetool cleanup来回收未使用的空间。< / li>
  3. 一次更改一张桌子上的压缩策略。从可以容纳30%空间的小桌子开始。这也将花费很长时间,并且如果选择错误的表来更改,则可能会耗尽空间。
相关问题