One of the main decisions that must be made when selecting an RDBMS is whether to go with an open source or a commercial product. This article will compare the various levels of open source and commercial RDBMS packages and explain which situations warrant which packages.
What’s out there?
Databases are used for a multitude of operations, and database systems have been custom-tailored to fit every need, from keeping track of the inventory of a small business to running Web sites such as Amazon.com.
For most companies, cost will be a major determining factor in the selection of a database. On the commercial side, the low end of the price range includes desktop database products such as Microsoft Access and FileMaker Pro, which we won't cover in this article. On the high end of the price range, and offering more robust features, are the big names such as Oracle and IBM’s DB2. Microsoft’s SQL Server falls somewhere in the middle.
The open source side offers some surprisingly attractive choices—surprising in the sense that they are mostly full-featured RDBMS systems available either for free or at a low cost. MySQL and PostgreSQL are the most prominent of these database platforms.
Which one is the right one?
As with most software choices, selecting the right database platform depends on the needs of the organization making the acquisition. The ultimate determination will be made based on the following factors:
- Database size and scalability requirements
- High-availability requirements
- Database functions and features
- Level of support required
- User base
To help you understand the differences between the open source and commercial platforms, I've put together the chart shown in Figure A, which details their general features, pricing, support levels, operating system support, and other aspects.
RDBMS comparison chart
Table A expands on the six major focus areas in the chart.
|Licensing||Is the licensing open source or commercial? An open source operating system is generally acquired at either no or low costs but can lack in other areas, such as support. Today, however, the two leading open source database platforms, MySQL and PostgreSQL, both offer support contracts for their products.|
|Typical acquisition cost||This area represents a figure based on purchasing a single-server system housing the product listed. This system can range anywhere from a single-processor Intel server up to a multiple-processor Sun system, which is why there is a wide range in some of the offerings.|
|Hardware requirements||What expense level should you expect for the typical hardware requirements for the product?|
|Support||What level of support can be expected for the product? In general, the commercial products have better support for their products, and third-party consultants can be more easily located.|
|Operating systems||What operating systems does the product support?|
|Features||This is a very small subset of some of the major features that customers look for in an RDBMS.|
Looking at the matrix, it is clear that most of the enterprise edition database products feature an impressive array of features such as clustering capability, advanced transaction support, database partitioning features, and failover. Such features are essential for many companies. Financial institutions, e-commerce companies, and others that use databases as mission-critical systems are willing to pay the high premium that the commercial database companies charge for their RDBMS products.
However, the open source RDBMS products that do not feature all of these capabilities should not be discounted. Many organizations do not need the ultra high-availability features and can make use of an open source RDBMS at a much lower cost. These open source platforms are becoming more and more popular due to their low initial cost of acquisition. Generally, the lower end databases also have lesser hardware requirements as well, resulting in an even lower initial cost of acquisition.
What about TCO?
While the initial costs in software purchases are important determining factors, it is the total cost of ownership (TCO) that most companies are now focused on. This article won't attempt the complex task of comparing TCO between open source and commercial database products, but a few words can be said on the matter.
When determining the TCO on a database product, you need to consider the skill sets that will be required of the administrator who will be maintaining the database environments. For example, how easy will it be to find a DBA who knows Oracle compared to finding one who knows PostgreSQL? While it may be more challenging to find open source database administrators and consultants, an organization may decide that the low up-front expenditure for an open source platform justifies the search for open source talent.
However, you also have to take into account how quickly and effectively the database can be deployed and customized for the needs of your company, as well as how efficiently you can get support if there is ever a problem—which there will be. Calculating the consulting fees (or residual costs of a database administrator) and the costs of downtime and customized programming are a few of the factors that need to be considered when selecting an RDBMS.
Every organization's needs and priorities are different, so there's no clear winner in this particular race. Even two almost identical organizations may make different choices, with one deciding that paying the premium for the high-availability features of a commercial database is a priority, and the other deciding it's better to forgo those features and choose an open source product such as MySQL. Hopefully, this article has clarified the issues involved with selecting an open source RDBMS vs. a commercial RDBMS so that your decision will be a little easier.