基本上,我正在编写一个 iOS 应用程序,它使用一个根本不会被编辑的巨大数据库。在这两者之间,我正在寻找更快的查询速度。在我的开发生涯中,我从未使用过任何 SQLite 或 Core Data,所以在我开始写任何东西之前,我想找出其中哪些(或任何替代方案)更适合我的任务。
任何性能数据或建议将不胜感激。
编辑: SQLite 和 Core Data 都无法提供我需要的性能(尽管 SQLite 性能更好)。我决定使用 SQLite(使用 FMDB)并使用多线程来消除多次查询时出现的卡顿。
基本上,我正在编写一个 iOS 应用程序,它使用一个根本不会被编辑的巨大数据库。在这两者之间,我正在寻找更快的查询速度。在我的开发生涯中,我从未使用过任何 SQLite 或 Core Data,所以在我开始写任何东西之前,我想找出其中哪些(或任何替代方案)更适合我的任务。
任何性能数据或建议将不胜感激。
编辑: SQLite 和 Core Data 都无法提供我需要的性能(尽管 SQLite 性能更好)。我决定使用 SQLite(使用 FMDB)并使用多线程来消除多次查询时出现的卡顿。
这取决于你想如何管理你的数据,如果你想要一个关系数据库,使用 sqlite,如果你想将模型对象(在模型-视图-控制器设计模式的意义上)保存到文件中并再次取回它们,使用核心数据。
据我说,对于大型数据库来说,两者都是相同的,在 sqlite 中,您可以使用事务来更快地获取大量数据。
此链接可能会更好地帮助您。
希望这可以帮助你..
对我来说,我会尽可能地使用核心数据。因为它易于使用和管理。有关更多信息,您可以查看这些链接
这是 Ray Wenderlich 关于核心数据的好教程
如果你关心的是性能,Core Data 很好,可以有效地优化内存。尽管请查看此页面,这些页面可以帮助您高效存储和关注 CoreData 与 SqlLite。希望这能有所帮助。