Cost of Proprietary Database

Reading Allan Packer's article on "Are Proprietary Database Doomed?"  opens a pandora's box (well, atleast my mouth).

Exhorbitant Price

I have been complaining about the cost of database since last few years as the amount of money that Oracle and IBM made by charging poor customers anywhere from $15,000 per core to anywhere above $40,000 per core and changing the definition of cores to suit their needs is to-say-the-least unethical.   

Infact if you refer to latest benchmark results and actually look at the "System Price" breakdown in their executive reports, you will be surprised to see that many times the true cost of the database (considering their actual list price scheme by core) will be 50% or higher (I am not kidding). The server and storage itself can give you lot of scrap metal value. (These servers/storage generally tend to have  good resell value like a Honda or Toyota Car.)  However the value of the Software DVD is nothing. Wait.. you cannot even do a yard sale with your software if you go bust (as per most license restrictions). Why am I complaining? Well I can get a laptop for $400 easily now but to run a proprietary database I might have to shell out another $40,000 for an unlimited use license  for that processor (100X).

Manipulating CPU architectures

Also another problem with these proprietary databases are the way they manipulate CPU architectures. Every CPUs have its plus and minuses. However these proprietary database companies have used these to serve their own selfish motives. Today UltraSPARC T2 based systems are "artificially" bottlenecked not because of performance but because of price of proprietary databases just because they are running on UltraSPARC T2.  Dictating which CPU architecture is a second class citizen and  force to pay a premium tax to use their "esteemed" software on it is not only unethical  but if you do an analogy with humans it should be also unlawful. 

Hope in Sight

Well there is a way out, Open Source Database. Atleast you dont have to worry about the "resell" value of the Open Source Database. What about performance? Well read my earlier blogs on performance of PostgreSQL on Solaris.  (Its even bundled in Solaris 10.) What about features? Well most of the common features are already out there. Thanks to ZFS, lots of snapshots, replications is now also available. If your favorite feature is missing, hey just raise your voice and somebody is bound to hear you. Or you will develop that feature yourself.  

Overall I have to agree whole heartedly with Allan. A Perfect Storm is brewing for Proprietary Databases.



[Trackback] Although a little bit advertising, the blog entry of Jignesh Shah points to an interesting fact: You can easily spend hundred times the server price for the database license. The business case to use a proprietary database should be a really good one....

Posted by on December 14, 2007 at 12:34 AM EST #

Until Postgres has rock solid clustering that will work as a scalable service in a sun cluster, it isn't good enough to take over for any of my production databases.

Posted by Mads on December 14, 2007 at 05:41 AM EST #

Clustering, oh I love it. Obviously someone hasn't read the presentation from Mogens titled "You don't really need RAC". The key is I'm an Oracle bigot myself but ruling out a competing product (PostgreSQL or otherwise) is simply shocking. RAC is needed by no more than .1% of the companies/applications, as Mogens puts it RAC is bought by managers, not DBAs (the poor souls who have to live with it)

Unless you're running and wrote your app to be cluster aware to start with you don't need RAC.

Posted by Anantha on December 14, 2007 at 05:47 AM EST #

The correct title is "You Probably Don’t Need RAC".

PDF here:

Posted by Rodrigo De León on December 15, 2007 at 04:15 AM EST #

Thanks Rodrigo.

Posted by Anantha on December 16, 2007 at 02:26 AM EST #

Note that databases like SQL Server, Oracle and DB2 have a variety of licensing options - from free for smallish applications to very expensive if you're planning to roll out 20-200+ cpus.

Note too that the hardware is a lot more than just a cpu. An eight-core server with 24 gbytes of memory and 40-80 \*fast\* disk in a raid 10 configuration is going to cost a lot.

These days it isn't unusual to have a reporting application, data warehouse, etc that is loading millions of rows a day. What you'll find is that the query optimization, parallelism, compression, partitioning, automatic query rewriting, etc of a sophisticated proprietary database will actually save you money.

Here's how this works, take db2 as an example. Assume partitioning gives you a 10x performance benefit over btree indexes that aren't used by most sequential scanning queries. Assume query parallelism gives you a 4x-8x performance improvement over single-threaded queries. Assume compression effectively cuts in half the amount of memory and disk you need while only resulting in a mild cpu impact (and actually shortens query durations). These are all reasonable figures that I've seen personally many times. What have we got? In this case (a reporting/warehouse app) mysql as an example will require 40-80x as much hardware as db2. And we didn't even include sql optimizer issues.

So, loading a few million rows a day, planning to retain 2 years of data and allow \*adhoc\* queries? DB2 (or oracle, etc) can probably do it on a 2-4 way server with 8-16 gbytes of memory and maybe 40 disk. Licensing cost? If a small number of users, then probably under $7500 per cpu core, if unlimited number of users then it could climb to $50k per cpu core list price. If you want to do that with mysql, plan for either an array of large servers (and poor performance on each), a hugely complex database in which all queries are precalculated, or just bailing on the functionality.

Posted by ken farmer on January 16, 2008 at 08:04 AM EST #

``Today UltraSPARC T2 based systems are "artificially" bottlenecked not because of performance but because of price of proprietary databases just because they are running on UltraSPARC T2. Dictating which CPU architecture is a second class citizen and force to pay a premium tax to use their "esteemed" software on it is not only unethical but if you do an analogy with humans it should be also unlawful. ''

this is not fair! If T2 provides less market place for Oracle and still Oracle needs to perform the same testing like for bigger x86/64 market, then it's clear that T2 license should cost more than x86/64 license. Right?

Well, anyway, I'm PostgreSQL fan, but what ken farmer writes above about inefficiency of MySQL I've heard also several times for PostgreSQL/Oracle pair. It seems $$$$$ spent on developing Oracle pays off at least somewhere...(sql optimizer)


Posted by kcg on March 24, 2008 at 08:40 AM EDT #

Post a Comment:
Comments are closed for this entry.

Jignesh Shah is Principal Software Engineer in Application Integration Engineering, Oracle Corporation. AIE enables integration of ISV products including Oracle with Unified Storage Systems. You can also follow me on my blog


« April 2014