我正在使用Swift tvOS atm进行测试。 我遇到了一个问题,我不确定如何解决这个问题。 我的应用程序拥有10.000行(7.5mb)的CloudKit数据库 从CloudKit获取此数据大约需要7.5分钟。 (在每个应用程序启动或tvOS清除缓存时构建的时间太长。)
这里最好的做法是什么?
我想到了一些事情:
任何想法都会受到赞赏。
答案 0 :(得分:0)
我猜你的数据是一种参考数据库,它不会经常改变,但确实有更新生命周期。我建议创建一个非规范化的密钥列表,并仅下载最初作为本地数据结构中的占位符(内存,缓存或其他)。然后,您可以从CloudKit请求异步下载以在后台获取其余数据,并对您需要在给定时刻实际显示/使用的数据执行“按需”短查询。
如果您有任何使用模式可以让您预测在不久的将来需要哪个数据,那么这也可以用来更有效地预取信息。这可能意味着包含比初始下载中的密钥更多的内容,因此您需要查看可以达到最佳平衡的位置。