SQLite3 ported to use LMDB instead of its original Btree code.
To set the LMDB mapsize in pages, use:
Using tool/speedtest.tcl in the SQLite source tree, the time to insert 1000 records on my laptop SSD was 22.42 seconds using the original code, and only 1.06 seconds using LMDB. Both tests were run 3 times, with results averaged. The actual runtimes were
Original MDB 23.14 1.07 22.02 1.05 22.12 1.08
Tested at version 22.214.171.124.
More recent test results using 3.7.17 are on pastebin, summarized below:
|Operation times in microseconds, lower is better|
|Sync Seq Write||8175.371||6171.233|
|Sync Rand Write||8308.706||6231.249|
|Batch Seq Write||7.402||7.087|
|Batch Rand Write||18.847||13.754|
|Rev Seq Read||7.456||1.531|