Ios 解析的查询效率
我正在使用一个跟踪用户位置的应用程序,并保存要解析的路线信息。现在,我将位置保存在一个类中,类名是位置所在国的名称,城市是键之一。这意味着,将来当应用程序检查某人是否已进入某个特定城市时,它会查询parse以所需城市作为类名的类,我会使用query.whereKeyCity,equalTo:queryCity约束来查看在该位置使用该应用程序的人数。把所有的地点放在一个类中,用两个键,即国家和城市,然后在我需要检索信息时查询这两个键,效率是高还是低 从本质上说,我想问的是哪一个查询更有效,是否有差异Ios 解析的查询效率,ios,swift,parse-platform,Ios,Swift,Parse Platform,我正在使用一个跟踪用户位置的应用程序,并保存要解析的路线信息。现在,我将位置保存在一个类中,类名是位置所在国的名称,城市是键之一。这意味着,将来当应用程序检查某人是否已进入某个特定城市时,它会查询parse以所需城市作为类名的类,我会使用query.whereKeyCity,equalTo:queryCity约束来查看在该位置使用该应用程序的人数。把所有的地点放在一个类中,用两个键,即国家和城市,然后在我需要检索信息时查询这两个键,效率是高还是低 从本质上说,我想问的是哪一个查询更有效,是否有差
var query = PFQuery(classname: queryCountry)
query.whereKey("City" equalTo: queryCity)
query.findObjectsInBackgroundWithBlock()
或
i、 e.让parse搜索我的类,还是让parse搜索键更好。我不完全理解您试图做什么,但一般来说,API的限制因素是您通过网络发送的数据。因此,您应该考虑向API发送请求,只需要您真正需要的数据 当然,由于TCP开销、连接建立等原因,两个请求比只有一个具有较大数据的请求的成本更高。在大多数情况下,这可能并不重要。所以你可以用任何一种方法 但是,如果您仍然需要查询中的数据来继续,我建议您将其合并到一个查询中 编辑 因此,您想知道如何组织数据。这完全取决于你。我不认为这有什么区别。但是,使用第二种方法,您没有标准化的数据。也就是说,在不太可能但可能的情况下,您要重命名一个国家,您必须在每一行都这样做,这是非常容易出错的 第一种方法并不是更好,因为一个特定的国家不是单一的阶级,而是阶级国家的实现。因此,你基本上想做的是: 类别国家/地区-带有属性名称等。 类City-具有属性名称等,并引用国家/地区表中的objectId
我不完全理解您试图做什么,但一般来说,API的限制因素是您通过网络发送的数据。因此,您应该考虑向API发送请求,只需要您真正需要的数据 当然,由于TCP开销、连接建立等原因,两个请求比只有一个具有较大数据的请求的成本更高。在大多数情况下,这可能并不重要。所以你可以用任何一种方法 但是,如果您仍然需要查询中的数据来继续,我建议您将其合并到一个查询中 编辑 因此,您想知道如何组织数据。这完全取决于你。我不认为这有什么区别。但是,使用第二种方法,您没有标准化的数据。也就是说,在不太可能但可能的情况下,您要重命名一个国家,您必须在每一行都这样做,这是非常容易出错的 第一种方法并不是更好,因为一个特定的国家不是单一的阶级,而是阶级国家的实现。因此,你基本上想做的是: 类别国家/地区-带有属性名称等。 类City-具有属性名称等,并引用国家/地区表中的objectId
通过采用第一种方法,您将在Parse中为每个国家创建一个新类,这将是一个需要维护的噩梦,尤其是当您的国家列表是动态的时 在性能方面,我认为这两种方法的查询时间不会有显著差异。所以这是个人偏好的问题
希望这有帮助 采用第一种方法,您将在Parse中为每个国家创建一个新类,这将是一个需要维护的噩梦,尤其是当您的国家列表是动态的时 在性能方面,我认为这两种方法的查询时间不会有显著差异。所以这是个人偏好的问题
希望这有帮助 请看我的编辑来更具体地定义我的问题,我已经在底部添加了代码来澄清我编辑的文章。如果有任何不清楚的地方,请告诉我。请查看我的编辑以更具体地定义我的问题,我在底部添加了代码以澄清我编辑的帖子。如果有什么不清楚的地方,请告诉我。您的代码有点混乱。每个国家都有Parse课程吗?你在用这段代码“var query=pfquerycassname:queryCountry”做什么?是的,目前每个国家都有一个parse类。我使用的是swift,所以在这段代码中,我将查询定义为PFQuery,使用的类名是我感兴趣的任何国家的名称。基本上,用户跟踪他们自己的位置,然后他们还可以看到还有谁在他们的位置签入,而查询所指的正是这一部分。
我希望这会有帮助。你的代码有点混乱。每个国家都有Parse课程吗?你在用这段代码“var query=pfquerycassname:queryCountry”做什么?是的,目前每个国家都有一个parse类。我使用的是swift,所以在这段代码中,我将查询定义为PFQuery,使用的类名是我感兴趣的任何国家的名称。基本上,用户跟踪他们自己的位置,然后他们还可以看到还有谁在他们的位置签入,而查询所指的正是这一部分。我希望这有帮助。
var query = PFQuery(classname: "Locations")
query.whereKey("Country", equalTo: queryCountry)
query.whereKey("City", equalTo: queryCity)
query.findObjectsInBackgroundWithBlock()