SQLite冷启动大数据会导致性能非常差

时间:2015-11-18 08:03:48

标签: sqlite

情景1

  • 创建新数据库。
  • 创建架构。所有表都使用INTEGER主键。
  • 创建新交易。
  • 插入100万行。
  • 使用参数化的缓存语句,使用PRIMARY键删除每一行。
  • 提交

场景2

  • 打开已包含100万行的数据库。
  • 创建新交易。
  • 使用参数化的缓存语句,使用PRIMARY键删除每一行。
  • 提交

在普通硬盘上使用i7,32GB的RAM在桌面上运行测试。最新版本的sqlite。

问题 在场景1的情况下,以惊人的速率发生删除需要几秒钟。在场景2的情况下,删除需要更多10-13K /秒。

与热数据库相比,现有100万行的冷启动数据库性能非常差。 Profiler显示I / O成本最差的表现功能。所以问题是如何加速冷启动案例。我希望这个应用程序也可以在iOS上运行,但删除在现实世界中不会那么激进,但在某些情况下由于级联效应可能会达到100K。

我可以发布更多详细信息和数字,但是有没有人遇到与sqlite类似的问题?

0 个答案:

没有答案