如何离线压缩sstables?

时间:2016-08-09 04:49:38

标签: cassandra

我正在使用CQLSSTableWriter在离线/批量模式下编写sstables。在写入操作期间不强制执行该顺序。在使用sstableloader将数据加载到cassandra集群之前,是否可以强制执行压缩?

2 个答案:

答案 0 :(得分:1)

SStables本质上是不可变的,sstable也不仅仅是一个文件,而是具有元数据的数据。 元数据包括index.db等。检查数据文档以获取更多详细信息。

因此我们不应该手动操作,因为每个sstable中的标记范围将在压缩期间发生变化,并且结果sstable将不会使数据均匀分布。 压缩也会导致更大的sstable,而具有sstable的节点将成为热点。

最好/建议不要手动操作。

答案 1 :(得分:0)

您可以通过nodetool drain耗尽节点,然后安全地继续进行压缩。