gpt4 book ai didi

android - 迁移 Firestore 替换字段

转载 作者:行者123 更新时间:2023-12-05 00:13:23 25 4
gpt4 key购买 nike

假设我有这样一个文档:

Document {
tags: list<Int> {0,1,2}
}

我想改成这样:

Document {
tags: list<String> {SEASON, TRAINING, TOURNAMENT}
}

我有使用整数列表的活跃用户,如何在 Firestore 中为这个问题创建迁移?

我想到的一个解决方案是进行 2 次迁移:

  1. 用于创建名为 tagsStrings 的新标签。
  2. 用于删除所有仍有标签的用户。

但是我可以在 1 内完成吗?

我无法在 https://cloud.google.com/firestore/docs/manage-data/move-data 上找到这方面的文档

提前致谢

最佳答案

Firestore 没有像 SQL 数据库那样的“迁移”。批量修改现有文档中数据的唯一方法是:

  1. 查询要更改的文件
  2. 迭代结果
  3. 用新值更新每个文档

这些任务中的每一项都应该简单明了。

您还可以考虑延迟更新每个文档,因为在应用的正常使用过程中会单独阅读每个文档。因此,如果您的应用读取旧格式的文档,请立即将其更新为新格式。

在每个文档中都有一个专门的字段来指示其中包含的数据版本通常很有帮助。因此,最初在每个文档中设置 v=1,分配 v=2 表示文档具有字符串而不是标签数字,然后使用该数字来确定哪些文档尚未迁移。

关于android - 迁移 Firestore 替换字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63830506/

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