Firebase查询是否可扩展

时间:2016-06-17 14:55:35

标签: ios swift firebase

在我的应用中检查注册时是否收到了电子邮件(和用户名),我使用这样的查询......

let emailRef = Firebase(url: "https://photocliq5622144.firebaseio.com/users")

emailRef.queryOrderedByChild("email").queryEqualToValue(email.text!.lowercaseString).observeEventType(.Value, withBlock: { email in

这适用于数百甚至数千名用户(可扩展)吗?

2 个答案:

答案 0 :(得分:5)

数百:是的

成千上万:是的

成千上万......可能(祝贺你的应用成功)

成千上万......使用非基于查询的数据模型可能会更好。例如:如果您想通过电子邮件地址访问用户的某些数据,请将电子邮件地址中的地图存储到uid:

emailToUid
    "HelixProbe@stackoverflow,com": "uid6479958"
    "puf@stackoverflow.com": "uid209103"

通过这样一个简单的列表,您可以通过两个直接查找从他们的电子邮件地址中读取用户的数据,而不是一个查询(随着越来越多的项目被添加,这将变慢)。

答案 1 :(得分:1)

可扩展与否可由您的用户决定。

在场景背后Firebase库只是下载JSON字符串,你知道如果字符串太长而且要下载的文件大小到达会发生什么(例如3MByte)

如果您的用户能够并且可以使用3MByte的请求,那么您可以使用它。但如果我是你的用户,我不会。