Comparing HyperXtremeSQL™ with HSQLDB
HSQLDB is very fast. For many applications its speed is much
more than adequate. Yet HyperXtremeSQL™ is significantly faster than
HSQLDB in disk operations in the same memory allocation. With memory
tables, the advantage is not so much speed, but reduced use of memory.
^ TOP
Disk Engine Comparison
This set of CRUD (create, read, update, delete) tests is
performed in a single thread.
| |
|
HSQLDB timings |
HXSQL timings |
speedup |
| OPERATION |
rows |
time (ms) |
rows / s |
time |
rows / s |
|
| insert |
1,024,000 |
33000 |
|
27484 |
37256 |
1.2 |
| shutdown |
|
672
|
|
594 |
|
|
| reopen |
|
125
|
|
62 |
|
|
| count (index on id) |
1,024,000 |
8203
|
|
750 |
|
10,94 |
| select random id |
1,024,000 |
86344
|
|
13422 |
76286 |
6.43 |
| update with random id |
256,000 |
45188
|
|
9828 |
26045 |
4.6 |
| count (index on id) |
1,024,000 |
8203
|
|
563 |
|
14.57 |
| delete with random id |
128,000 |
13453
|
|
2422 |
52827 |
5.55 |
| count (index on id) |
896,000 |
7344
|
|
500 |
|
14.69 |
| shutdown |
|
2828 |
|
16375 |
|
|
| total test time |
|
|
|
72000 |
|
|
^ TOP
Details
In the above tests, the initial INSERT operations are
performed one by one in sequential key order (no batch mode is used). All
SELECT, UPDATE and DELETE tests consist of 1M, 256K or 128K separate
operations with auto commit, using a prepared statement but each
operation with a different, randomly selected key value. The tests are
intended to be tough and use a database access pattern that is similar
to a heavily loaded application server but far more random. The long
shutdown time shows a large amount of modified data has been cached and
is written out fully.
Tests were performd on a dual core 2.5Mhz system with a 10,000
RPM sata disk.