与Realm Object Server共享blob的最佳方式

时间:2016-10-07 06:37:30

标签: realm realm-mobile-platform

Realm Mobile Database的blob大小限制为16MB。根据文件:

  

要存储大量数据,请将其分解为16MB块或直接存储在文件系统中,并在Realm中存储这些文件的路径。

如果我们要使用Realm Object Server来存储我们的数据,我们是否应该将数据拆分成块?我们不希望将视频或磁盘映像存储到Realm,但我们可以看到用户偶尔会添加大文件。

1 个答案:

答案 0 :(得分:1)

Realm Mobile Platform并不一定用于存储非常大的文件。例如,16MB仍然是通过无线方式发送的重要数据(特别是在3G / 4G连接上)。

正如EpicPandaForce指出的那样,您可以在第三方系统上托管该文件,并将身份验证令牌与URL一起存储在Realm中。该系统与S3相当适用,它允许您创建一个有效x时间的秘密URL(带有嵌入式访问令牌)。

这并不需要大量的工作;它只需要在服务器端正确管理S3存储桶。使用企业版的Realm对象服务器,实际上很容易在设备需要时生成这些URL,并且只在需要时生成这些URL很短的时间(通常,您可以缓存这些大型文件)无论如何设备,所以你不要一直重新下载它们。

或者,正如文档所示,您可以将所有内容存储为16MB块。请注意,这可能会增加您的存储空间,因为实际的Realm文件将包含每个16MB的块,但是transact日志也将包含相同的16MB块(以便合并算法可以在服务器端正常运行)。