gpt4 book ai didi

ios - Realm 文件的大小如何发展?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:26:56 24 4
gpt4 key购买 nike

Realm 文件的大小如何发展?

首先:我有一个包含多个属性的 Realm 文件,其中一个是 860 个条目的数组,每个数组条目又由几个属性组成。一个数组属性说明条目的名称。

我观察到以下情况:

  • 如果名称属性是“Criteria_A1”(直到“Criteria_A860”)- 那么 Realm 文件是 1.6 MB 大
  • 如果名称属性为“A1”(直到“A860”)——那么 Realm 文件只有 786 kB 大

为什么 array-name-property 中的额外字母使 Realm 文件变得如此大??

第二个观察:

  • 如果我添加更多对象(每个对象再次具有一个包含 860 个条目的数组),那么文件大小将再次变大 1.6MB(无论我添加了多少对象;猜测直到再次达到临界值,此时大小增加了三倍...还是我错了??)。

在我看来,786 kB 的 Realm 文件在添加某些内容后(无论是具有更多字母的属性还是添加的对象)的大小都会翻倍。为什么 realm-file 在临界值时会翻倍,并且随着添加的内容越多,大小不会线性增加??

感谢您对此的澄清。

最佳答案

观察得很好。 :-) Realm 文件开始时大约为 4k,一旦用完可用空间,它的大小就会加倍。一直翻倍直到128M,然后不断增加128M。

将文件加倍而不是线性增长的原因仅仅是因为性能。这是动态数据结构的常见算法,只是保持翻倍。

您可以使用如下所示的可用方法来编写压缩副本,删除文件中的所有可用空间。如果您不再添加新数据、想要传送静态数据库或想要通过网络发送文件,这将很有用。

提到的那些阈值和算法是当前的,但可能会在未来的版本中发生变化。

希望这能澄清吗?

关于ios - Realm 文件的大小如何发展?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27400475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com