Added Database plugins -- feedback?
robb at canfield.com
Sun Aug 26 23:30:44 UTC 2007
During some profiling to find out why backups were slower than I thought
they should be. I found SQLite responsible for a lot of overhead. Since
the Brackup tables are all simple key=value pairs I tried DBM file
support. For GDBM the results were 1:45 vs 1:17 (favoring GDBM) which is
about 24% improvement! The tests were done using gpg and SFTP (far
distant server) and I expected that bewteen gpg and network latency the
difference in local data storage would be nominal. I was wrong, it still
was quite measurable.
So now, Brackup supports Database plugins. The default is of course
SQLite. I have added support for AnyDBM as well (preferred DBM order:
GDBM_File NDBM_File SDBM_File). Other database engines should be easy
enough to add.
#type = AnyDBM
#type = SQLite
The interface allows for an initialization method so MySQL, Postgresql,
etc. should all be pretty easy to add as additional plugins.
** WARNING: I tried adding DBM::Deep but that is incompatible with
Net::SSH at some VERY low level. I ran out of time diagnosing it.
I am accumulating changes over the next few days but if anyone is
interested I will push a stable (as "stable" as it gets right now) to my
web server sooner.
I am rather concerned that some of the changes I have made might not be
desired by the Brackup community. Any feedback would be appreciated.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 3237 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.danga.com/pipermail/brackup/attachments/20070826/fc059ace/smime.bin
More information about the brackup