Database 内存中的数据库是否也有文件系统组件?
我正在使用Datamapper,它允许您指定系统上数据库文件的路径,或者只指定字符串“memory”,然后使用“in memory”数据库。然而,我不知道这意味着什么 “内存中”数据库是纯粹基于内存的还是在某个时候被序列化到文件系统 内存数据库的好处是什么Database 内存中的数据库是否也有文件系统组件?,database,sqlite,in-memory,Database,Sqlite,In Memory,我正在使用Datamapper,它允许您指定系统上数据库文件的路径,或者只指定字符串“memory”,然后使用“in memory”数据库。然而,我不知道这意味着什么 “内存中”数据库是纯粹基于内存的还是在某个时候被序列化到文件系统 内存数据库的好处是什么 这仅仅是为了提高效率——通过消除文件系统访问的成本吗?SQLite拥有内存中数据库的原因并不是为了提高性能。实际上,拥有一个文件并不比跳过它慢多少,除非内存不足。它实际上主要用于临时缓存或测试。例如,您可以使用内存中的db进行单元测试,这样您
这仅仅是为了提高效率——通过消除文件系统访问的成本吗?SQLite拥有内存中数据库的原因并不是为了提高性能。实际上,拥有一个文件并不比跳过它慢多少,除非内存不足。它实际上主要用于临时缓存或测试。例如,您可以使用内存中的db进行单元测试,这样您就不会在生产数据上走动。如果需要SQL功能,也可以将其用作memcache的替代品。基本上,它就在那里,所以如果不需要,您不必保存数据。来自: 如果文件名为“:memory:”,则 私有、临时内存数据库 为连接创建的。这 内存中的数据库将在 数据库连接已关闭
是的,谢谢,我偶然在我的根目录中找到了它。由于某种原因,它没有出现在我的任何搜索中。不知何故,Datamapper忽略了我在安装说明中给出的路径,只是将其转储到根目录中。我想我给它的路径是从文件系统根目录而不是项目根目录,它无法从根文件夹中找到/db/文件夹,所以它只是把它放在根目录中。谢谢你的提示。