从Firestore进行文档读写的最经济有效的方法是什么?

时间:2019-04-03 14:34:57

标签: firebase google-cloud-firestore

Firebase的Cloud Firestore为您提供了文档读写次数(和删除次数)的限制。例如,火花计划(免费)每天允许5万次读取和2万次写入。在开发应用程序时,估算读写次数显然很重要,因为您将想知道所产生的潜在成本。

这种估计的一部分是确切地知道什么是文档读/写。通过在线搜索,这部分内容尚不清楚。

一个文档可以包含许多不同的字段,因此,如果设计一个应用程序以使通过会话执行的用户操作要求更新单个文档中的字段,那么在一个文档中更新所有字段是否具有成本效益?在会话结束时写文档,而不是用户想要更新一个字段就写文档?

类似地,在会话开始时一次读取文档,获取所有字段的值,而不是在需要每个字段时读取它们,这没有意义吗?

我很欣赏这种方法会导致用户看到一些过时的字段值,并且数据库不会被公认地更新,但是如果您对这些事情不太在意,则不能方法会大大减少您的读写次数?

这一切都取决于将什么算作文档的读/写(一次写入同一文档中的20个字段是否算作20次写?)。

1 个答案:

答案 0 :(得分:2)

写入操作的成本与您写入的字段数无关。这完全基于您在文档引用上调用update()或set()的次数,无论是独立地,在事务中还是在批处理中。

如果您选择使用N个单独的更新来写入每N个字段,则将向您收取N次写入的费用。如果您选择使用1次更新写入N个字段,那么您将被收取1次写入费用。