如果数据库大小大于2千兆字节,SQLite性能会降低吗?
去年,当我在他们的网站上查询SQLite时,build议的SQLite数据库大小是2千兆字节。 但现在,我再也找不到这个build议了。
那么有没有人试图使用最新版本的大于2GB的SQLite数据库呢? SQLiteperformance如何?
PS:我想制作一个移动应用程序,需要在本地工作的大数据库(例如存储维基百科文章)。
没有2 GB的限制。
SQLite数据库文件的最大大小约为140 TB。
在手机上,存储容量(几GB)将限制您的数据库文件大小,而内存大小将限制您可以从查询中检索多less数据。 此外,Android游标的结果限制为1 MB。
数据库大小本身不会影响你的性能。 只要他们访问的数据超过数据库的页面caching(默认为2 MB),您的查询就会很快。
通常,数据库越大,数据越多。 你有更多的数据,更长的search可能需要。 他们不需要,这取决于search。
至于插入,如果你在一个表上有很多索引,它们可能需要更长的时间。 重build索引可能需要一些时间,所以期望插入速度随着数据量的下降。
更新也可能比较慢 – 必须首先find合适的行(search),然后必须更改值(可能会触发索引重build)。
我从经验告诉你:如果你期望在你的数据库中有很多数据,考虑把它分成多个数据库。 如果每天收集您的数据并且您可以为每一天创build一个数据库,那么这将起作用。 可能会使您的search代码更复杂,但会加速有限的search/