我有这样的Firestore结构:集合:用户
文档:每个用户一个
2个子集合:"在corso";以及";有限的">
文档:每个子集合有许多文档
我需要一种方法来循环集合中的每个用户,并更新/删除每个用户的两个子集合中的文档。
我尝试了这种方法:https://pastebin.com/nqsGuMm6
由于Firestore配额限制,给了我以下例外:
Exception from a finished function: Error: 4 DEADLINE_EXCEEDED: Deadline exceed.
我正试图找到一种不同的方法。我想到的唯一想法是为每个用户调用另一个云函数,并用另一个函数更新他的文档。不确定这是最好的方法,所以我正在寻找其他建议
谢谢
一次向firestore写入过多数据可能会导致该错误。这个错误有时也会出现在网络连接不良或代码错误上,请检查一下你的网络连接。此外,为了有效地执行此操作,必须使用批处理写入。这允许您同时执行多个更新和删除操作。您可以跨多个文档进行批处理写入,并且批处理中的所有操作都以原子方式完成。但是,如果您有500多个文档要更新,您仍然需要进行一些迭代来更新所有文档
您可以在此处找到有关使用配额和限制的详细信息。这里有几个类似的多删除和批处理删除实现的例子。