2017-09-14 97 views
0

我的问题是关于数据使用情况。我正在考虑对我的应用实施分页,但是我感觉好像要添加它,数据使用量不仅仅是定期抓取快照;所以我的问题是,以下查询使用相同数量的数据?或者是一个查询受限的,使用较少的数据?我的数据是指从Firebase下载的数据会影响我的定价。数据使用和Firebase查询

let dbReference = FIRDatabase.database().reference().child("users") 
     let query = dbReference.queryOrdered(byChild: "display_name") 
     query.queryLimited(toLast: 5).observeSingleEvent(of: .value) { (snap:FIRDataSnapshot) in 

      print(snap) 

     } 




let dbReference = FIRDatabase.database().reference().child("users") 
      dbReference.observeSingleEvent(of: .value) { (snap:FIRDataSnapshot) in 

       print(snap) 

      } 

回答

2

第二操作读较少的数据。

无论它取决于两个因素:

  1. 数据库中的用户数。
    1. 如果有5个或更少的用户,数据量将是相同的。
    2. 如果超过5个用户,第二个片段将会读取所有这些,而第一个可能只读取5个(取决于下面的内容)。
  2. 无论你是defined an indexdisplay_name
    1. 如果您定义了一个索引,则第一个片段将只读取来自服务器的5个项目。
    2. 如果您没有定义索引,那么这两个操作都会下载相同数量的数据,并且第一个片段将过滤数据客户端。
+0

如果超过5个用户该怎么办?你也可以通过定义一个索引以及它与数据消费的关系来阐述你的意思吗? – AndrewS

+0

更新了我的答案 –