Iphone 初学者数据库问题

Iphone 初学者数据库问题,iphone,objective-c,ios,database,Iphone,Objective C,Ios,Database,我有一个iOS应用程序,可以在tableView中显示内容。我添加了一个与我的数据库交互的“喜欢/不喜欢”特性(我使用Parse.com)。每次有人喜欢/不喜欢某个内容时,都会将细节发送到解析数据库。对于每个内容,我想计算并显示“喜欢”与“喜欢”+“不喜欢”的百分比。这是一个非常简单的数学问题,但我无法在tableView实际出现之前,对设计数据库表的最佳方法和计算每一部分内容的“喜欢”百分比的最有效方法进行思考 事实上,我的tableView的viewdiload中已经有一个循环,它将另一个数

我有一个iOS应用程序,可以在tableView中显示内容。我添加了一个与我的数据库交互的“喜欢/不喜欢”特性(我使用Parse.com)。每次有人喜欢/不喜欢某个内容时,都会将细节发送到解析数据库。对于每个内容,我想计算并显示“喜欢”与“喜欢”+“不喜欢”的百分比。这是一个非常简单的数学问题,但我无法在tableView实际出现之前,对设计数据库表的最佳方法和计算每一部分内容的“喜欢”百分比的最有效方法进行思考

事实上,我的tableView的
viewdiload
中已经有一个循环,它将另一个数据库表中的内容与“喜欢/不喜欢”表进行比较,以恢复用户的“喜欢/不喜欢”按钮状态(如果他们已经喜欢/不喜欢某个内容)

起初,我想在最初的
viewDidLoad
循环中创建一个数组。但是,使用
whereKey:equalTo:
类型的查询来查找每一个片段内容的喜欢/不喜欢的数量会花费很长时间。正如所预测的,它在
单元格中的速度也非常慢

最糟糕的情况是,我可以在服务器端进行这些计算,只需提取“喜欢”的百分比。然而,我想以某种方式在应用程序中实现这一点。我是一个完全的初学者,所以我可能在这方面完全错了

以下是我的数据库表的基础:

编辑:我已成功构建了一个服务器端程序,用于计算“喜欢”内容的用户百分比。我的应用程序在运行时从数据库中提取这个百分比。当用户“喜欢”某样东西时,为了使百分比变化更具响应性,我在本地计算了一个更新的百分比。这里的问题是,当用户退出应用程序并重新打开时,数据会重新加载。如果服务器端程序最近没有运行,应用程序将显示旧的“喜欢”百分比(尚未计算最新的百分比)。我看到的两种解决方案是:

  • 每1-3分钟运行一次服务器端程序
  • 当有人喜欢内容时,将更多数据发布到数据库中(这将涉及对每个“like”进行额外的数据库查询)

  • 我认为这两种选择对于我想要实现的目标来说都太昂贵了

    我建议将计算留给服务器端,并用应用程序中使用的信息进行响应。这将使您不必处理和解析传入的结果


    服务器上的处理能力比设备上的处理能力更强。

    谢谢您的帮助。请看我的编辑。我很感激你能提供的任何额外建议。