In my earlier blog, "High Availability vs Disaster Recover - What's the Difference?" I explained the differences between high availability (HA) and disaster recovery (DR) and noted that in designing HA systems, we’re most concerned with availability, elimination of single points of failure and automation.
Recall that a true HA solution needs to address entire systems, not just individual components. In this blog, I’ll discuss how SharePlex can be used to support database availability as a part of HA systems.
High Availability for Oracle Databases
Oracle offers several HA solutions, including RAC and DataGuard. However, each has some limitations that need to be considered when designing systems for high availability. Also, these solutions require additional maintenance and configuration, and can require additional license costs.
Using RAC for High Availability supports rapid, seamless failover between nodes, and when used in conjunction with ClusterWare, can provide HA for file systems, as well as databases. However, with RAC by itself, there’s still a single point of failure – the database. If a database file becomes inaccessible, the entire RAC cluster will fail.
DataGuard, either by itself or in conjunction with RAC, can eliminate the database as a single point of failure by providing a copy of the primary database. However, there are some caveats and limitations here as well. DataGuard has several modes. Only in “Maximum Protection” mode is the database completely protected from committed transaction loss. This mode can cause performance issues or even complete stops on the primary database if the secondary database is unavailable. There are also distance limitations that require a third instance to overcome.
The Alternative – SharePlex
SharePlex can be used to mitigate or completely eliminate the issues with RAC and DataGuard, with significantly less administrative overhead and cost.
Since SharePlex replicates data from one database to another, there is no single point of failure. SharePlex fully supports RAC, and can be configured to fail from one node to another with some simple scripting.
Like DataGuard, SharePlex moves data from a source, or primary, database to a target, or secondary database. Unlike DataGuard, SharePlex is always asynchronous, which eliminates performance considerations. Also, because of extensive error checking and detection, the potential for transaction loss is virtually eliminated. Also, since SharePlex configuration is managed from the source, there’s no chance of configuration files getting out of sync.
Another advantage of SharePlex is that the target database is fully open for reading and writing. This means that the target database can be used for reporting, thereby making better use of the redundant hardware.
Finally, SharePlex includes compare and repair functionality built-in to the base product. This allows you to easily find and correct any errors that appear.
High availability is just one use case for SharePlex. Contact Quest for additional information or to request a free trial.