PostgreSQL has always been interesting to me and has captivated me more than MySQL as an open source database. There was a time I browsed the source code, wondering if I could contribute (I couldn't) and if I were to move off SQL Server, I think I'd be looking to move into the PostgreSQL world. So when I saw that a new version, PostgreSQL 8.2 had been released, I had to stop and take a look at what it brings to the table.
Performance is improved 10-20%, which doesn't mean anything to me since I don't have a decent sized PostgreSQL server that I could gauge that on. The article quotes that one of the core team members sees its performance on a par with Oracle, DB2, and SQL Server. No versions are mentioned, which makes me wonder how closely PostgreSQL 8.2 is to SQL Server 2005, but I'll leave that to someone who runs both in their environment and can do better testing.
I don't think this is big news for the SQL Server community, since it seems that Oracle has a bigger influence on the development of PostgreSQL than SQL Server. There are some specific Oracle syntax enhancements they support, though if you're looking to leave Oracle, you might look at EnterpriseDB instead. It's built on the solid PostgreSQL foundation, but includes specific enhancements to target those looking to leave Oracle.
And with all the security issues with Oracle, I think it's more likely to see people leaving Oracle for PostgreSQL than leaving SQL Server.
I've mentioned it before, but I don't have any particular reason not to use any of the major databases, and I'd include PostgreSQL, MySQL, and Sybase along with DB2 and Oracle. And SQL Server of course. But I also don't have any reason to leave SQL Server. It works for me and it's where I have a strong skill set. I'd match SQL Server against any of those and I think it would perform as well in almost any situation. The reverse is also true in that I think any of those can match SQL Server for pure database performance.
After all, they're all just tools I use to get a job done.
Follow me on Twitter: @way0utwestForum Etiquette: How to post data/code on a forum to get the best helpMy Blog: www.voiceofthedba.com
It works for me and it's where I have a strong skill set. Steve.
I intially started off with dBaseIII+, Clipper and FoxPro, Then grew with Oracle from version 5 to 8 and just recently tried to touch upon 10g.
After all this, my skill set is strong in SQL Server 2000 (working on 2005).
I love SQL Server, for its ease of use. Like Steve says, I have never seen anything that SQL Server cannot do that other databases can do, atleast in the modest sized data environments I have worked with. I may not have worked with Amazon's data or Bank Of America's data or Verizon's data just to name a few which I presume will have a large data base.
With the amount of work that needs to be accomplished in a single day, in my opinion, it is unwise to do everything from the command line. (I don't like Oracle's UI). Even if command line seems to be the best fit, then Query Analyzer wins the race.
Thankz Steve for bringing up such issues. We need to know that SQL Server is in there as one of the industry standard databases. People out there seem to still judge MS products with the NT4 in mind, when the poor thing used to crash every once in a while. The child has grown, in that for the better.
I've worked heavily with MySQL, SQL Server, and DB2. I've never been able to fully embrace MySQL. The lack of features you come across prior to some of the newer versions just left a bad taste in my mouth. It's fine if you need something free, but I don't think I'd want to use it for a database at a for-profit company. I have mixed feelings when it comes to DB2 and SQL server, and I think a lot of the decision comes down to what the database is being used for. If you want freatures, and easy access, then SQL Server is the way to go. if you want bulletproof stability, and need absolute 100% uptime, DB2. It's not that I think SQL Server isn't stable, it's just that DB2 on an AS400 is a database server built on an OS, and hardware designed to run a database, while SQL server is a database server built on an OS, and hardware designed to do a lot more. The additional complexity, of the underlying systems add a level of instability. As far as unplanned outages go, our externally facing SQL Servers rarely have a problem, but our internal SQL servers that get nailed with ad-hoc queries, reporting services work, etc have their fair share of problems from queries going wild, and killing performance to out and out crashes. We simply don't see those same issues on DB2. our unplanned outages from our AS400 over 6 years consist of 3 times the power stayed out for an extended period, and once that we lost 3 drives on 2 arrays in a 24 hour period. As for slow down, even with badly written ad-hoc queries, things will rarely show a marked hit on performance. I'm not positive as to what is really different, but, there is definitely a difference.
I'm not saying SQL server is bad, our slow downs from SQL server are only ever a show-stopper on what are already massive processing jobs that run slow, and our down time is usually measured in minutes, and happen maybe once every couple months. not at all bad, and you can probably blame windows for 99% of the outages, but, it's still not as good as DB2. However, very few applications really require DB2 on the AS400's level of stability and up time.
Not to mention, us DB2 Admins really get no respect... When the system just works, works well, and never goes down, execs and users tend to forget exactly how mission critical it's function is, if not completely forget the system is even there, or more important, that the admin actually does do work on the system to keep everything running so smooth
And don't get me wrong... I far prefer programming, and working with SQL Server... It really is a much better platform to develop on then DB2. However... managing DB2 can be a much more pleasant experience...
I've done work with many of the different databases over the years. Every time I get back to working with Oracle it always astonishes me that they were still case sensitive without an option (like Sybase/MS always supported).
It's been 5 years since the last time I touched Oracle, are they still that way? Are Postgresql and Mysql case sensitive or do they let you work like an animal that has evolved to walk upright with opposable thumbs?
(I'm talking about data, where the filter "where name = 'fred'" will find 'FreD' and make use of the index.)
The quick answer is the learning curve, with 10g Oracle look tame next to Postgres which BTW is the only other RDBMS(relational database management systems) after Oracle with ANSI SQL Time Interval implemented, Microsoft tried in 2005 but the math broke in beta three and was dropped.
There was a free Postgres book online for more than five years it got published and was pulled so you are on your own when it comes to free resources. A while back it was funded by DARPA because it is the replacement of Ingres the first RDBMS. MySQL hired Peter Gulutzan so most basic features will be available in MySQL soon because Peter had his own database engine he built.