温馨提示:本文翻译自stackoverflow.com,查看原文请点击:sql - in-memory database in Python
database python sql in-memory-database

sql - Python中的内存数据库

发布于 2020-03-31 23:13:15

我正在使用Python在大型数据库上进行一些查询,以从数据库中获取一些统计信息。我希望这些统计信息在内存中,以便其他程序可以使用它们而无需访问数据库。

我在考虑如何构建它们,并尝试设置一些复杂的嵌套字典后,我意识到一个好的表示形式将是一个SQL表。不过,我不想将数据存储回持久性数据库中。是否有支持使用SQL语法查询数据的SQL数据库的内存实现?

查看更多

提问者
Claudiu
被浏览
61
2014-03-07 23:18

SQLite3可能有效。Python接口确实支持 SQLite3 C API提供的内存中实现。

从规格:

您还可以提供特殊名称:memory:在RAM中创建数据库。

交易也相对便宜,具体取决于您在做什么。要开始,只需:

import sqlite3
conn = sqlite3.connect(':memory:')

然后,您可以像使用常规数据库一样继续进行。

根据您的数据-如果可以使用键/值(字符串,散列,列表,集合,排序集合等)获取数据-Redis可能是另一种可供探索的选择(正如您提到的要与其他程序共享)。