【问题标题】:SQLite or Core Data for large database with only queriesSQLite 或 Core Data 用于只有查询的大型数据库
【发布时间】:2013-01-17 12:29:01
【问题描述】:

基本上,我正在编写一个 iOS 应用程序,它使用一个根本不会被编辑的巨大数据库。在这两者之间,我正在寻找更快的查询速度。在我的开发生涯中,我从未使用过任何 SQLite 或 Core Data,所以在我开始写任何东西之前,我想找出其中哪一个(或者是否有任何替代方案)更适合我的任务。

任何性能数据或建议将不胜感激。

编辑: SQLite 和 Core Data 都无法提供我需要的性能(尽管 SQLite 的性能更好)。我决定使用 SQLite(使用 FMDB)并使用多线程来消除多次查询时出现的卡顿。

【问题讨论】:

    标签: iphone ios cocoa-touch sqlite core-data


    【解决方案1】:

    这取决于你想如何管理你的数据,如果你想要一个关系数据库,使用 sqlite,如果你想将模型对象(在模型-视图-控制器设计模式的意义上)保存到一个文件中并获取他们又回来了,使用 Core Data。

    根据我的说法,对于大型数据库来说,两者都是相同的,在 sqlite 中,您可以使用事务来更快地获取大量数据。

    This 链接可能会更好地帮助您。

    希望对你有所帮助..

    【讨论】:

    • 您提供的链接中的表格回答了我的问题。谢谢。
    【解决方案2】:

    对我而言,我将始终尽可能使用核心数据。 因为它易于使用和管理。 有关更多信息,您可以查看这些链接

    1. Core Data vs SQLite 3
    2. Use CoreData or SQLite on iPhone

    这里是 Ray Wenderlich 关于核心数据的好教程

    1. Core Data on iOS 5 Tutorial: Getting Started
    2. Core Data Tutorial: How To Preload/Import Existing Data

    【讨论】:

    • 问题是我只需要读取数据,大部分答案并没有具体回答。
    • 读取或写入数据都不会生效。这些答案适用于使用(通过使用它意味着读取或写入或两者兼而有之)核心数据或 sqlite。
    【解决方案3】:

    如果您关心的是性能,Core Data 很好,可以有效地优化内存。 尽管请查看可以帮助您的页面Efficient storageConcerning CoreData vs SqlLite。希望这能有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-22
      • 2014-01-29
      • 1970-01-01
      • 1970-01-01
      • 2011-09-13
      • 2011-08-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多