Fog Creek Software
Discussion Board




How good is POSTGRE SQL

Say, i am extremely impressed when i see PostGRESQL site. How come it has not dethroened the biggies still. I have never used it, but if it actually does whatever it claims, it should be dethroning the biggies maybe with the next one decade. Also it seems to be light years ahead of MySQL.

Comments?

Karthik
Wednesday, May 05, 2004

It's a matter of what you're looking for, what you're already tied into, and who you want to support it, and whether you can hire people to support it who have real production experience.

We'll stick with Oracle, our apps are designed for it, we've coded for it for a long time, and we have a slew of DBAs with lots of production support experience.

Change is expensive.

Lou
Wednesday, May 05, 2004

It is good. OpenACS has a lot to say about it. They took a large ERP/CRM software designed for Oracle and ported it to PostgreSQL. It is a real RDBMS.

It is bad, compare to Oracle and SQL Server 2000, it is very much under documented. There are books, but they frequently leave the experienced MS/Oracle DBA empty-handed when the topics gets into anything deep. Support is community based and just by a comparison of user base--could affect your chance of finding exactly what you need to know to fix a bug using google searches. The windows port has even fewer documentations.

It's a mix bag. You gotta wait for Yukon to support .Net stored procedures, but if you pay attention to the PostgreSQL documents and the Mono site, you'll know that you can already write stored procedures using Mono (open-source clean-room implementation of .Net Framework).. You can write store procedures in tons of languages. Perl. Python. Tcl.

Li-fan Chen
Wednesday, May 05, 2004

Why is that no one even wants to google before posting questions like this is beyond me but...

Postgres and MYSQL comparison

http://www.phpbuilder.com/columns/tim20000705.php3
http://det-dbalice.if.pw.edu.pl/det-dbalice/ttraczyk/db_compare/db_compare.html

Code Monkey
Wednesday, May 05, 2004

It is about the only way in the developed world you can get 50,000 honest to god real RDBMS servers running in your TakeOverTheWorld.Com server farm installed without paying for a single use-license. You'll have access to full source. So for that it's great. It is slower than MySQL, but you can get what pay for. All that extra processing time exist for PG because it's a real RDBMS and has to account for all sorts of computations and jobs real RDBMSes have to deal with.

Li-fan Chen
Wednesday, May 05, 2004

Tim Perdue's article is really great, I don't mean to imply that MySQL sucks or anything, because it's great. I am sure you'll figure out which you need, so don't rule out MySQL. It really depends on your project and the run-time environment you expect to run the database in.

Li-fan Chen
Wednesday, May 05, 2004

My experiences with PostgreSQL were mostly negative. Very slow in general, ineffective and inflexible query planner, features not working as advertised. Dev team seems to be more concerned with making something cool than solving real-world problems. I have elaborated on this in another thread here a few days ago, so please don't ask me  to repeat it, take it for what it's worth.

Egor
Wednesday, May 05, 2004

There are only a few instances where MySQL is faster than PostgreSQL.  These cases generally involve using MySQL as a really fast indexed read-only flat file system.

Anonymous
Wednesday, May 05, 2004

4 out of 5 dentists...oops, wrong product.

Spock the Vulcan JockBox
Wednesday, May 05, 2004

We use PostgreSQL (voluntarily) for our fairly-large-volume production systems.  My complaints are generally what you'd expect from an open-source system - the features it has are generally the ones that people thought would fun to implement, not necessarily the ones that you really need in a production environment.

(For example, it has GEQO, a genetic algorithm for query optimization, but its backup/restore process doesn't automatically deal with dependencies between objects, so you might have to edit a file to explicitly order your objects on restore, or you might not be able to restore nicely if you have circular dependencies.)

I'd generally agree that it's not as good as SqlServer or Oracle (although the statement "as good as Oracle" makes me laugh), but it's in a different league from all the other free databases I've used.  I'd use it for any application that expected tables of <10M rows.

Performance is good, although you can't give hints to the optimizer, and the query planner only looks at the first column of a multi-column index when planning the query (when executing, it will use as many columns as are relevant - is this fixed in pg 7.4?).  I've generally been able to get the query planner to do what I want with some fairly complex queries, and its 'explain' functionality is MUCH friendlier than oracle's.

schmoe
Wednesday, May 05, 2004

For my part, the only reason we haven't switched to PostGreSQL yet is because it does not have a native Windows version.  Such a thing has been promised but has not yet seen distribution.

1/4 Ain't Bad
Wednesday, May 05, 2004

Yes PostrgreSQL is nice but I wonder how much you have used other DB's if you wonder why it hasn't conquered the World yet.  SQL server is much easier to use, mySQL is better documented, etc.  Open source still has a stigma in the enterprise space and people just don't change their database just like that.

Bill Rushmore
Wednesday, May 05, 2004

What about firebird?

It has all the features of a real db, it's free and runs on windows and linux.  What more could you want?

http://www.firebirdsql.org/

Chris Donges
Wednesday, May 05, 2004

I second Firebird. Most of the complaints against PostgreSQL are addressed in Firebird.

Craig
Thursday, May 06, 2004

> SQL server is much easier to use, mySQL is better documented, etc

And the people who developed SQL Server were better paid for their efforts.


Thursday, May 06, 2004

Today's Joel article seems appropriate. Why does every dev. that has cobbled up a SELECT statement feel they are on top of what makes a good DBMS?

Just me (Sir to you)
Thursday, May 06, 2004

"> SQL server is much easier to use, mySQL is better documented, etc

And the people who developed SQL Server were better paid for their efforts. "

Geesh.  This sort of post often comes up when a criticism is made of open source software.

My response:  So what!

A lot of things factor in to a customer's decision to use a certain piece of software:  quality of the software, quality of documentation, availability of support, cost.  Whether the developers were paid or not?  No.

I don't give a crap if the developers were paid or not.  What I'm concerned about is whether I'm going to be able to use the software to solve my problems.  Open source advocates need to get a clue that other people don't care about whether the software has been developed "selflessly".  They want the all-around best product.  If the open-source product doesn't otherwise quality, you're not somehow going to make it a better choice by saying, "But the better software was developed by people who got paid, so it's understandable that it's better."  Can't you see that that makes simply no difference when people make a business decision regarding what software to use!?

Herbert Sitz
Thursday, May 06, 2004

Actually, I read the bit about SQL Server developers being paid better as an appeal not to support programmers who undermine your own salary--a "fair trade" for programmers type of thing, not as OS advocacy.

Chris Hoess
Thursday, May 06, 2004

Chris -- ;)

Yes, hard to tell how to take that one. 

In some cases your interpretation would probably be right.  But I'm willing to bet that in this case it was an open source advocate who was trying to explain why SQL Server should be expected to have better documentation.  I could be wrong, of course.

Herbert Sitz
Thursday, May 06, 2004

Firebird would have been an excellent choice as well, except that it doesn't have a native boolean/logical field data type.  By itself, that missing aspect rendered it completely inelligible for our purposes.

1/4 Ain't Bad
Thursday, May 06, 2004

What is the problem with using short int as a boolean field.  1=true, 0=false?

Chris Donges
Friday, May 07, 2004

Re: Short int as Boolean
It's not a problem if we were starting from scratch.  We were looking at converting an existing application to use it, hence the 'our purposes' disclaimer that I included.  It's a deal-breaker for my company, unfortunately.

1/4 Ain't Bad
Friday, May 07, 2004

>Firebird would have been an excellent choice as well, except that it doesn't have a native boolean/logical field data type.  By itself, that missing aspect rendered it completely inelligible for our purposes. <

Oracle doesn't have a native Boolean data type, either. However, if you had to port an existing database from one DBMS to another, you would have to do a data conversion anyway, since ALL dbms's store their data in a roprietary fashion.

Data Miner
Sunday, May 09, 2004

Data conversion is not a problem, code conversion is.  My kingdom for a boolean field.

1/4 Ain't Bad
Monday, May 10, 2004

I HV NOT USED IT YET

SO NO COMMENTS

MEHER
Saturday, June 19, 2004

*  Recent Topics

*  Fog Creek Home