6.2 H2测试方案
6.2.1 测试环境
主机: 操作系统: Windows Server 2003 Enterprise Edition SP2;
CPU: Intel Dual-Core 2.5GHz;
内存: 3.99GB内存
测试目标版本:H2database 1.1.110
6.2.2 测试数据
测试数据库表employee结构如下
| 字段名 | 类型 |
| ID(PK) | Integer |
| Name | Varchar(20) |
| Age | Varchar(20) |
| departmentID | Varchar(20) |
测试数据库表department结构如下
| 字段名 | 类型 |
| DeptID(PK) | Integer |
| Dept | Varchar(20) |
| mangerID | Integer |
测试数据库表salary结构如下
| 字段名 | 类型 |
| ID(PK) | Integer |
| F1 | varchar(255) |
| F2 | varchar(255) |
| F3 | varchar(255) |
| F4 | varchar(255) |
| F5 | varchar(255) |
| F6 | varchar(255) |
| F7 | varchar(255) |
| F8 | varchar(255) |
| F9 | int |
6.2.2 测试过程
使用Java编写了测试工程,启动测试程序后:
l 50000条级别的测试:先分别插入到employee表、department表、alary表中50000、和1000、50000条数据,然后执行一系列的测试
l 100w条级别的测试:先分别插入到employee表、department表、alary表中1000000、和1000、1000000条数据,然后执行一系列的测试
6.2.3 测试结果
| 用例名 | 10w(条) | 100w(条) | 100w(条)10个并发线程 |
| 初始插入时间 | 5.43 | 50.47 |
|
| 初始插入内存 (KB) | 12376 | 12834 |
|
| 插入1条记录 | 0 | 0 |
|
| 插入5000条记录 | 0.4 | 0.39 | 2.95 |
| 查询1条记录(有索引) | 0 | 0 |
|
| 查询1条记录(无索引) | 0.71 | 6.95 |
|
| 查询5000条记录(有索引) | 0.015 | 0.1 | 0.7 |
| 查询1*5000条记录(有索引) |
| 0.23 | 1.26 |
| 查询5000条记录(无索引) | 0.73 | 7.2 |
|
| 查询全部记录 | 0.86 | 8.35 |
|
| 多表查询1条记录 | 0 | 0 |
|
| 多表查询5000条记录 | 0.016 | 0.016 |
|
| 更新1条记录(有索引) | 0 | 0 |
|
| 更新1条记录(无索引) | 0.45 | 4.62 |
|
| 更新5000条记录(有索引) | 0.16 | 0.18 | 2 |
| 更新1*5000条记录(有索引) |
| 0.15 | 1.7 |
| 更新5000条记录(无索引) | 0.62 | 5.1 |
|
| 删除1条记录(有索引) | 0 | 0 |
|
| 删除1条记录(无索引) | 0.68 | 6.6 |
|
| 删除5000条记录(有索引) | 0.1 | 0.12 | 1.1 |
| 删除1*5000条记录(有索引) |
| 0.13 | 0.9 |
| 删除5000条记录(无索引) | 0.77 | 6.95 |
|
| 嵌套查询(分组统计Group by) | 0.77 | 7.55 |
|
| 启动时间 | 0.11 | 0.2 |
|
测试结论:
优点:
1. 数据库小巧灵活;
2. 支持JDBC,对SQL支持良好,并支持内存模式;
3. 占用系统资源较少,启动较快;
4. 数据库支持并发访问;
5. 索引查询更新速度快;
缺点:
1. 大数量访问优势不明显,与常用数据库基本一致;
2. 无索引情况下速度较慢,与数据库的数据量成正比;
1674

被折叠的 条评论
为什么被折叠?



