sstableexpiredblockers:在Cassandra中阻塞SSTables怎么办?

Bob*_*sky 7 cassandra cassandra-3.0

我已经意识到,某些稳定器即使仅包含墓碑也不会被丢弃。使用手动重大压实,将这些稳定土移除。也许需要将unchecked_tombstone_compaction与gc_grace_period一起更新为true

我已经看到了实用程序sstableexpiredblockers实用程序,它将显示阻止SSTable的阻止SSTable删除的功能。

在压缩期间,如果Cassandra仅包含过期的逻辑删除,并且可以保证不覆盖其他SSTable中的任何数据,则可以删除整个SSTable。此诊断工具输出阻止其他SSTable被删除的所有SSTable。

我不明白:

...如果保证不覆盖其他SSTables中的任何数据...

由于我的压缩策略是TimeWindowCompactionStrategy,因此所有sstable的时间间隔都不同。

我想知道如何处理那些阻塞的SSTables。

小智 1

刚刚看了(有点晚了)。您可以检查安装时是否设置了NTP服务器池。这可能是时钟不同步的一个重要原因。

此外,我们还发现,与其依赖虚拟机,不如使用物理机来实现此目的。