Commit Graph

6 Commits (ace16ce575bb298305f0fe4529f4f0cf123566bf)

Author SHA1 Message Date
Rogier 98fa76bb6b Minor statistics fix to leveldb backend
(And a minor edit to README.rst)
2014-05-22 10:41:48 +02:00
Rogier c692d3d652 Improvements to database code & some small optimisations 2014-05-22 10:32:12 +02:00
Rogier 813d7ed543 Remove leveldb block-id cache
It was not used anymore after commit ecbe59 (Optimize database
access - load only blocks that are needed)
2014-03-26 08:57:45 +01:00
Rogier 10e6a746cd Database performance tweaks
Added the option to bulk load and cache entire world rows at
a time when using sqlite. Caching is implemented in the
database class this time around.
Enabled using --sqlite-cacheworldrow on the command line.

This is essentially re-introduces the database access strategy
that was used originally, but as an option.

Currently, one block is read at a time from the database.
The original behavior was to read and cache one entire world
row at a time, irrespective of whether or not only a (small)
subsection of the world was being mapped.
Under some circumstances, in particular if the entire world is
mapped or a relatively large percentage of it (blocks-wise), the
bulk loading and caching may outperform the one-by-one strategy,
even though it usually loads many more blocks than are actually
needed.

It seems that leveldb won't benefit from any kind of caching or
bulk loading of blocks, so none was implemented.

Leveldb does compile now. Still not tested on a database :-(

Improved the database statistics (printed with --verbose).
2014-03-26 00:23:33 +01:00
Rogier ecbe59ac82 Optimize database access - load only blocks that are needed 2014-03-24 22:43:32 +01:00
Sfan5 393d7e2ac0 LevelDB support 2014-03-05 21:42:21 +01:00