google-cloud-firestore - 架构更改的 Firestore 完整集合更新
问题描述
我正在尝试找出一种可靠的策略来处理 Firestore 中的架构更改。我的想法是,架构更改通常需要读取然后写入集合中的每个文档(或者可能是不同集合中的文档)。
以下是我的担忧:
- 不知道以后的收藏有多大。在单个查询中可以读取多少个文档时,我会遇到任何限制吗?
- 我目前的计划是从 Cloud Build 运行架构更改脚本。这可能会超时吗?
- 进行实际更新的最有效方法是什么?(例如读取文档,将更新写入文档,重复...)
- 我应该使用批量写入吗?
另外,如果您认为这是实现架构更改的完全错误方法,请随时告诉我,并提出更好的解决方案。
解决方案
不知道以后的收藏有多大。在单个查询中可以读取多少个文档时,我会遇到任何限制吗?
如果文档数量太大而无法在单个查询中处理,您可以开始对结果进行分页。
我目前的计划是从 Cloud Build 运行架构更改脚本。这可能会超时吗?
这在此刻是不可能说的。
进行实际更新的最有效方法是什么?(例如读取文档,将更新写入文档,重复...)
如果您需要文档的现有内容来确定其新内容,那么您确实需要阅读它。如果不需要现有内容,只需要路径即可,可以考虑使用 Node.js API 仅检索文档 ID。
我应该使用批量写入吗?
批量写入没有性能优势。事实上,它们通常比从您的代码中并行发送单独的更新调用要慢。
推荐阅读
- flutter - 可视化用于颤振测试(或颤振驱动程序)的敲击/手势
- python - 嗨,我有一个 python 脚本可以使用 openpyxl 处理 excel 数据,但是在 2500 行之后我得到了内存错误。谁可以帮我这个事?
- ios - 带有 Epson ePOS SDK 的 Flutter 插件 - 未构建
- reactjs - 如何在反应中解决这个未处理的拒绝错误?
- json - 从 Bash 中的字符串中提取数据
- python - 以junit xml格式保存测试用例
- android - 如何用通用响应包装改造响应
- ansible - 在ansible中读取具有未知键的vars文件
- html - Django 模态表单需要一个值
- docker - 使用 AWS CDK 将图像上传到 ECR 时可以绕过 docker 登录吗?