我对ios很新,并且使用服务器,请原谅我。
我正在构建一个用于研究的ios应用程序。我需要监视用户执行的操作,然后将其推送到服务器进行分析(是的,具有用户和IRB权限)。在客户端,我需要保留相当多的数据,除非从服务器提取更新版本,然后是最少量的用户特定数据,否则这些数据不会真正改变。我收集的大部分数据都需要推送到服务器进行分析,然后才能从客户端删除。
我正在努力弄清楚我需要使用哪种数据存储,特别是因为我不太确定服务器进程的推送和工作是如何工作的。使用核心数据是否有意义? XML? SQLite的?我喜欢核心数据的想法,但我不确定当我需要向服务器发送大量数据并从服务器发送大量数据时会遇到什么样的问题。我想我可能需要以不同的形式发送数据,而不是存储在任何一端 - 所以在转换数据的过程中我可能遇到什么样的开销?是否有一个很好的格式来保存那些在两端都能很好地用于发送数据的东西?
你可以说,我可以使用一些建议。谢谢!
答案 0 :(得分:2)
核心数据可能是最佳选择。
Core Data或SQLite很可能对这类应用程序很有用。 Core Data实际上在幕后使用SQLite。但Core Data比SQLite有一些优势,并且确实是首选的iOS数据库技术。
关于您的性能问题,我不担心。核心数据(或SQLite)足够快。服务器的带宽将是门控因素,所以你应该没问题。
听起来您的数据结构可能足够丰富或足够大,我不会考虑其他方法(plists,NSUserDefaults
,其他文件格式等。)