There's something about PostgreSQL. Over the past year or so, the once-somewhat-dull-open-source database has seen a renaissance of sorts. Long the ugly stepchild to MySQL, the cool kids now increasingly prefer PostgreSQL to MySQL. And with a major new release—PostgreSQL 9.3—a great but somewhat ignored database just got even better, and almost certain to be less ignored.
PostgreSQL's Steady Rise
PostgreSQL has been around forever. That is, since 1986. Database king Michael Stonebreaker first started working on PostgreSQL (then Postgres) in 1986, originally intended to be a superior successor to Stonebreaker's Ingres database. But while PostgreSQL has always had its fans, it never really caught on as a dominant industry database. That honor goes to MySQL, which started in 1995 and has grown to become the world's most popular database.
But something is brewing in PostgreSQL Land.
While general interest (as measured by Google searches) seems to be waning for PostgreSQL, with the kingmaking developer crowd, there is evidence from other sources that PostgreSQL is making new in-roads. Since early 2012, developers have been talking about it much more, as evidenced by Hacker News mentions:
More importantly, PostgreSQL now translates into an increasing number of jobs. It's nice to have people talk about technology. The real key is when they start to pay for it with headcount.
In terms of absolute jobs, PostgreSQL still trails MySQL by a wide margin:
But if we look at relative job growth, it's clear that there's something happening in the PostgreSQL community:
The question is why? Again, PostgreSQL has long been a great database with mature functionality. But that hasn't made it popular. Why is this database suddenly cool?
PostgreSQL Gets Its Cool On
Ironically, PostgreSQL's rising relevance probably isn't due to its underlying technology. After all, PostgreSQL has always been a great, feature-rich database that offers solid performance. And its proponents, like StreetCred Software's Nick Selby, haven't needed any help recognizing this:
@mjasay because it is simple, powerful, wicked fast, elegant and super awesome at doing natively things other DBs don't?— Nick Selby (@nselby) September 10, 2013
With version 9.3, PostgreSQL gets lateral joins, improvements to its JSON support and more. It's a great database that just got even better. But technology isn't really the driving force for its renewed popularity.
Nor is it PostgreSQL's easy licensing terms. While this definitely plays a part, as open-source developer Max Rydahl Anderson posits—developers like to have maximum flexibility with minimal imposed restrictions from a license—PostgreSQL has long enjoyed this licensing freedom. And for whatever reason, this feature never earned it much love against MySQL's copyleft-oriented GPL license.
It's The Community, Stupid
One thing has changed over the past few years, and in a big way. MySQL got a change in management.
Justin Cormack suggests that while PostgreSQL "was always quieter as [there is] no big vendor just community," and hence it "takes longer to get word out." While that lack of a strong vendor may have hurt PostgreSQL historically, it may well be one of the key factors promoting it today.
In other words, one reason for PostgreSQL's new popularity is that it isn't MySQL. That used to be a badge of shame, but since Oracle took over MySQL, open-source developers have been seeking alternatives. While not necessarily fair—Oracle has been investing heavily in MySQL's development—it's nevertheless a reality.
Analysts agree. 451 Research analyst Matt Aslett suggests its popularity stems from "developer-friendly support (hstore, JSON) + solid, mature code base (inc replication) + licensing + (not) Oracle." Redmonk analyst James Governor echoes this sentiment, caling out the fact that "it's rock solid, increasingly developer friendly (see JSON), does geo very well, and isn't owned by Oracle."
Or as Ovum analyst Tony Baer indicates, a big part of PostgreSQL's new cool factor is "Probably because MySQL became 'less cool'."
This isn't to deprecate all of the great things that PostgreSQL has done. Version 9.3 looks awesome. The PostgreSQL community is active. It has all the ingredients for success.
But sometimes you need a bit of luck, and in PostgreSQL's case that may well be the perception that MySQL is losing its open-source bona fides under Oracle. It may or may not be true, but it's certainly helping to feed PostgreSQL's increased popularity.
Not that they'll complain.
Image courtesy of Shutterstock.