Berkeley DB is put out by http://www.sleepycat.com.

It is a very high performance, scalable dbm. A dbm is a very simple type of database, it just does name/value pairs. If you need to look up information in 100 terabytes of data 30,000 times per second, Berkeley DB will be just fine.

MySQL is an example of a relational database. Relational databases differ from dbms in that they offer a more sophisticated data model for the programmer, you send your requests to them in a language known as SQL (Standard Query Language), and they can find very efficient ways of optimizing complex queries.

If you want to be able to store more complex information about your auctions, add features, etc, then it probably would be a very good idea to have the extra structure of a relational database. If you just need fast persistent data storage on disk, a simpler dbm will work. But if you turned out to need the features you will find yourself writing a more complex database, except badly.

If you had to write it yourself, Berkeley DB might be a good choice just because the learning curve is shorter. But if you have a choice between already written ones, MySQL is preferable in my books.

Incidentally MySQL can run on top of Berkeley DB. In that configuration Berkeley DB stores the information, and MySQL hides the details of keeping things synchronized, maintaining indexes, parsing queries, etc. Also note that scripts which are written using MySQL can usually be easily ported to other relational databases like postgres, Sybase, Oracle and the like.

UPDATE
As was pointed out by both rob_au and wmono, I meant to compare relational to dbms, not relational to relational.


In reply to Re (tilly) 1: Berkeley DBM vs. DBI by tilly
in thread Berkeley DBM vs. DBI by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.