iOS应用程序中的数据库:Sqlite vs XML + XPath?

时间:2013-04-19 07:56:06

标签: ios xml sqlite xpath nsxmlparser

我的应用需要读取从SQL数据库导出的一些数据。除了阅读之外,应用程序还应查询数据库以查找不同数据之间的关系。 潜在地,数据量可能非常大。 当然,一切都应该是响应性的,而不是对用户体验产生负面影响。

这是我的疑问:我打算以XML格式导出数据库并使用XPath运行查询,但我并不是100%确定这种方法足够有效,特别是如果在数据库大约有数千个。

你能告诉我有关iOS中XPath的效率和性能的信息吗?这对于大型XML数据库来说是一个很好的解决方案吗?

Sqlite会更好,更有效吗?通过使用Sqlite,我冒着让我的应用程序沉重的风险吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

我的许多iOS应用程序都使用存储在SQLite数据库中的数据。我对SQLite数据库非常信任。

我的一些数据库在表中有超过30000个元素,应用程序会根据条件进行复杂查询,例如过滤/分组。这很快。

创建SQLite数据的最佳方法是从原始数据库导出为CSV并在新的SQLite数据库中导入数据。 You can find an example here.

答案 1 :(得分:1)

你绝对应该在iOS应用程序中使用SQLite而不是XML。我会为这样的数据库推荐最好的包装器:https://github.com/ccgus/fmdb 使用FMDB +在后台线程中进行查询时,即使使用大数据库,也不会影响应用程序的性能。