in reply to Perl's Hash vs BerkeleyDB vs MySQL
Previous replies focused on ACID properties, with this post
I observe other kinds of differences:
Advantages of Perl Hash:
- Easy to store a structure as value
- Easy to later add more hashes (databases) , but in db4 you commit on it ahead of time.
- Easier to store multiple values for a key (arrayref)
- No need to worry about recovery and proper shutdown
Advantages of BerkelyDB (not the same as DB_File):
- Easier to access values bases on combination of keys and values
- Can to construct cursors (iterators)
- Can construct custom indexes (not yet supported in the DB4 Perl api)
- The first 4k of data are in memory, the rest on disk
- Can add callbacks to modify the standard access and retrieval methods.
Comparisons with SQL databases miss the whole point of an embedded database. DB4 is not a multi-process system; it is an embedded database, a a C library intended meant to run in the same address space with the main program (when not using rpc). The general advantages and disadvantages of stand-alone models versus the client-server model should be noted.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Perl's Hash vs BerkeleyDB vs MySQL
by herveus (Prior) on May 09, 2006 at 11:46 UTC | |
Re^2: Perl's Hash vs BerkeleyDB vs MySQL
by perrin (Chancellor) on May 09, 2006 at 12:53 UTC |
In Section
Seekers of Perl Wisdom