Обсуждение: Trade Study on Oracle vs. PostgreSQL
Hi All, We are starting a new project in my organization and need to have a database. I proposed that we use PostgreSQL. Becausewe already have the Oracle infrastructure in-house, I'm told that I need to do a simple trade study on Oracle vs.PostgreSQL. Based on the database requirements, it looks like we just need to create some relatively simple tables. I'd like to get buy-ins from my co-workers. I googled the web, and couldn't find anything that are more recent stuff. Does anyone have more recent information? Thanks. Any help is greatly appreciated. Mary Wang
On Sep 24, 2010, at 7:52 AM, Wang, Mary Y wrote: > Hi All, > > We are starting a new project in my organization and need to have a database. I proposed that we use PostgreSQL. Becausewe already have the Oracle infrastructure in-house, I'm told that I need to do a simple trade study on Oracle vs.PostgreSQL. Based on the database requirements, it looks like we just need to create some relatively simple tables. I'd like to get buy-ins from my co-workers. I googled the web, and couldn't find anything that are more recent stuff. Does anyone have more recent information? > > > Thanks. Any help is greatly appreciated. Assuming that both Oracle and Postgresql have the features you need (which they likely do) you're really talking about performanceand TCO. Your contract with Oracle prevents you from publishing any benchmarks, so you won't find much published about it (which,in itself, says something about Oracle performance vs cost). If you just need to see whether postgresql runs well enough for your needs you'll need to install it, on decent hardware,and tune it and see how well it works with your application. Or, if you just want to run some basic synthetic benchmarksyou might find pg_bench useful. If you're looking for a performance trade study between postgresql and oracle then you'll need to run the comparison yourself- ideally using the application you're interested in using with the database, or a synthetic benchmark that's similarin transaction rate, complexity and concurrency. Again, you'd need to run them on comparable hardware and tune themboth well. If you have some budget for evaluation I suspect that one of the postgresql companies could install and tune an installationfor you pretty inexpensively. Cheers, Steve
There's also the "ease of use" issue. I've worked with Oracle in the past. Postgres is a breeze in comparison. This ismore than just looking for the easy way out. The learning curves, classes and support issues all equate to $$. As for performance, I couldn't say. But I will say that tuning Oracle is/was more complicated. PG is much easier (IMO). Also, if it performs "well enough", which DB actually runs the fastest becomes moot. If, for example, an interactivequery takes 100msec in Oracle and 125ms on Postgres, I doubt your users will care. Of course the same holds trueof PG runs faster. Finally, back on the subject of price, it's tough to beat PG's price if you download and install yourself. REAL tough ! -----Original Message----- From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Steve Atkins Sent: Friday, September 24, 2010 11:57 AM To: Postgres-General General Subject: Re: [GENERAL] Trade Study on Oracle vs. PostgreSQL On Sep 24, 2010, at 7:52 AM, Wang, Mary Y wrote: > Hi All, > > We are starting a new project in my organization and need to have a database. I proposed that we use PostgreSQL. Becausewe already have the Oracle infrastructure in-house, I'm told that I need to do a simple trade study on Oracle vs.PostgreSQL. Based on the database requirements, it looks like we just need to create some relatively simple tables. I'd like to get buy-ins from my co-workers. I googled the web, and couldn't find anything that are more recent stuff. Does anyone have more recent information? > > > Thanks. Any help is greatly appreciated. Assuming that both Oracle and Postgresql have the features you need (which they likely do) you're really talking about performanceand TCO. Your contract with Oracle prevents you from publishing any benchmarks, so you won't find much published about it (which,in itself, says something about Oracle performance vs cost). If you just need to see whether postgresql runs well enough for your needs you'll need to install it, on decent hardware,and tune it and see how well it works with your application. Or, if you just want to run some basic synthetic benchmarksyou might find pg_bench useful. If you're looking for a performance trade study between postgresql and oracle then you'll need to run the comparison yourself- ideally using the application you're interested in using with the database, or a synthetic benchmark that's similarin transaction rate, complexity and concurrency. Again, you'd need to run them on comparable hardware and tune themboth well. If you have some budget for evaluation I suspect that one of the postgresql companies could install and tune an installationfor you pretty inexpensively. Cheers, Steve -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general
On Fri, Sep 24, 2010 at 9:56 AM, Steve Atkins <steve@blighty.com> wrote: > Again, you'd need to run them on comparable hardware and tune them both well. Actually I'd argue that pgsql gets better hardware since you can spend the money you'd spend on oracle licenses on hardware for pgsql. At $20k per cpu on oracle (or more if you need clustering, GIS, or a few other features) you can buy a pretty damned impressive pgsql server to compete. But definitely don't put pgsql on an old workstation and expect it to keep up with a real server running oracle that's been tuned properly.
At 12:20 AM 9/25/2010, Scott Marlowe wrote: >On Fri, Sep 24, 2010 at 9:56 AM, Steve Atkins <steve@blighty.com> wrote: > > Again, you'd need to run them on comparable hardware and tune > them both well. > >Actually I'd argue that pgsql gets better hardware since you can spend >the money you'd spend on oracle licenses on hardware for pgsql. At >$20k per cpu on oracle (or more if you need clustering, GIS, or a few >other features) you can buy a pretty damned impressive pgsql server to >compete. > >But definitely don't put pgsql on an old workstation and expect it to >keep up with a real server running oracle that's been tuned properly. I think Oracle usually gets better hardware, since if Management wants Oracle, the expensive hardware doesn't look so expensive next to it :). Whereas if Management gives you a tiny or zero budget, most sane people don't go for Oracle (even though there are "first dose is free" options). So your options then become Postgresql on an old workstation ;). BTW what often comes up in these comparisons is "support", many companies say paying them lots of $$$ is better than OSS because it gives you the advantage of being able to access their online knowledgebase and experts. But too often the reason why you need their experts and knowledgebase in the first place is because they've locked most of their info behind that paywall. In contrast with OSS, you typically can go straight to the info (warts and all) - e.g. the source code, the usually public mailing lists discussing the problems and so on. And so far with Postgresql, you can still get straight answers from the developers directly. No bullshit. Not sure how well this will scale if Postgresql gets really popular though. So go for the stuff if it's technically better and the difference is worth the expense. But unless you're paying enough so that a developer will wake up at 3am, drink coffee and fix the bug for you, I don't see an advantage in terms of support. Just do your tricky critical postgresql stuff at times when the postgresql team are most likely to be reading the lists... Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or is that when he does intensive coding? :) Link.
On Sep 24, 2010, at 12:04 PM, Lincoln Yeoh wrote: > No bullshit *THAT*, for me, was one of the most attractive aspects of the community. -- Scott Ribe scott_ribe@elevated-dev.com http://www.elevated-dev.com/ (303) 722-0567 voice
On Fri, Sep 24, 2010 at 12:04 PM, Lincoln Yeoh <lyeoh@pop.jaring.my> wrote: > At 12:20 AM 9/25/2010, Scott Marlowe wrote: >> >> On Fri, Sep 24, 2010 at 9:56 AM, Steve Atkins <steve@blighty.com> wrote: >> > Again, you'd need to run them on comparable hardware and tune them both >> > well. >> >> Actually I'd argue that pgsql gets better hardware since you can spend >> the money you'd spend on oracle licenses on hardware for pgsql. At >> $20k per cpu on oracle (or more if you need clustering, GIS, or a few >> other features) you can buy a pretty damned impressive pgsql server to >> compete. >> >> But definitely don't put pgsql on an old workstation and expect it to >> keep up with a real server running oracle that's been tuned properly. > > I think Oracle usually gets better hardware, since if Management wants > Oracle, the expensive hardware doesn't look so expensive next to it :). > Whereas if Management gives you a tiny or zero budget, most sane people > don't go for Oracle (even though there are "first dose is free" options). So > your options then become Postgresql on an old workstation ;). That's very true. OTOH, I took an old workstation with a dual core CPU and put 4 SATA drives in it in RAID-10 and made a reporting server that was much faster than our Oracle server it grabbed the data from. So that's often a good way of getting your foot in the door.
On Friday 24. September 2010 20.04.26 Lincoln Yeoh wrote: > Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or > is that when he does intensive coding? Once there was a suggestion on this list to give Tom every other week off to level the competition with the other RDBMSes. That being said, the PostgreSQL mail lists is an excellent and totally free support channel. Speaking for myself, I've never needed any support outside the mail lists. And Tom is of course a great big part of that. regards, Leif Biberg Kristensen
On Fri, 2010-09-24 at 22:55 +0200, Leif Biberg Kristensen wrote: > On Friday 24. September 2010 20.04.26 Lincoln Yeoh wrote: > > > Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or > > is that when he does intensive coding? > > Once there was a suggestion on this list to give Tom every other week off to > level the competition with the other RDBMSes. > > That being said, the PostgreSQL mail lists is an excellent and totally free > support channel. Speaking for myself, I've never needed any support outside > the mail lists. And Tom is of course a great big part of that. DUDE! Are you trying to kill the postgresql company's business? :P JD -- PostgreSQL.org Major Contributor Command Prompt, Inc: http://www.commandprompt.com/ - 509.416.6579 Consulting, Training, Support, Custom Development, Engineering http://twitter.com/cmdpromptinc | http://identi.ca/commandprompt
On Friday 24. September 2010 23.03.21 Joshua D. Drake wrote: > DUDE! Are you trying to kill the postgresql company's business? :P Huh? Is there a company? :P The REALLY great thing about PostgreSQL is the free sharing. Back in 2002 when I discovered that all the software that I considered cool was Freenix based, I left the world of proprietary software and never looked back. This is my world. Thanks to every one of you who makes this possible. regards, Leif Biberg Kristensen
On Fri, 2010-09-24 at 22:55 +0200, Leif Biberg Kristensen wrote: > On Friday 24. September 2010 20.04.26 Lincoln Yeoh wrote: > > > Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or > > is that when he does intensive coding? > > Once there was a suggestion on this list to give Tom every other week off to > level the competition with the other RDBMSes. > > That being said, the PostgreSQL mail lists is an excellent and totally free > support channel. Speaking for myself, I've never needed any support outside > the mail lists. And Tom is of course a great big part of that. DUDE! Are you trying to kill the postgresql company's business? :P JD -- PostgreSQL.org Major Contributor Command Prompt, Inc: http://www.commandprompt.com/ - 509.416.6579 Consulting, Training, Support, Custom Development, Engineering http://twitter.com/cmdpromptinc | http://identi.ca/commandprompt
On 25/09/2010 4:55 AM, Leif Biberg Kristensen wrote: > On Friday 24. September 2010 20.04.26 Lincoln Yeoh wrote: > >> Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or >> is that when he does intensive coding? > > Once there was a suggestion on this list to give Tom every other week off to > level the competition with the other RDBMSes. > > That being said, the PostgreSQL mail lists is an excellent and totally free > support channel. Speaking for myself, I've never needed any support outside > the mail lists. And Tom is of course a great big part of that. I couldn't agree more. I really appreciate the time and effort people here have spent helping out. Again, Tom Lane particularly so, for amazing patience, psychic debugging skills, and endless willingness to help anybody and everybody. I try to contribute my time and rather more meagre skills back where I can. The more people do, the better. I'm very impressed by the atmosphere on this list compared to the Glassfish list, Hibernate forums, Seam forums, etc; it's actually an enjoyable list to read and participate in, which encourages me to spend more time trying to help people out myself. When comparing database systems, the PostgreSQL mailing list is actually (IMO) a significant consideration. You don't have to run the gauntlet of ignorant L1 and L2 support people to even get an obvious bug report+stack trace to someone who knows enough to recognise it and understand it. Other nice things about PostgreSQL: ----------------------------------- The database has not only debug symbols (which you don't miss until you don't have them) but source code, making diagnosing issues considerably easier some of the time. Especially with decent-ish tracing present in the Linux kernel now (prof) and with DTrace support in Pg for Solaris/BSD this is a real blessing. Of course you can patch it yourself, too, but you may not want to do that. Source code is an advantage even if you never intend to modify it and only plan to use official builds. There are also a lot of very skilled consultants willing to do paid support, integration, migration, upgrades, etc. They charge for their time and expertise, but you're not paying for Oracle licenses, making the (optional) costs rather more palatable. Some groups, 2nd Quadrant, Command Prompt, EnterpriseDB, etc can be paid to develop enhancements to PostgreSQL - possibly to be integrated into future versions - so you can potentially get features/fixes you require developed if there's no broad community interest in them. There's no guarantee your enhancements will be accepted into the core PostgreSQL (and therefore maintained in the main version), but you should be given a decent idea how likely acceptance is before starting work on anything, because all these folks contribute considerably to PostgreSQL and know the development process well. Others have mentioned many other good things; I won't repeat their words. Things you do NOT get with PostgreSQL: -------------------------------------- You *don't* get somebody to sue if something goes wrong, though I'm sure for the right money . I've never understood this desire anyway; show me one company that's successfully* sued Oracle because something went wrong with the database and knocked out their operations. SLAs are all well and good, but in my (admittedly limited) experience tend not to prevent things breaking or even get the vendor to hop-to especially quickly. You don't get first-class Java integration in the database engine (though you do get a good JDBC driver of course). PL/Java seems to be a bit of a second-class citizen in PostgreSQL and has some odd limitations. I suspect there are few reasons behind this: - PostgreSQL is strongly process oriented. Java is rather thread- oriented. This mismatch is a bit painful especially when it comes to backend startup time, resource use, etc. - Historically, Java has been open source but far from free. License restrictions have prevented its integration into Linux distros and the BSDs, where most of PostgreSQL's users and developers are focused. It's been unattractive to work with. - PostgreSQL is pure C, with its own heirachical memory management code. Many C programmers dislike Java and the feeling is mutual. JNI, the Java Native Interface, is unpleasant to work with, adding further disincentive for working on PL/Java. I just don't see it being much fun. So, if you need java as an in-database procedural language, don't write PostgreSQL off, but test carefully to make sure it can do what you need. You don't get the same level of resource monitoring and allocation control as you do in Oracle. Want to cap user "fred" at 30% of disk I/O and 20% of host memory? No such luck. Want to monitor and graph disk I/O load placed on the database machine by user ID? You might be able to do it, but you'll be rolling your own with DTrace or perf. Think about how much of this you actually need, and whether it's critical to your deployment. Most people seem to get by just fine, as there are decent tools for identifying performance problems and for global tuning, just not really much per-user limiting and reporting. Also think about how much extra hardware grunt you can afford to throw at the problem with Pg. You don't get shared-storage clustering like RAC. There are plenty of replication-based clustering options though; see the wiki. * ie: recovered a sum that covers their losses, plus their legal costs in the lawsuit. Against Oracle's army of lawyers, I'd be surprised. -- Craig Ringer Tech-related writing at http://soapyfrogs.blogspot.com/
> On 25/09/2010 4:55 AM, Leif Biberg Kristensen wrote: > > On Friday 24. September 2010 20.04.26 Lincoln Yeoh wrote: > >> Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or > >> is that when he does intensive coding? > > > > Once there was a suggestion on this list to give Tom every other week off > > to level the competition with the other RDBMSes. > > > > That being said, the PostgreSQL mail lists is an excellent and totally > > free support channel. Speaking for myself, I've never needed any support > > outside the mail lists. And Tom is of course a great big part of that. > > I couldn't agree more. I really appreciate the time and effort people > here have spent helping out. Again, Tom Lane particularly so, for > amazing patience, psychic debugging skills, and endless willingness to > help anybody and everybody. Don't omit other major contributors like Joshua or Scott... (and others I didn't mention by name). Certainly Tom doesn't seem to need sleep, but there's quite a few more people willing and able to contribute and answer questions. Helped me out on more than one occasion and I've been using postgresql long before it was named postgresql (even back in the days when the linux kernel had a 0.9 version number). Sure many of the current contributers weren't around back then, but they picked up where others left off and made postgresql what it is today: a quite viable alternative to commercial "pay lots of dollars" databases. Suffice it to say, I have yet to see a showstopper (provided that you run postgresql on decent hardware). Since they just opened a beer tasting room around the corner of my home, here's to all the active contributors - cheers. (and if any of the core developers/contributors ever come to Santa Rosa, CA - drop me a note and I'll have you over for a beer or wine and a nice BBQ)
2010/9/25 Uwe Schroeder <uwe@oss4u.com>: > > >> On 25/09/2010 4:55 AM, Leif Biberg Kristensen wrote: >> > On Friday 24. September 2010 20.04.26 Lincoln Yeoh wrote: >> >> Then again, does Tom ever sleep? Maybe he sleeps in the afternoon? Or >> >> is that when he does intensive coding? >> > >> > Once there was a suggestion on this list to give Tom every other week off >> > to level the competition with the other RDBMSes. >> > >> > That being said, the PostgreSQL mail lists is an excellent and totally >> > free support channel. Speaking for myself, I've never needed any support >> > outside the mail lists. And Tom is of course a great big part of that. >> >> I couldn't agree more. I really appreciate the time and effort people >> here have spent helping out. Again, Tom Lane particularly so, for >> amazing patience, psychic debugging skills, and endless willingness to >> help anybody and everybody. > > Don't omit other major contributors like Joshua or Scott... (and others I > didn't mention by name). > Certainly Tom doesn't seem to need sleep, but there's quite a few more people > willing and able to contribute and answer questions. Helped me out on more > than one occasion and I've been using postgresql long before it was named > postgresql (even back in the days when the linux kernel had a 0.9 version > number). Sure many of the current contributers weren't around back then, but > they picked up where others left off and made postgresql what it is today: a > quite viable alternative to commercial "pay lots of dollars" databases. Suffice > it to say, I have yet to see a showstopper (provided that you run postgresql > on decent hardware). > > Since they just opened a beer tasting room around the corner of my home, > here's to all the active contributors - cheers. (and if any of the core > developers/contributors ever come to Santa Rosa, CA - drop me a note and I'll > have you over for a beer or wine and a nice BBQ) > nice to know it :) Regards Pavel Stehule > > -- > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general >
@OP - One of the things you _might_ be interested in is the difference in tracing and performance framework between Oracle and Postgres.
There was a recent thread about it - http://osdir.com/ml/pgsql-general/2010-09/msg00308.html
You could get your company to sponsor some work on that front.