将整个SQLite数据库加载到RAM中以提高性能

时间:2016-12-12 23:11:18

标签: android sqlite

我的应用程序有一个大的SQLite数据库(大约100MB)。此数据库是只读的,永远不会写入。使用数据库的性能很不错,因为我确保大多数查询都有备份它们的索引。但是,我想通过将整个数据库缓存到RAM中来进一步加快速度,以避免磁盘访问。

这是可能的,如果可以,我该怎么办?

1 个答案:

答案 0 :(得分:0)

数据库文件是一个文件,因此您只需将其读取即可将其放入操作系统的文件缓存中。 (如果操作系统决定再次抛出数据,那么它可能有理由......)

对于磁盘数据库,SQLite需要检查其他进程是否已进行更改。为避免这种情况,您可以使用 PRAGMA locking_mode = EXCLUSIVE。但是,差异可能无法衡量。