I'm looking to use either Firebird or Postgres in my next development project ... largely because both are available under a BSD-like license.
I found a great comparison of the two database at http://web.archive.org/web/20100305134128/http://www.amsoftwaredesign.com/pg_vs_fb
But this comparison is a good 4+ years old and both databases have come a long ways since.
Does anyone mind updating the comparison table to be relevant for the current versions of both Firebird and Postgres ... or have a link to a site that does a good recent comparison between the two database?
One more recent comparison (2008):
You have to choose technology like RDBMS not (only) on comparing list of features but on answering questions like these:
For me FB is not a good choice. I can point two stories:
I can point two or three more but these are enough for me to say: no, FB is not my choice, it's not RDBMS, it's a toy.
And they have bad documentation. In fact there is no actual references with each release. When people ask in forums: what is a full list of functions in release XX? The standard answer is: take a list from last official Interbase release and add (remove) functions from all later releases's "release notes".
And they have strange support/development strategy. They are working on what are interesting for them, on deep technical issues, not on what are really critical or annoying for users.
One important thing is deployment:
is not true. since 8.1 (if i remember correctly) it's possible to activate WAL archiving and then creating filesystem based backups without shutting down anything. Look for PITR (point-in-time-recovery) in the docs for more information
I can comment on Firebird. The following changed since the first comparison:
Actually, Classic Server is the preferred server type for scalability. Starting from Firebird 2.5 there is also an architecture called SuperClassic. I wrote a small post on the differences: SuperServer, ClassicServer or SuperClassic?
I don't see how this could be a problem to be written in red. Firebird uses careful writes to ensure the database structure is always consistent.
Available in Firebird 2.1. Release Notes
Firebird 2.1 also improved this. Release Notes
While there is no LDAP support, Firebird 2.1 allows Windows authentication. Release Notes
I'm not sure what the author means here, but Firebird has had domains forever.
Arguable. Database space is reused. I find it hard to imagine the need to shrink a database in production.
Firebird 2.5 supports regular expressions. Release Notes
Yes, Firebird 2.1 supports database monitoring via system tables. Firebird 2.5 adds support to trace facilities.
I know at least one excellent database monitoring tool for Firebird. ;)
Firebird 2.5 can query remote databases. Release Notes
I've been working with Firebird for a long time and recommend to NOT use it in any way. They have many fundamental problems that Postgres does not have. Not to say many, just say they don't still have 'alter view' command. To alter a view you must drop and recreate it and all views depending on it. This is one of many misfeatures of FB. It's not correct to compare these DB Engines at all. I've had many cases when Firebird database was corrupted even without power loss, with usual workloads, and so on. If you still deciding, don't use Firebird! If you already chose FB, you will remember my words some time later :)