chronicle-map 持久文件大小
chronicle-map persisted file size
我想了解持久化地图文件的大小是如何计算的。
通过类似以下方式在磁盘上创建持久映射时:
ChronicleMap
.of(Key.class, Value.class)
.name("foo")
.entries(1024)
.averageKeySize(32)
.averageValueSize(2048)
.maxBloatFactor(1)
.createOrRecoverPersistedTo("foo.dat")
我想预分配的“foo.dat”文件的大小是 key/value 大小、条目数和 maxBloatFactor 的函数,也许 OS 体系结构和其他因素。
所以我的问题是:
给定一组配置值,是否可以确定地知道“foo.dat”文件大小最终会是多少?
您可以简单地调用 VanillaChronicleMap#dataStoreSize()
方法,它将 return 文件大小。
有关它如何工作的详细信息,您可以查看它的 implementation - 它是开源的(尽管它不是一个微不足道的计算)。
我想了解持久化地图文件的大小是如何计算的。
通过类似以下方式在磁盘上创建持久映射时:
ChronicleMap
.of(Key.class, Value.class)
.name("foo")
.entries(1024)
.averageKeySize(32)
.averageValueSize(2048)
.maxBloatFactor(1)
.createOrRecoverPersistedTo("foo.dat")
我想预分配的“foo.dat”文件的大小是 key/value 大小、条目数和 maxBloatFactor 的函数,也许 OS 体系结构和其他因素。
所以我的问题是: 给定一组配置值,是否可以确定地知道“foo.dat”文件大小最终会是多少?
您可以简单地调用 VanillaChronicleMap#dataStoreSize()
方法,它将 return 文件大小。
有关它如何工作的详细信息,您可以查看它的 implementation - 它是开源的(尽管它不是一个微不足道的计算)。