了解事件何时在Firestore中发生以进行计费



我想更好地了解Firestore API中哪些事件触发计费。例如,下面的代码是一读一写还是只写一写?

db.collection("cities").doc("DC").update({ capital: true });

当取回文档列表时,读取的文档实际何时计费?例如:

const snapshot = await db.collection("cities").get();
snapshot.forEach((docRef) => console.log('First: ', docRef.data());
// ...execute some more code...
snapshot.forEach((docRef) => console.log('Second: ', docRef.data());

在本例中,我将循环两次返回的数据快照。计费是发生在.get()上还是发生在每个docRef.data()上?具体来说,在这些列表案例中,我试图弄清楚我是否可以挂起snapshot,或者我是否应该将它们转换为纯JSON对象。我知道文档和视频中说不要在计费方面进行优化,但同时我希望对此保持聪明,这样我以后就不必重构了。

对于您的第一个代码片段,您将被收取单个文档写入操作的费用。

对于读取操作,当服务器需要代表您读取文档时,您将被收取费用,在您的第二个代码段中,当您调用get()时会发生这种情况。因此,无论您访问该快照中的数据的频率如何,snapshot中的每个文档都将向您收取一次费用。

您将只收到一次单据,因此只会收到一次账单。因此,在您的情况下,cities集合中的每个文档将花费您1次阅读

最新更新