【发布时间】:2019-01-12 08:21:31
【问题描述】:
有没有一种方法可以批量删除集合中的文档而无需先支付“读取”费用?
假设我有一个包含 1000 个文档的集合。我决定要删除所有超过 1 天的文档。我可以使用 Query 来返回返回 [300] 文档 (DocumentReference) 的 QuerySnapshot。我不需要阅读文档内容(DocumentSnapshot),我只需要删除它们。
根据我对pricing documentation 的了解,因为我先返回了一个 QuerySnapshot,它会向我收取 300 次读取和 300 次删除的费用。它没有区分“读取” DocumentReference 与“读取” DocumentSnapshot 中的数据。
有什么方法可以避免 300 次读取?我可以理解,取回这 300 个文档需要 Firestore 努力找出适当的文档子集。但是,无论您是否真的尝试获取文档数据(DocumentSnapshot)(例如,只是要删除的 DocumentReference),读取的任意费用似乎都应该可以避免。
【问题讨论】: