在使用Apache Geode / Gemfire实现时,我的要求不仅是要具有IMDG功能,而且还要将值提交到磁盘存储中。万一我所有的Geode服务器都掉了,我想把它们带回来并有一个持久键值。
现在,当我从缓存中删除键时,该键和值将从所有群集的缓存中删除(或者说我使用销毁模式执行逐出操作)。但是,不会回收或减少磁盘空间。因此,如果我继续对区域使用persistence_overflow,该如何清理磁盘空间以容纳新条目呢?
再次,我知道有压缩选项,但是,我不是要压缩,而是要完全删除键/值对并回收磁盘空间吗?
答案 0 :(得分:0)
据我所知,在当前实现中这是不可配置的:每个配置了GemFire/Geode
的{{1}}成员都会创建disk-store
文件,占用通过{{1 }}属性,默认为oplog
。在常规执行期间,如Design Your Disk Stores中所述,仅在压缩期间从max-oplog-size
中删除过时的操作。
希望这会有所帮助,欢呼起来。
答案 1 :(得分:0)
正如Juan所说,压缩是Geode释放磁盘空间的方式。
您可以调整压缩以更快地释放磁盘空间,但会降低性能。您可以减小max-oplog-size的大小,并增加压缩阈值以更快地回收磁盘空间。
对于大多数用例,我建议不使用压缩阈值。调整了默认值以实现最大写入吞吐量,并且磁盘上的垃圾不超过50%。