为什么有人需要内存数据库?

Bra*_*low 24 database in-memory-database

我读到一些数据库可以在内存中使用,但无法想到有人想要使用此功能的原因.我总是使用数据库来保存数据和内存缓存以便快速访问.

Jac*_*zny 17

缓存也是一种数据库,就像文件系统一样."内存缓存"只是内存数据库的特定应用程序,一些内存数据库专门用作内存缓存.

内存数据库的其他用途已经包含在其他答案中,但我也要列举其用途:

  1. 内存缓存.通常会使用专门用于该用途的数据库系统(可能称为"内存缓存"而不是"数据库").
  2. 测试与数据库相关的代码.在这种情况下,通常会使用某些通用数据库系统的"内存中"模式,但也可以使用专用的"内存中"数据库来替换其他"磁盘上"数据库,以便更快地进行测试.
  3. 复杂的数据操作.内存中的SQL数据库通常以这种方式使用.SQL是一种很好的数据操作工具,有时在计算最终结果时无需在磁盘上写入数据.
  4. 存储瞬态运行时状态.有些应用程序需要将其状态存储在某种数据库中,但不需要在应用程序重启时保留它.想想某种流程管理器 - 它需要跟踪运行的子流程,但只要应用程序和子流程运行,该数据才有效.


R0M*_*RMY 15

常见的用例是运行单元/集成测试.

您并不真正关心在每次测试运行之间保持数据,并且您希望测试尽可能快地运行(以鼓励人们经常进行测试).托管正在处理的数据库使您可以非常快速地访问数据.