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."
My angst drives me to new lows.
My happiness is simply more to suffer thru.
Current Mood: depressed.
Current database server: PostgreSQL
Listening to: Linkin Park
Oh, Linux Journal.
-- "I'm not a religious man, but if you're up there, save me Superman..."
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?
----
It looks like they are ( have been? ) quite big fans of MySQL in the past. Netcraft shows that a couple of years ago ( 4th Aug 2002 ) that their webserver was running with Mod Auth MySQL.
Apache/1.3.26 (Unix) PHP/4.1.2 mod_ssl/2.8.10 OpenSSL/0.9.6e AuthMySQL/2.20
Get your own free personal location tracker
Comment removed based on user account deletion
"I love PostgreSQL!"
Sadly, since their affections are misplaced, this is the last generation of PostgreSQL lovers.
"Derp de derp."
I love postgresql and use it on everything I can. However, it sucks as a catalog system for file backup systems (ie. bacula). After over 1.5 million files it starts taking minutes to insert each new file row. Mysql isn't perfect either with its limited authentication system(kerberos/sasl logins anyone?) and its slow roll towards real compliant sql, unicode, etc. support. Though mysql does handle much larger tables quite easily. Mysql also scales well with its new network engine.
I see mysql fixing its flaws long before postgresql fixes its bottlenecks.
"I'm hoping its the thin end of the wedge."
;)
Bet you're not the first database fan to wish for that.
(I love out of context comments.)
"Derp de derp."
I have been looking to learn Postgres since the recent news that it has got (or going to get) better Windows support now.
Can anyone point me to a good compact book or tutorial to learn Postgres *without* all the fluff of what sql is and how you use a select statement? Something that assumes that I know databases and just focusses on the teaching the Postgres advantages.
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?
PostgreSQL is so great, it gets a dupe!
That's only if the Postgres team doesn't accept my patch entitled "Reproductive Organs for Postgres", aimed squarely at those who love Postgres so much...well...you guys get the idea.
--
The last digit of pi is four.
Aren't they the ones who tried to rip off Linux Gazette?
What a difference a few years makes! Today, PostgreSQL is fast, extremely robust, and incredibly capable. It scales better than MySQL, preserves data integrity better, and makes it possible to do things that you can't do even in Oracle (for instance, just about all DDL in PostgreSQL is transactional: table creation/deletion, index creation/deletion, user creation/deletion, etc. This means, for instance, that you don't have to have an operator to alter a column's datatype: you just create the new column, copy the data into it, and then drop the old column, all within a single transaction, and if you screw up you can roll the whole thing back). It supports a number of different languages in which one can write stored procedures. The planner is quite good and yet is constantly improving.
About the only thing that PostgreSQL is not is auto-adaptive. That is, one still has to configure it to get optimal performance, same as with any database I've ever seen. The default settings provided in the raw distribution are, well, quite conservative: they're set up so that you can successfully start PostgreSQL even on a small, old system, which means you almost certainly have to tweak the configuration file in order to get truly good performance out of it.
In short, PostgreSQL has gotten very, very good in a relatively short period of time. It's so good compared with the other freely-available databases out there that I can't really think of a compelling reason to use anything else -- it's so good that if you need something more capable then you're going to have to pay big, big money.
And 8.0 will get you native Win32 support (with a point-n-click installer and everything, if I'm not mistaken). With its feature set (especially if you include what's going to be delivered in 8.0), that makes PostgreSQL-win32 a real SQL Server killer, as long as it performs well on that platform.
In short, PostgreSQL deserves very much to win this award, and the PostgreSQL development crew deserves a ton of kudos for producing such a kickass database system. I'm very much hoping that third-party software support for PostgreSQL gets as good as it is for MySQL, because the database engine is certainly deserving of it.
Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
Please, all PostgreSQL lovers have taken a vow of celibacy, just like their fathers, and their father's fathers!
Recovery tools for example as well as multiple user support keep mysql more popular among ISP's.
Unless I am wrong and my information is outdated. I would like to learn more since I would prefer to leave mysql.
Native win32 port without a buggy cygwin implementation is a major plus.
http://saveie6.com/
You said 'In short' twice.
I am very very impressed by PostgreSQL. I am waiting for the geeks to slap a programmable GUI onto it. I know there are several that I can mention here, but none comes even half close to what M$'s Jet engine has with Access. I once tried to put together one with PHP but the project became very complex for my managing. I abandoned the effort. Slashdotters, can we start another project to put a decent GUI onto this DB engine? When that is done, business logic can be programmed at form level, reports can be done in XML and published to PDF, even better, error handling at form level with input masks etc can be done. And before you go on, I'd like to remind you that there is Kexi, pgAdmin and so many others. What do you think?
livejournal editors choice is postgreSQL?
PostgreSQL has won the LJ Editor's choice award for database servers the second year in a row
Who new LiveJournal gave out awards?
Mod point free since 2001
PostgreSQL is an astonishingly great piece of software, one of the few best I've ever worked with.
Thus, if someone tells me they're using mySQL, which is not nearly as powerful as PostgreSQL , I can immediately surmise many things about them, their organization, and their code.
However, if PostgreSQL becomes well-known through all of this publicity, entities might inadvertantly start using it, making it more difficult for me to evaluate cluelessness.
Google for Postgresql support and you'll find lots of support, including but not limited to:
Postgres has caused me alot of stife in installation, and their dump/restore scripts to this date still seem unreliable, which sure, may be due to that Debian Stable still being on 7.2 and I've never had the necessity to try out more recent releases.
However, there's many very cool things I hear you can do with it - I simply don't use them :P
I also think that the fact that postgres and mysql both compete is great - it motivates both teams to continually improve.
In summary, I have found MySQL to work perfectly in creating a leading edge content management system (http://www.silverstripe.com/); one where the development, selling and implementation of it has created jobs and forms a whole business. But I'm sure if Postgres had walked in the door four years ago and I had a more positive experience, I'd be touting that over Mysql in the same subjective vein.
Try out phpPgAdmin which does exactly what you were probably trying to set out to do in PHP.
I am NaN
good starting point, it's also on Safari so you could read it online.
Here it is on amazon
I am NaN
Actually, from PostgreSQL 8 you can use ALTER TABLE.
If all you are doing is presenting web content without much in the way of heavy-duty transactional requirements (ie., no money is changing hands, mostly doing output as opposed to input), then MySQL is fine. Of course, PG would be fine as well. I don't get all of the zealotry on both sides. They are two fine databases, most stuff is not "enterprise" level requirements, so no suprise that you see MySQL all over the place. That doesn't make PG any "better" or "worse"!
A house divided against itself cannot stand.
About the only thing that PostgreSQL is not is auto-adaptive.
To some extent its query analyzer will "learn" about the tables in your database when you run a vacuum analyze.
After any major change in the number of rows in a table, I always run a vacuum analyze. Aside from cleaning up some of the space leftover (only a vacuum full can clean up everything, but that requires locking the database) it will record new values for the relative sizes of tables, which the query analyzer then uses to determine join orders and such.
It's not fully adaptive, but its a great help.
And 8.0 will get you native Win32 support (with a point-n-click installer and everything, if I'm not mistaken).
:) Pretty cursory look so far but I imported a db I'm working on from Debian and my more complex procedures ran fine.
You aren't mistaken. The sort of install a Windows user will love -- although he will have to find PgAdmin III and create his own desktop shortcut.
With features like point-in-time recovery, I think we are going to hear a lot more about PostgreSQL this year.
Am I missing something here? Tried to use postgres as the backing store for a java message queue. This involves very rapid INSERT, UPDATE and DELETE operations. Found that it starts out at 100+ transactions per second but drops to less than 20 per second after just one minute. Have to VACUUM continuously just to keep the average up. This is not a solution. How about a table option to eliminate redundant tuples in realtime instead of when VACUUM is run? As it stands, pgsql is not suitable for persistance in message queues.
PS: the PITR stuff in 8.0 is looking really good. Will have to work up some backup/restore shell scripts and give the beta a good workout.
No, I did not read the f***ing article!
I looked at the documentation and something was left unclear. I understand that backkups are made using the pg_dump command to script the entire database to stdout. Does PGSQL have the ability to do incremental backups consisting only of the transactions since the last pg_dump or do you have to take the full backup every 30 minutes or so, which sounds hugely wasteful?
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.
People don't get a host, and then decide they want something to be hosted, that makes no sense. They get whatever "app" your php scripts are, and then find a host who will support that. There's tons of postgresql hosts, so that's not an issue. People typically have a hard time only if they try to find the cheapest $3/month hosting possible, instead of going to a real host who has a clue what they are doing, and can install perl modules, maintain database servers, etc.
Here's the question I find interesting. PostgreSQL is widely considered to be an awesome database system. What does Oracle have that PostgreSQL doesn't? What else does PostgreSQL need to be considered the equal or better of Oracle?
"I object to doing things that computers can do." -- Olin Shivers, lispers.org
A story on the Linux Journal Editors Choice awards were already posted weeks ago and now some Postgres fanboy got this duplicate posted.
Do Slashdot editors even read Slashdot?
You can always dismiss any heated debate as simply a result of nit-picking or personal preferences.
However, the differences here are quite substantial. And it isn't really 'mysql vs postgresql' - it's more like 'mysql vs inexpensive standards-compliant database solutions'. What really irks most experience database developers about mysql is that mysql abandoned decades of standards and standard features - while insisting that 90% of the users didn't need transactions, triggers, views, etc. That's disingenuous misinformation.
mysql still has a role out there - since it has such a wide host base and so much 'mind share'. But this is all marketing. In almost any technical comparison, Postgresql now comes out on top.
Furthermore, since postgresql is very similar to other relational databases - migration between it and oracle, db2, sql server, etc is relatively painless (unless you went overboard on stored procs, etc). This means that your investment in postgresql is fairly 'future-proof'. If on the other hand, you've gone with mysql, you will always have a more difficult migration - and may fail to get anticipated performance benefits since you are probably using the target database is a way not recommended by its vendor (joining inside application rather than inside sql, etc). This is especially true of the many mysql applications out there that believed MySQL AB when they told people that 90% of the applications didn't need transactions (!)
Of course, you can wait for mysql to catch up to everyone else in the database features area, and perhaps they'll try to become more standards compliant along the way. But that's going to be a tough slog for them, probably involving a complete rewrite. Could take quite a while, and there may be no easy transition for today's mysql apps.
Sibling rivalry? hardly
The "How to buy" page definitely needs the FAQ.
In comparison, the many OSS licenses don't seem so bad/complex after all, and at least the price is right.
Information: "I want to be anthropomorphized"
it was the same people who old LiveJournal.
What's with the icon for Databases? A wheelbarrow (a very nicely rendered wheelbarrow though).
/. icons?!
Surely a filing cabinet would have been a more intuitive choice.
And a stapler as the IT icon? what's going on with
...people already have their site hosted and then decide to add functionality to it, e-commerce, CMS, CRM etc., at this point, I'd rather be able to sell them something that runs on their system, than telling them that their provider sucks and they have to move. They'll just go with another solution.
Moving hosting isn't something most non-technical people will consider unless they can see a clear reason to (blocked by spews, continual downtime etc.).
The best solution is when we host for customers, because we know that they will not only be getting top-notch service, but a top-notch service that has been tailor made for our software.
As I said before, it's a moot point, our app works on both MySQL and PostgreSQL, but it's like releasing software for windows only (the MySQL of the OS world), lots of people do it because that's a large portion of the market taken care of. We go the extra mile and support postgre too, but many don't.
I am NaN
In this case it's more a case of, ooh, "DOS is better than BSD".
MySQL is the DOS of databases. Lightweight, runs reasonably quickly. Very, very feature-limited. When anything goes wrong, you lose your data - but there's always Norton Utilities to help you recover some of it. Doesn't require much skill to install or maintain. Acceptable if you need very little in the way of functionality in the OS/DB - either because you just don't need it in your application, or because you're prepared to expend the effort to implement the functionality at the application level (badly).
PostgreSQL is the BSD of databases. Ridiculously full-featured. Rock-solid and stable. Based on a long history of development. Requires a little more technical clue to install and maintain, but the huge benefits make that investment more than worthwhile. And, while it takes a little longer to learn the more sophisticated ("real SQL"(tm)) features, once you learn to use them you can easily do things that would be incredibly difficult, or even impossible, using DOS^WMySQL. Not heavily marketed, nor does it have a sizable fanboy base, relying rather on technical excellence to grow mindshare. Used by those who understand that the quality of the tool outweighs the lack of hype.
Oracle is the Solaris of databases. Long commercial history. Easy to find DBAs - but they're mostly expensive, and you need them to keep it running happily. Support is available, and needed. Wonderfully stable in production, as long as you don't mess with it too much. Extremely powerful, but few people actually like using it.
MS SQL used to be like NT 3.51 or NT4. Ugly, but stable. Now it's more like Windows 2000 - some significant, and very nice, technical engineering improvements under the covers, making it a pretty good workhorse, but nobody really notices them because they're distracted by all the updated chrome.
I'm less familiar with either DB2 or AIX - but what little I do know suggests that they'd make a good pair.
please mod parent 'informative'
Thank you so much for that post. You put into words what I've experienced, daily, but could never summarize so well.
Now I have a useful link to send to friends who are struggling with the MySQL / MS-SQL / Postgres decision. Do you write books, too? You should.
This article isn't so much breaking news. The actual hard copy of this article came out about a month and a bit ago.
I have a serious question, and not to poke at the possibility of flamebait, but can anyone give me some real world information about the speed of either? I hesitate to look at either site because I can assume all I will be greeted with is the same FUD from both camps. Are both about the same speed wise? Is pgSQL better beause of the way it handles certain things? Is MySQL just for the "kids" before they finally get a clue? What's the scoop here?
Seems to be nearly similar to MS Access, albeit a little harder to write for. It is fully programmable in TCL/Tk.
LedgerSMB: Open source Accounting/ERP
I beleive the largest reason that MySQL is the favorite open RDBMS is that it is far easier to install on Windows. Once PostgreSQL has a good Windows port, the other features will be more appreciated.
"The postgresql SDBC Driver allows to use the postgresql database from OpenOffice.org without any wrapper layer such as odbc or jdbc."
http://dba.openoffice.org/drivers/postgresql/
is learning how to pronounce it.
Hell, I just learned how to pronounce MySQL.
--
Solitary, self-taught geek.
I would like to add also that some databases expect you to give planner hints or they preplan queries.
PostgreSQL uses up-to-date statistics to plan each query, meaning that when the data changes, the plans change also.
If you rely on planner hints and preplanned queries, then those hints or plans can become out of date, and slow you down.
Social scientists are inspired by theories; scientists are humbled by facts.
...I'd ride in any of them rather than walk fifty miles. I hate the if-OSes-were-automobiles type argument because it doesn't really say anything about OSes, or even automobiles. It's a purportedly cute, definitely tired, roundabout way to say 'people who are cool use what I do', but that's all it says.
But for the sake of argument, let's assume you are correct in that PostgreSQL is the BSD of databases. What does that mean, really? At a glance Netcraft data suggest that your site enjoyed better uptime when it sat on Linux. And what it's been doing since it was switched back to FreeBSD is often bested by [gasp] a couple flavors of Windows. Would you refer to a better-than-PostgreSQL solution as the Linux of RDBMSes or the Windows of RDBMSes? And is that why word-to-the-wise.com sits on Linux instead of FreeBSD? ;-)
All kidding aside, even were I to accept your assessment that MySQL is the DOS of RDBMSes while PostgreSQL is the end-all, be-all of RDBMSes, it wouldn't alter my position that most product arguments are ultimately along the lines of chocolate is better than strawberry. Most people tend to forgive or deny the shortcomings of the product they know, because they know it, and will tell you that you're cool if you use it, because they use it.
Making the world a better place, one psychotic episode at a time.
My first thought on reading the headline was:
"Why is LiveJournal recommending database servers?"
My second thought was:
"LiveJournal has EDITORS?!!??"
Crumb's Corollary: Never bring a knife to a bun fight.
SQL Server Enterprise Edition: $19,999 US per processor
That's probably $5k higher than I thought I remembered it being. They're no Oracle. And any server worthy of such an expensive database is going to have more than one processor. Who ever said nobody ever gets fired for recommending Microsoft?
If postgresql cant support this basic requirement, it is not an enterprise-class database.