Skip Links

Network World

Curt Monash

Should you ever use MySQL when Postgres is a superior DBMS?

By CurtMonash on Fri, 07/18/08 - 5:32am.

By most measures, PostgreSQL and other members of the Postgres family are superior database management systems to MySQL.  They're more functional, more scalable, and easier to program.  Even so, MySQL has much more market/mind share than Postgres, and the reasons aren't solely mass insanity.

Let's start by reviewing some of the leading knocks against MySQL:

  • MySQL 4 and any version of MySQL over the MyISAM storage engine are missing some basic SQL standard transactional capability.  They should not be used for serious DBMS applications.
  • InnoDB, the usual transactional storage engine for MySQL, is of dubious scalability.  What's more, it's now owned by Oracle.
  • Falcon, the replacement transactional storage engine for MySQL, isn't generally available yet.  When it does come out, it will be immature.
  • Analytic functionality (even some basic kinds of join) has been problematic in MySQL.

But there are also some strong plusses on MySQL's ledger:

  • Many applications -- including Wordpress, on which I run all my blogs except this one -- are only available on MySQL.  (I would guess that this blog, which runs on Drupal, also runs over MySQL, but I haven't asked.)
  • MySQL is easy to set up.
  • Many people know how to run MySQL.
  • Some Very Large Web Databases run on MySQL.
  • Speciality data warehouse engines (e.g., Infobright Brighthouse, Kickfire) have been developed for MySQL.

As for Postgres:

  • PostgreSQL has been around for a long time. It has a large fraction of the features market-leading DBMS have, and in fact was the original research testbed for many of them.
  • EnterpriseDB's Postgres Plus adds more cool features, some free and some chargeable, including Oracle compatibility.
  • There are Postgres-specific data warehouse engines too.

Frankly, I like advanced DBMS features, such as robust support for various kinds of datatype.  So whenever it makes reasonable sense, I'd favor using the Postgres family.

Related links:

About A World of Bytes

Curt Monash is a leading analyst of and strategic advisor to the software industry. Praised by Lawrence J. Ellison for his "unmatched insight into technology and marketplace trends," Curt was the software/services industry's #1 ranked stock analyst while at PaineWebber, Inc., where he served as a First Vice President until 1987. He subsequently co-founded Evernet, Inc., a $40 million networking systems integrator. Since 1990, he has owned and operated Monash Research, an analysis and advisory firm covering software-intensive sectors of the technology industry. In that period he also has been co-founder, president, or chairman of several other technology startups.

Curt has served as a strategic advisor to many well-known firms, including Oracle, Microsoft, SAP, AOL, CA, and Netezza. Curt earned a Ph.D. in mathematics (Game Theory) from Harvard University. He has held faculty positions in mathematics, economics and public policy at Harvard, Yale, and Suffolk universities.

 

Most Discussed Posts

On The Web
LinkedIn