我在Firestore中有users
个集合,每个集合的文档格式均为{ d: <obj>, g: <str: geohash>, l: <GeoPoint> }
,并且我在客户端应用上使用geofirestore-js来执行“附近搜索”,而且效果很好。
但是,我不知道geofirestore-js是否在事后从users
中检索所有文档,并进行计算以缩小结果范围。
我要问的原因是,根据Firebase official document,不是API调用的数量,而是文档数量。
或者,该库是否神奇地缩小了服务器端的结果?
答案 0 :(得分:1)
它不会读取所有文档。那根本无法扩展。地理查询使用一种特殊的编码,可以有效地查询该编码,以仅查找匹配的文档。
它甚至在GitHub page上说:
GeoFirestore仅选择性地加载某些位置附近的数据, 保持您的应用程序轻巧,响应迅速,即使 大型数据集。