$ pmvers DBI DBD::SQLite DB_File BerkeleyDB
DBI: 1.616
DBD::SQLite: 1.33
DB_File: 1.824
BerkeleyDB: 0.49
$ perl -MBerkeleyDB -le " print $BerkeleyDB::db_version
5.1
$ perl -MDB_File -le " print $DB_File::db_version "
5.1
DBD-SQLite-1.33 has #define SQLITE_VERSION "3.7.6.3"
Rate I SQLite I Hash (A) I Hash I B+Tree (A) I SQLite
+ 2 I B+Tree
I SQLite 10079/s -- -60% -62% -83% -8
+9% -90%
I Hash (A) 25263/s 151% -- -5% -57% -7
+2% -75%
I Hash 26478/s 163% 5% -- -55% -7
+0% -74%
I B+Tree (A) 58196/s 477% 130% 120% -- -3
+5% -42%
I SQLite 2 89419/s 787% 254% 238% 54%
+-- -12%
I B+Tree 101180/s 904% 301% 282% 74% 1
+3% --
Rate S SQLite S Hash(A) S Hash S B+Tree(A) S B+Tree
+S SQLite 2
S SQLite 16411/s -- -66% -72% -81% -82%
+ -85%
S Hash(A) 48038/s 193% -- -19% -45% -46%
+ -56%
S Hash 59055/s 260% 23% -- -32% -34%
+ -46%
S B+Tree(A) 87209/s 431% 82% 48% -- -2%
+ -21%
S B+Tree 89286/s 444% 86% 51% 2% --
+ -19%
S SQLite 2 109890/s 570% 129% 86% 26% 23%
+ --
bdb.hash.test :10469376
bdb.btree.test :13410304
bdb.hash.a.test :10616832
bdb.btree.a.test :7159808
sqlite.test :6668288
sqlite2.test :6668288
It is now possible to compile libdb with sqlite3 interface, and link DBD::SQLite against it
BerkeleyDB:SQL
performance and concurrency is superior to SQLite in write-intensive applications and heavy
workloads, allowing it to get higher TPS throughput
4000 transactions per-second (TPS) scaling well up to 100
connections, whereas SQLite remains constant at 500 TPS, |