当我们调用getValue时,firebase datasnapshot是否下载数据 还是更像一个容器,其中包含数据库引用中引用的整个树结构?
我需要执行“或”操作,但根据不允许的文档进行。所以我想我将从最窄的节点下载所需的数据,并在本地执行过滤。问题是,即使到那时,如果我必须下载所有数据并在本地进行过滤,数据最终可能会变得很大。因此,如果在调用get值时datasnapshot下载数据,我可以放心地忽略对firebase进行复杂查询的需要。
答案 0 :(得分:1)
调用getValue时,将下载节点的全部内容并使其可用。从这种意义上讲,移动客户端SDK不会暴露“浅”查询。 (尽管REST API确实支持不下载所有子节点的浅层查询。)
您已经确定,这可以改变您想要组织数据的方式。因此,在实时数据库中通常首选浅层数据结构。