PostgreSQL Wins LJ Editor's Choice Award
Quickfoot writes "PostgreSQL has won the LJ Editor's choice award for database servers the second year in a row and three times total (2000, 2003 and 2004). With the upcoming features in version 8.0 PostgreSQL is posed to do even better in 2005."
PostgreSQL has for a long time been an excellent choice of database with full transaction support, sequences, trigers, unicode and much much more. I personally prefer working with it to expensive alternatives such as Oracle and DB2.
The PGAdmin3 tool also allows for those scared/lazy for the command line to use interogate it's schemas.
What I'm not too sure about is where any company is providing support on a level one would get from Oracle or IBM. Oracle's support is actually extremely good (in my experience). Anyone point to any companies ready to provide PostgreSQL support?
----
Comment removed based on user account deletion
The thing I like about it is that they're not scared of going beyond the basic SQL [tablizer-mode:pseudo]relational model, with their business rules, advanced user-defined-types, and table inheritance. And MVCC is amazing!
I do wish there were two things:
(1) A Feature: multimaster asynchronous merge replication. This is Very Hard(tm) (and bogged down by patents in the corporate reich of america), but would make postgres a contender for distributed database applications.
(2) A model extension: distributed foreign keys. I think table inheritance isn't general enough. postgres has demonstrated that they're not afraid of going beyond the relational model. Well, I want a foreign key that can point to columns in two or more tables, and have a value from one OR another, yet still have its constraints enforced - why can't I specify e.g. A(X) REFERENCES C(Y) OR D(Z), so that A(X) may be a value from either C(Y) or D(Z), but nothing else?
Open standards/source
Web accessible, including management of the model and data.
It's not just basic database management needed, it's things like form and report design, and "code behind". I've got some ideas.
PostgreSQL has, for some time, been more scalable and more reliable than MySQL, which is, IMNSHO, a mere toy by comparison. I've pushed PostgreSQL to several major corporate clients, who have been more than happy with it (indeed, some have added stuff on and pushed the changes back to the main source base, something I would not have considered likely from the sort of corporates I'm talking about)
Hell, it's even for simple, single-user database apps, especially when linked to a good ORM layer (EnterpriseObjects/GNUstep DB et al). Why more people doing web development don't push it, I don't know. Everything's bloody MySQL. Blech.
I am sure that there are people who know other things.
I don't have a recommendation but I do have a strong anti-recommendation.
I normally recommend the associated Oreilly book for most computer topics but in the case of PostgreSQL I have to say Practical PostgreSQL is the worst Oreilly book that I have read. Most of the book is a regurgitation of the freely available postgres manual with an additional chapter that is a blatant plug for the author's proprietary product.
I thought Oreilly could do no wrong until I bought this piece of crap.
Any speed advantage MySQL has is only realized by using MyISAM tables rather than InnoDB tables. However, you sacrifice many of MySQLs newer features (like transactions) by using MyISAM.
Other than that, they are reasonably close in speed. However, I trust PostgreSQL to have better worst-case performance, and better query planning.
It depends on many factors and you should examine your application needs. You should also examine factors other than performance. Sometimes the performance might be similar, but PostgreSQL provides many more options that take burden away from the application, meaning that PostgreSQL might be a big performance win.
In a recent project I did that was DB-intensive, it turned out that PostgreSQL was much faster because of complex queries and the reduced amount of processing my application needed to do (with MySQL I needed to transform the data in my application after I got it from MySQL). I was also able to optimize queries by implementing user-defined aggregate functions (which answered some specific needs from my application).
Social scientists are inspired by theories; scientists are humbled by facts.