我有一个使用parse作为数据库的应用程序,并有以下表格。
用户表:另外还有parse作为默认类提供的用户技能,用户地址,myJobs(这是Job Class的对象ID数组,我发布的作业。), myAppliedJobs(这是一个ApplicationJob类的对象ID数组,我已应用的作业) 工作表:用于保存工作数据的表格,如工作名称,所需技能,工作地点等 AppliedJob :通过指针添加用户和作业之间的映射以及一些其他信息,例如备注,工资变化。
现在,在一个屏幕中,我列出了我发布的所有工作。我可以轻松搞定这些工作。但是,如果需要的话,这需要额外的电话来进行提取。
然后我可以选择查看已应用于我的作业的所有申请人,我通过在jobid的帮助下查询应用的作业类来获取应用的作业对象数组。现在在这个数组的帮助下,我获得了所有用户ID,并通过后台全部获取来获取它们。
这增加了每秒呼叫次数,这是我减少的主要目标。请给我一些见解。
答案 0 :(得分:2)
首先尝试设想您将要执行的各种查询,然后围绕它设计您的架构。我建议在NoSQL查询而不是SQL查询(和模式)方面考虑更多。
在您的情况下,如果您在Job表中添加了一个名为Applicants的新列,则可以轻松避免昂贵的查询。这只是一个指向已申请作业的所有AppliedJob记录的指针数组。保存作业应用程序时,也会更新此数组(最好是在云代码中的afterSave挂钩中)。
然后,在获取作业记录时,使用[includeKey: @"Applicants"];
并使用您的作业为您提取所有AppliedJob记录。