内存数据库有哪些?
原创

内存数据库有哪些?

好文

热门回答:

内存数据库是相对于磁盘数据库来说的。我们都知道我们经常使用的关系型数据库。比如MySQL。它的数据文件最终是存储到磁盘上的。而内存数据库则是将所有的数据存储在内存中。磁盘和内存在访问速率上不是一个量级的。完全没有可比性。

应用场景

缓存数据:将高频访问的数据通过一定的机制加载到内存中。减少应用与数据库的连接。极大的提高了应用的性能;

内存计算:如果你的数据在内存中。那么你可以充分利用CPU的资源去做数据的计算、聚合、查询。而不用担心数据库是否能承受你的SQL查询。

主流的内存数据库

关系型内存数据库:H2、Apache Ignite、SQLite

H2:支持嵌入式。服务器和集群模式。支持内存数据库。纯Java开发


Key-Value内存数据库:redis、Memcached


传统数据库的内存数据库引擎:

MySQL Memory Engine

SQL Server 2016 In-Memory OLTP

传统数据库提供的内存数据库。将磁盘数据加载到内存中。利用查询引擎操作内存数据

总结

以上是个人整理的一些内存数据库。都是我们平常业务开发时候多少都有用到的内存数据库。了解每一种内存数据库的特性。结合它们的优缺点并应用于不同的业务场景。才是正确的编码之道。

内存数据库不是银弹。他也不能代替传统数据库。只有内存数据库与传统数据库(磁盘数据库)强强联手、互相补充才能发挥出数据存储技术的强大威力!

其他观点:

关系型 Mongodb、Hana、H2;

MongoDB 是一个基于分布式文件存储的数据库。介于关系型和非关系型之间。数据以文档的形式存在。文档以BSON格式存放。

Hana是德国SAP公司的产品。非开源、价格比较昂贵并且对服务器硬件配置要求比较高。国内用的比较少。

H2开源产品。优点小而快、查询语法简单。嵌入式和单独部署皆可。

KV型 Redis、Memcache、 Ignite、Guavacache;

Redis常被用做分布式缓存组件。支持的数据结构比较丰富。集群架构部署性能更强悍。

Memcache仅仅是作为第三方缓存组件使用。不能称之为数据库。支持的数据结构单一。支持集群部署。

Apache Ignite从名字就能看的出来。Apache的开源分布式产品。支持内嵌也支持单独部署。功能挺强大。有兴趣的可以看下官网。JVM堆外内存。

Guavacache仅仅是作为项目内部缓存使用。不能称之为数据库。内嵌式。占用JVM堆内存。

以上就是服务器端常用的内存数据库。大多数对持久化都支持的挺好;

但是一般关系型的用来存储数据并且持久化。KV型的用来做缓存。两者搭配来用。

以上仅个人观点。欢迎大家评论区留言指正。

其他观点:

1。SQLITE是一个小型的C程序库。实现了独立的。可嵌入的。零配置的SQL数据库引擎。

2。ORACLE内存数据库系列BERKELEY DB和TIMES TEN。前者只支持嵌入式内存数据。后者是独立的内存优化数据库。

3。EXTREMEDB内存式实时数据库是为实时系统及嵌入式系统而特别设计的数据库。

4。H2 DATABASE 是THOMAS MUELLER提供的一个开源的。纯JAVA实现的关系数据库。

您还感兴趣的文章推荐

以上就是由互联网推广工程师 网创网 整理编辑的,如果觉得有帮助欢迎收藏转发~

分享到 :
相关推荐

回复 擦掉眼泪我依然是王 取消回复

登录... 后才能评论

评论(2)

  • 陌上柳絮倾城雪 永久VIP 2022年12月27日 09:40:02

    数据库,内存,数据,关系,缓存,是一个,磁盘,开源,分布式,集群

  • 旧日梦 永久VIP 2022年12月27日 09:40:02

    没想到大家都对内存数据库有哪些?感兴趣,不过这这篇解答确实也是太好了

  • 擦掉眼泪我依然是王 永久VIP 2022年12月27日 09:40:02

    内存数据库是相对于磁盘数据库来说的。我们都知道我们经常使用的关系型数据库。比如MySQL。它的数据文件最终是存储到磁盘上