Open topic with navigation
IO Log File Statistics
To get statistically meaningful results from the benchmark it is
necessary that the I/O log file contains enough operations of each
type. To get an overview on how well your I/O log file represents each
operation, you can use the class LogStatistics in
com.db4o.bench.logging.statistics. Given the file name of an I/O log file LogStatistics will produce an HTML file that contains a table with statistics:
|
|
Count |
|
% |
|
Bytes |
|
% |
Reads |
|
664'631 |
|
30.64 |
|
52'214'278 |
|
70.83 |
Writes |
|
360'001 |
|
16.6 |
|
21'508'576 |
|
29.17 |
Seeks |
|
1'024'632 |
|
47.23 |
|
|
Syncs |
|
120'005 |
|
5.53 |
|
|
|
Total |
|
2'169'269 |
|
|
|
73'722'854 |
|
Average byte count per read: 78 Average byte count per write: 59 This is the output of LogStatistics when run with the file generated by
CrudApplication with 30k objects, which is the default setting for the
Ant target run.benchmark.medium. Typically
sync operations are much rarer than seek operations. If you look at the
source of CrudApplication you'll see that extra commit calls when
deleting objects. These were inserted to to get a higher sync count
in the I/O log. It's possible that you also have to "tune" your
application in a similar way to get good statistics.