This is part of The Pile, a partial archive of some open source mailing lists and newsgroups.
To: dbi-users@perl.org From: Joe Brenner <doom@kzsu.stanford.edu> Subject: [OT] mysql capabilities (was Re: RollBacks) Date: Mon, 12 Mar 2001 17:33:10 -0800 "Tim Harsch" <harsch1@llnl.gov> wrote: > What is the BDB table type? Since the ACID question has been answered, I thought I'd give you an answer on the "BDB" table type. I'm not going to bother being diplomatic here, so you'll have to take it as a given that I'm a mysql-hater, and try and compensate for my bias on your own. For reasons that I don't entirely understand (since I wouldn't think there's a lot of money in the game for them) the MySQL folks have been in the business of conning web kids into thinking that they provide real database software. They've constantly been hassled by people who really understand what RDMS software is about, and the first thing that gets said is "but they don't even have transactions". So MySQL bolted on some code from the Berkeley Database (hence the BDB, though I've also heard this called "Sleepycat") which does do transactions. But this stuff won't work with the existing MySQL tables, it only works with BDB type tables, and presumably with none of MySQL's much vaunted (and possibly illusory) speed. So the theory would be that using new MySQL stuff you can make a design decisions trading off between speed and reliability. The problems: (1) this bolted on arrangement is still a little too new to trust it for reliability; (2) I personally dislike having to make design decisions like this that lock you into your original vision about what you're doing... (in the realm of software, it makes much more sense to me to start out using a large club to swat flies, than it does to try and upgrade your flyswatter later when you realize you've got bigger problems); (3) It's debateable whether MySQL is really all that fast -- everyone who believes that this is true seems to be basing it on the cooked benchmarks on MySQL's site. The industry-standard benchmarks paid for by the postgresql people showed MySQL performing slower even on a read-only benchmark, which is supposed to be MySQL's forte. My take is that if it's at all possible, you should just dump mysql. If you don't have any cash, switch to postgresql... it's not quite up to the standard of Oracle, but the postgresql team is closing the gap really fast, and it's a hell of lot more professional than mysql. ===