sqlite3 是不是在使用之前将整个数据库读入内存?
Posted
技术标签:
【中文标题】sqlite3 是不是在使用之前将整个数据库读入内存?【英文标题】:Does sqlite3 read the entire DB into memory before it can be used?sqlite3 是否在使用之前将整个数据库读入内存? 【发布时间】:2018-07-31 21:22:06 【问题描述】:sqlite3 是否需要在运行查询之前将整个 sqlite DB 读入内存? IOW,我是否限制了基于可用内存的数据库大小?
换一种说法,SQLite3 与 db 文件的工作方式是否与 postgres 之类的数据库与它的数据库文件的工作方式相同......在特定文件/页面中搜索记录,诸如此类。或者 SQLite 是否需要将整个 db 文件读入内存才能搜索特定的东西?
我一直觉得是后者。但我可能错了。
【问题讨论】:
【参考方案1】:除非您使用的是in-memory database,否则不会。
【讨论】:
“内存数据库”的链接听起来像是只存在于内存中的数据库(没有对应的文件 = 数据库)。我将把我原来的问题扩充得更具体。以上是关于sqlite3 是不是在使用之前将整个数据库读入内存?的主要内容,如果未能解决你的问题,请参考以下文章
如何将加载 .sql 或 .csv 文件导入 SQLite?
我可以通过索引访问 Parquet 文件而不将整个文件读入内存吗?