什么是H2数据库

H2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库。

H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个十分方便的web控制台用于操作和管理数据库内容。H2还提供兼容模式,可以兼容一些主流的数据库,因此采用H2作为开发期的数据库非常方便。

H2最大的用途在于可以同应用程序打包在一起发布,这样可以非常方便地存储少量结构化数据。

它的另一个用途是用于单元测试。启动速度快,而且可以关闭持久化功能,每一个用例执行完随即还原到初始状态。

H2的第三个用处是作为缓存,作为NoSQL的一个补充。当某些场景下数据模型必须为关系型,可以拿它当Memcached使,作为后端MySQL/Oracle的一个缓冲层,缓存一些不经常变化但需要频繁访问的数据,比如字典表、权限表。不过这样系统架构就会比较复杂了。

H2是一个开源的、纯Java实现的关系型数据库。支持网络版和嵌入版本,另外还支持二者的混合应用。H2具有较好的兼容性,支持相当标准的sql标准。H2使用时非常简单,只有一个jar文件,可以直接嵌入到应用项目中。

H2的优势:

h2采用纯Java编写,因此不受平台的限制。只有一个jar文件,十分适合作为嵌入式数据库试用,提供了一个十分方便的web控制台用于操作和管理数据库内容。

H2支持三种不同的运行模式,以适用于更多不同的应用场景。

1、嵌入式模式:

嵌入式模式下,应用与H2运行于同一个JVM中,H2被应用启动。该模式也是性能最好的模式,也是官方推荐的模式。

2、服务器模式

服务器模式下,H2被H2 Server启动(独立于应用的JVM),应用与数据分离,应用使用远程连接(如JDBC)访问数据库。类似于传统数据库的部署,服务器可以与应用部署与同一台机器,也可以部署与另一台机器。

实际上,H2 Server本身也是使用嵌入式模式来启动运行H2 Database的。显然,由于服务器模式是通过远程连接访问数据,其性能也要低于嵌入式模式。

3、混合模式

该模式是嵌入式模式与混合模式的融合。一个应用启动嵌入式模式的H2 Database,其他应用可以将其作为服务器模式来远程访问

H2是一个短小精干的嵌入式数据库引擎,主要的特性包括:

1、免费、开源、快速;

2、嵌入式的数据库服务器,支持集群;

3、提供JDBC、ODBC访问接口,提供基于浏览器控制台管理程序;

4、Java编写,可使用GCJ和IKVM.NET编译;

5、短小精干的软件,1M左右。

几个嵌入式数据库的对比:

猜你喜欢

转载自blog.csdn.net/weixin_33207551/article/details/86536048