firebase - 仅检索更改的文档字段
问题描述
我发现收听文档更改总是会一遍又一遍地下载完整的文档。
在以下情况下我有一个问题:文档的大小正在接近1 MiB
(这是文档大小的限制)。现在,有一个number
字段是唯一的字段正在更新,它只有几个字节。然而,收听这种变化(例如在帖子上点赞)总是会下载完整1 MiB
的数据,即使几个字节就足够了。
我知道我可以将占用大部分1 MiB
子集合的数据移动到单个文档中,但这不仅是单一的并且看起来非常违反直觉,而且还会显着增加我的 Firestore 账单,因为我需要两个而不是一个最初读取文档以检索数据。
有没有其他方法可以解决这个问题?
解决方案
Firestore 始终返回完整的文档。没有办法让它返回文档中字段的子集,既不是通过显式询问这些字段(类似于SELECT FIELD1, FIELD2
语句),也不是隐式询问(就像您只需要修改的字段一样)。
如果您想限制频繁更改的具有大负载的文档的带宽使用,则将数据的更静态部分放在单独的文档中的解决方法是有效的。
另见:
推荐阅读
- python-3.x - 查找基于正则表达式的字符匹配
- sql - CONVERT/CAST 函数不适用于日期转换
- git - Git 配置更改问题:由于服务器端接收挂钩而无法推送提交
- reactjs - × TypeError: Cannot read property 'bind' of undefined onClick
- python - 我如何在 django 中为某些视图设置中间件?
- html - 网页上的图像周围看不到虚线焦点线
- postgresql - 是否可以使用 PostgreSQL 创建 2d json 数组
- scala - 函数组合导致方法首先缺少参数列表
- html - 正确垂直对齐 Flexbox 项目
- math - 无论数字有多大,乘法/加法的速度是否都是常数?