关于 firebase:在 Firestore 中原子写入 2k 文档

Atomic write of 2k+ documents in Firestore

我有一个要创建的用例:1 个文档,其中有一个集合 "locations",需要包含 2000 多个文档。

每个文档都有 4-5 个字段,不大,但每个文档都是自己的网络请求,在 Firestore 上创建它们需要很长时间。

有没有更好的方法来做到这一点?批量写入最多有 500 个对象创建限制,并支持设置、更新和删除(不是创建)。


这个问题最合适的解决方案是使用批处理操作。因此,即使您只使用 set() 方法,您也可以将多个写入操作作为一个批处理执行,该方法实际上在特定引用处添加了一个文档。这里唯一的问题是您不能添加超过 500 个,因此您应该创建一种机制以将所有 2000 个文档添加到 500 个块中。所以需要 4 个批处理操作。