如果内存数据库的速度和它们声称的一样快,为什么它们不常用?
答案 0 :(得分:0)
可能是因为一个或多个:
答案 1 :(得分:0)
内存数据库不常用的一个主要原因是成本。正如您所说,出于显而易见的原因,内存数据库通常比磁盘驻留数据库快一个数量级。但是,RAM也比硬盘驱动器贵得多,因此不适用于大型数据库。话虽如此,随着RAM内存数据库变得更便宜,今天对企业来说更具可行性。
另一个原因是内存数据库通常不符合ACID。这是因为内存是易失性的,并且诸如功率损耗之类的无法预料的事件可能导致数据完全丢失。由于这对于绝大多数用例来说是不可接受的,因此大多数内存数据库最终都会利用磁盘来保存数据。当然,这最终会通过重新引入磁盘I / O作为性能瓶颈来破坏内存数据库的一些好处。
无论如何,随着RAM变得更便宜,内存数据库可能会占据主导地位。两者之间的性能差异太大而不容忽视。知道了这一点,多家供应商已经将他们的帽子投入内存空间,例如Oracle TimesTen,SAP Hana和其他许多人。此外,像Altibase这样的公司正在提供“混合”DBMS系统,它包含内存和磁盘驻留组件。
您可能希望阅读这些内存中的产品,以便更好地了解内存数据库。
http://www.oracle.com/technetwork/database/database-technologies/timesten/overview/index.html
http://altibase.com/in-memory-database-hybrid-products/hdbtm-hybrid-dbms/