Rai*_*ann 3 realm mongodb realm-mobile-platform mongodb-atlas
我计划为 iOS 和 Android 开发一个跨平台应用程序,并希望通过 Realm Sync 同步数据。Realm Sync 是无服务器的。让我们假设以下情况:用户只有一台设备,使用应用程序,保存数据,然后设备出现故障。那么该用户将无法恢复其数据,因为 Realm Sync 只是同步而不是备份,对吧?但是在Realm框架下如何实现同步和备份呢?MongoDB Atlas 扮演什么角色?
提前谢谢了!
注:我是一名本科生。
Realm Sync基于云 - 这意味着有一个基于云的服务器远程存储应用程序数据
数据首先存储在本地,然后稍后自动同步到云端(通常在几秒钟或更短的时间内)。这就是为什么 Realm 被认为是“离线优先”数据库;数据存储在本地(离线),然后在线复制/存储。
Realm 可以是没有云同步的纯本地数据库,也可以作为“实时”云数据库在线同步。(或两者!)
当使用sync时,支持Realm的数据库称为MongoDB,是一个NoSQL数据库。
一般来说,当开发 Realm 客户端应用程序时,您选择的 SDK 是代码和对象与 MongoDB 后端数据库之间的层。
SDK 允许您以面向对象的方式进行编码,而无需直接使用低级 NoSQL 对象。
您创建模型、关系和 UI,SDK 获取应用程序数据、对其进行处理,并将其作为 NoSQL 存储在 MongoDB 中。
作为后续内容,未来的读者不必阅读所有评论:
问)“无服务器”一词是什么意思?
A)我喜欢这个定义
无服务器将后端云基础设施和运营任务(配置、调度、扩展、修补等)的所有管理责任转移给云提供商
更直接也更重要的是:
无服务器是一种云开发模型,允许开发人员构建和运行应用程序而无需管理服务器。
问)这是否意味着数据只是暂时存储在云端
答)一点也不。如上所述,Realm 数据总是先写入本地,然后 SDK 将其同步到云端。如果您完全擦除设备,重新安装并运行应用程序后,Realm 将从服务器拉取数据(同步)
问)因为 Realm Sync 的价格也不包含存储空间成本: 定价
A) 该链接包括每个计划的存储空间和成本: 总结
共享计划高达 5GB,无服务器计划高达 1TB,专用计划为每个分片 4TB。然后,共享为 0 美元/月,无服务器为 0.30/百万次读取,专用为 57 美元/月。
问)是否可以将用户数据保存在此(Atlas 集群)上?
答)是的!这就是整个想法!但。如果您在 Realm 中进行开发,那么您的工作就是使用 SDK 制作一个出色的应用程序,并让 SDK 与后端的 Atlas (MongoDB) 进行交互。根据您的用例,您可能很少需要直接使用 Atlas 进行任何操作。
总体而言,当使用 Realm 进行编码时,您可以以更自然的面向对象的方式处理对象、结构和关系 - SDK 承担了获取数据并将其“转换”以存储在 Realm Sync 服务器上的繁重工作(MongoDB Atlas) - 因为它最终成为 NoSQL。
| 归档时间: |
|
| 查看次数: |
2314 次 |
| 最近记录: |