尝试从Google Cloud Firestore检索所有文档时如何处理超时错误?



给定Cloud Firestore文档中的示例,假设我想收集城市的所有人口数量,我会这样做:

docs = db.collection("cities").stream()
populations = {}
for doc in docs:
doc_dict = doc.to_dict()
populations[doc_dict["name"]] = doc_dict["population"]

但是,在我的案例中,文档太多,我得到了google.api_core。异常。服务不可用:503 数据存储操作超时,或者数据暂时不可用

我查看了Firestore操作超时和是否可以在Google App Engine中增加响应超时?的答案,我了解到我无法更改超时期限。

这给我留下了一个问题:我怎样才能得到所有的人口数字?文档 ID 不是增量的,所以我无法记住"超时前的位置",也没有从 Firestore 文档中找到类似"光标"的解决方案。

Cloud Firestore 支持分页。 文档中甚至还有一个 python 代码示例。 您需要注意有关使用文档快照定义查询游标的部分。

相关内容

  • 没有找到相关文章

最新更新