常用内存数据库介绍(四) - titan - JavaEye技术网站

来源:百度文库 编辑:神马文学网 时间:2024/04/27 07:38:37
h2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库,官方网站:http://www.h2database.com/html/main.html。
它的主要特性是:
非常速的数据库引擎
开源、免费数据库
支持 JDBC和ODBC API,支持SQL
支持嵌入式,服务器和集群模式。支持内存数据库。
提供基于浏览器的管理控制台
整个应用本身只有1MB左右。
其他特性还包括
基于磁盘或内存的数据库、表,支持只读数据库、临时表。
两段式事务支持
支持多个连接。表级别的锁。
基于成本的优化,为复杂查询使用遗传算法,零管理。
滚动的、可修改的result set支持。支持大结果集、外部结果排序。
加密数据库(AES或XTEA),SHA-256密码加密。
性能比较(摘自h2database网站)

嵌入模式下H2的性能比较
Test Case
Unit
H2
HSQLDB
Derby
Simple: Init
ms
610
657
3187
Simple: Query (random)
ms
297
312
1828
Simple: Query (sequential)
ms
203
266
1766
Simple: Update (random)
ms
1078
1484
22031
Simple: Delete (sequential)
ms
234
281
7407
Simple: Memory Usage
MB
6
7
11
BenchA: Init
ms
859
438
4047
BenchA: Transactions
ms
5266
2875
17500
BenchA: Memory Usage
MB
9
14
10
BenchB: Init
ms
4016
2687
16875
BenchB: Transactions
ms
2609
3282
4250
BenchB: Memory Usage
MB
9
10
8
BenchC: Init
ms
891
594
5766
BenchC: Transactions
ms
4359
75438
11718
BenchC: Memory Usage
MB
9
18
9
Executed statements
#
594255
594255
594255
Total time
ms
20422
88314
96375
Statements per second
#
29098
6728
6166
.Net使用H2
嵌入式应用。有一个项目在为.Net使用H2,使用CLI重新编译H2。还没有深入关注。
ODBC。但性能一般。
4.5           其他内存数据库
包括Derby, HSQLDB等