我注意到我的cassandra集群上的打开文件数量有所增加,并检查了它的健康状况。 Nodetool状态报告每个已分配的3TB节点仅使用300gb。
在我开始看到cassandra日志中出现HEAP OOM错误之后不久。
这些节点已运行3-4个月没问题,但是填充了一系列测试数据,然后从中删除。
通过df
命令检查硬盘后,我能够确定它们在一个jboded方案中填充了90-100%。
编辑:进一步调查显示其余文件位于'快照'子文件夹和数据子文件夹本身没有数据库表。
我的问题是,有人见过这个吗?为什么压实不能释放这些墓碑?这是一个错误吗?
答案 0 :(得分:0)
快照不是墓碑 - 它们是您数据的备份。
正如Highstead所说,您可以通过clearsnapshot命令删除任何未使用的快照。
您可以通过cassandra.yaml
禁用自动快照功能答案 1 :(得分:0)
答案 2 :(得分:0)
快照在cassandra集群的生命周期内发生。这些快照不会在nodetool status
中捕获,但仍会占用空间。在这种情况下,在删除表时创建了占用所有空间的快照。
要检索当前快照列表,请使用命令nodetool listsnapshots
可以通过修改/etc/cassandra/cassandra-env.sh
并将auto_snapshot
设置为false来停用此功能。或者,可以通过命令nodetool clearsnapshot <name>
清除这些快照。