node.js - 如何更新非常大的 Firestore 集合
问题描述
我需要通过 node.js 的 admin sdk 向 Firestore 中一个非常大的集合的每个文档添加一个字段。一些文件已经有这个字段,所以我需要在设置/更新它之前检查它的值。该集合大约有 15 万份文档。即使尝试使用以下代码获取文档也会超时。
const documents = await db.collection('collectionName').get()
有没有一种特殊的方法来处理非常大的集合?
解决方案
您应该使用分页以避免通过单个查询将所有文档加载到内存中。这将允许您通过指定您在先前查询中看到的最后一个文档快照来批量处理文档,以便进行新查询以获取下一页数据。
您将希望对每个查询设置合理的限制,以确保您在每页中获得合理数量的文档。
推荐阅读
- flutter - 注册对象时,如何修复'xxx类型的对象未在GetIt中注册?
- javascript - 如何从axios将数据插入列
- c++ - 基类构造函数争论与派生类构造函数之间的关系
- android - 找不到“ANDROID_HOME”环境变量。尝试手动设置。无法在“PATH”中找到“android”命令
- php - PHP多维数组输出HTML表格
- jsf - JSF URL 参数在开发中被删除,但在生产中可以正常工作
- minecraft - Minecraft 错误:java.lang.IllegalArgumentException:绑定必须为正,无法玩单人游戏?
- opencv - Matx33f 和 Mat3f 相乘给出不正确的类型
- php - 在双引号php之前添加斜杠
- wordpress - 激活插件时创建wordpress模板