可以将sqlite加载10M数据到内存中

时间:2010-02-02 08:48:15

标签: sqlite

如果有可能,怎么样?

我想加快sqlite

中的读数(不是写作)

由于

2 个答案:

答案 0 :(得分:21)

SQLite将数据加载到页面内存中。默认页面大小为1024字节。您可以使用此命令更改页面大小。

PRAGMA page_size = bytes;

但是您必须在创建数据库之前执行此操作(或者在3.5.8中,您可以在发出新的页面大小编译指示后运行VACUUM来更改它。)

缓存基于页数。默认缓存大小为2000页。您可以使用此命令更改它。

PRAGMA cache_size = Number-of-pages;

所以要在内存中存储10MB的数据,要么将页面大小增加到5120,要么将缓存大小增加到10000.

有关pragma的更多信息是here

答案 1 :(得分:5)

请注意,从sqlite 3.12.0版开始,页面大小已增加到4096字节

https://www.sqlite.org/pragma.html#pragma_page_size