我在EC2中使用Datastax 2.1社区版。我在一个密钥空间中删除了一个大表(列族)并运行“nodetool compact”,但是从OpsCenter UI中,我看不到存储容量的任何增加。
我运行“nodetool compactionstats”来查看压缩是否正在进行但没有任何内容: $ nodetool compactionstats 待定任务:0 主动压实剩余时间:不适用
我还需要遵循其他一些流程吗?
答案 0 :(得分:3)
Cassandra在其默认配置中保留了每个被删除列族的快照。这是设计使您不会丢失cf的数据,如果您不小心删除了cf。
您可以在cassandra.yaml
中禁用快照创建。从文档(参见:http://www.datastax.com/documentation/cassandra/2.1/cassandra/configuration/configCassandra_yaml_r.html):
auto_snapshot (默认值:true)启用或禁用快照是否为 在键空间截断或删除表之前获取数据。至 防止数据丢失,强烈建议使用默认设置。如果 如果设置为false,则会丢失截断或丢弃的数据。
如果您不禁用自动快照,则可以通过nodetool clearsnapshot
删除生成的快照。请参阅:http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsClearSnapShot.html