【问题标题】:How to deal with a changing document structure?如何处理不断变化的文档结构?
【发布时间】:2020-11-29 20:10:39
【问题描述】:

假设我们最初有以下文档结构:

// Structure A
car: {
  weight: 1000kg
}

现在,无论出于何种原因,我们认为这样构造文档会更合乎逻辑:

// Structure B
car: {
  characteristics: {
    weight: 1000kg
  }
}

v1.0.0 的所有客户仍然期待Structure A,这是其开发过程中的结构。更新后的客户端 v2.0.0 需要 Structure B。如何确保每个人仍然可以访问数据?

到目前为止,我看到了两种可能性:
1:客户端v2.0.0在读取文档时将带有Structure A的文档更新为Structure B。这意味着我最终会得到一个数据库,其中未读文档仍然有Structure A,而已读文档已经有Structure B。这听起来总体上不太好!

2:我在服务器端一次升级所有文档,然后强制用户升级其客户端以确保他仍然可以访问文档。

3: ?

有没有关于这个主题的最佳实践或文章?

【问题讨论】:

  • Firebase 实时数据库和 Cloud Firestore 是两个独立的数据库。请仅使用相关标签标记您的问题,不要同时使用两者。
  • 我认为最直接的选择是第二种。你同意吗?

标签: database google-cloud-firestore nosql


【解决方案1】:

我认为最好的选择是第二个,这是最直接的。

【讨论】:

    猜你喜欢
    • 2011-09-03
    • 2015-05-27
    • 2011-04-06
    • 2017-04-17
    • 2023-04-03
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    • 2020-03-05
    相关资源
    最近更新 更多