I have done a simple comparison of the performance of the 10.2 release
compared to 10.1.2 using some simple performance clients.
Enclosed are graphs showing the difference in performance between
Derby 10.1.2 and Derby 10.2.1.3 beta for single-record select
transactions (1 primary key select followed by a commit) and "TPC-B
like" transactions (3 updates, 1 insert and 1 select) for embedded and
client-server configurations. The highlights are:
Select-operations:
-Client-server: between 78% (1 client) and 30% (16 clients)
improvement in throughput (and similarly for response time)
-Embedded: no improvement in performance
"TPC-B like" load:
-Client-server: between 15% (1 client) and 8% (16 clients) improvement
in throughput
-Embedded: from 0% (1 client) to about 5% (16 clients) improvement
in throughput
I think these improvements are mainly a result of the reduced number
of roundtrips between the client and server when executing queries and
improvements in CPU usage in the network server code.
The tests were run using two dual-CPU 2.4 GHz AMD Opteron servers.
To give an indication of where we are for some other types of load I am
including some numbers from a single run of the nightly performance
regression report (note that these uses 10.1.1 as baseline and that
there have been an OS upgrade since the baseline was done which might
influence on the numbers):
----Report: Embedded (16 clients)-----------------------------
10.3 Baseline (10.1.1)
TPC-B : 1413.4 tps 1291.4(+9.4%)
TPC-B, no disk write cache : 473.9 tps 418.7(+13.2%)
Single record insert : 3176.2 tps 2892.2(+9.8%)
Single record select : 9826.0 tps 9905.9(-0.8%)
Single record update : 3294.3 tps 3042.6(+8.3%)
Single record delete : 3560.2 tps 3425.9(+3.9%)
S.R. insert, secondary index : 2604.8 tps 2263.5(+15.1%)
S.R. select, secondary index : 9374.4 tps 9251.5(+1.3%)
S.R. update, secondary index : 3366.8 tps 2986.6(+12.7%)
S.R. delete, secondary index : 2762.6 tps 2483.4(+11.2%)
-----Report: Client/server (16 clients)------------------------
10.3 Baseline (10.1.1)
TPC-B : 1207.3 tps 1009.3(+19.6%)
Single record insert : 2870.5 tps 2550.7(+12.5%)
Single record select : 7947.0 tps 6073.3(+30.9%)
Single record update : 3095.3 tps 2641.9(+17.2%)
Single record delete : 3146.9 tps 2865.2(+9.8%)
For more data from the nightly regression test:
http://home.online.no/~olmsan/derby/perf/
Regards,
Olav