Generally speaking, because Unix has been around longer and is more mature with high-availability solutions, I would recommend that you at least consider Unix for enterprise mission-critical, high-availability applications, with regard to operating systems-specific, availability solutions. Tighter integration between Unix and their hardware vendors is another point to keep in mind. For example, IBM's High-Availability Cluster Multi-Processing (HACMP) is a stable, mature product that has been around for a very long time.
Database companies have recognized the importance of high-availability, and are now coming out with products that can even eliminate the need for open source, high-availability products, such as HACMP. In fact, if one runs Oracle 10 in a Real Application Cluster (RAC) implementation on IBM's AIX (5.3 only), you no longer need HACMP to provide you with high-availability, since RAC can perform all required tasks. Similarly, DB2 has products that even run on Linux platforms and will provide database high-availability to you.
High-Availability Disaster Recovery (HADR) is a new feature that is available in DB2 UDB V8.2, which can provide you with a high-availability solution for protection against both partial and complete site failures. It even has a setup wizard, that allows you to configure the entire system within a matter of minutes by replicating data from a source (primary) database to a target (standby) database and keeping the two databases in sync. When a failure occurs at the primary database server, the standby database can take over and become the primary database in seconds with just a simple DB2 command or a click of a button in the HADR management wizard.
For more information, visit this IBM link that also gives a comparison to RAC. In fact, Oracle has a paper that presents a Linux-based, high-availability solution to be implemented in a development environment, that will cost you less than $2,000. It can help you become familiar with RAC and its benefits: high-availability, security, load balancing and scalability. You can also run Veritas with Oracle RAC and Linux, both of which provide a robust cluster file system (CFS), an extension of the popular Veritas File System. Veritas, historically associated with Solaris, is now available for Linux, as well.
If your mindset is open source, look at the High-Availability Linux Project, (Linux-HA), that is pre-installed on many Linux variants and offers basic, high-availability failover capabilities on many different platforms. It is the oldest open source HA solution available for Linux, and provides monitoring of cluster nodes, applications and a sophisticated dependency model with rule-based, resource placement schemes.
There are many different high-availability products available on the market, so you must do your homework, and obviously, budget considerations are important. Though I have worked more with OS high-availability than database-availability products, database-availability wares have come a long way. If they can give all the features that OS-specific products provide (shared disk, network failover, heartbeat), then I would not hesitate to recommend a database-availability product, so your DBAs won't blame you system administrators every time something goes bump in the night.
This was first published in December 2005