【发布时间】:2019-02-06 02:34:00
【问题描述】:
Firestore 和 NOSQL 是一个面向文档的数据库。现在,当我将数据与 Firebase SDK 和 Android 应用程序一起使用时,如何管理数据的版本控制?
例如假设我有一个 JSON 模式,我用我的 1.0.0 版本的 android 应用程序启动。后来 1.0.1 出现了,我必须为较新的文档添加一些额外的字段。由于我更改了结构以获取更多信息,因此它仅适用于新文档。
因此,使用此逻辑,我可以看到我的 Android 应用程序必须能够处理所有版本的 JSON 树,如果用于我在 Firebase 控制台中使用 Firestore 创建的这个项目。但这可能很痛苦吧,我一直背负着向后兼容的重担?有没有办法拥有某种版本,如 protobuf 或 android 应用程序可以发送到 firestore 服务器端的东西,以便我们可以自动做一些事情来防止 android 应用程序在看到新字段时崩溃?
另见此线程,工程师发布的那种问题。当 Android 应用程序在 JSON 树中发现新字段时,您可能会遇到此类问题 Add new field or change the structure on all Firestore documents
对我们应该如何处理有什么建议吗?
在 node.js 架构中,我们使用 default-> v1.1/update 或 default-> v1.0/update,这样我们就可以管理路由了。
但是对于 android+firebase SKD-> 与 Firestore NOSQL 交谈,我如何管理 json 模式的版本控制。
【问题讨论】:
-
我也有同样的问题 - 有什么新想法吗?
-
@doug-stevenson Doug,你有没有机会得到权威的答案?
标签: android firebase nosql google-cloud-firestore versioning