首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我的移动应用程序的数据库后端类型(包括GPS搜索功能)

我的移动应用程序的数据库后端类型(包括GPS搜索功能)
EN

Stack Overflow用户
提问于 2019-02-06 21:12:57
回答 1查看 57关注 0票数 0

我已经创建了一个应用程序(react-native)来存储用户配置文件(年龄、性别、在线状态、经度/经度等)。在google firebase实时数据库中。然后,我使用GeoFire函数来查找在给定coord的特定半径内的所有用户,然后对这些配置文件进行过滤(即只查找X年龄范围内的在线男性),最后将其减少到最接近的100个配置文件。这是在一个firebase函数中完成的,并返回给用户的手机,所以用户将下载的最多是100个用户,这对于应用程序来说是可以接受的。

我的问题是,随着应用程序的扩展,半径内可能有10,000个用户,因此GeoFire查询获取所有10,000个用户的关键字,然后我必须找到这10,000个用户的配置文件信息,然后根据逻辑进行过滤,然后将其减少到最接近的100。现在,这需要大量的时间。

我觉得如果我去AWS上的传统关系数据库,我可以在第一次数据拉取时添加一个where子句,并在一个查询中进行过滤和所有事情。

任何关于解决这个问题的最好方法的帮助,我要么是不正确地使用了firebase,要么是用错了方法。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-02-06 21:33:39

您可以使用带有limitToLast(100)方法的firebase.database查询您的数据库,以限制您的查询,就像在docs中一样,如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
var ref = firebase.database().ref("dinosaurs");

ref.orderByChild("height").limitToFirst(100).on("child_added", function(snapshot) {

console.log(snapshot.key);

});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54554495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档