2) High Availability Cluster
The task High Availability Cluster refers to the creation of a high availability environment that makes use of more than one installation of the database on different servers. The task of clustering in itself is complex because it involves several steps and different servers as well as specific hardware requirements.
In Oracle you need several steps to configure Oracle Clusterware and Oracle RAC (Real Application Cluster), including hardware verification tasks, pre-installation, installation and post installation ranging from the storage configuration options to the specification of availability levels and creation of a specific file system. SQL Server requires the creation of the cluster operating system before installing a SQL Server cluster by configuring several options. The MySQL Cluster does not require a specific storage and can be installed on shared servers by few changes in configuration files. PostgreSQL does not have resources to create a cluster, according to its own documentation. The replication feature provided by the open source project Slony-I is generally used to provide some level of availability. PostgreSQL can also be placed in cluster using approaches such as PL/Proxy and PgBouncer. A comparison of the level of difficulty to the task High Availability Cluster is presented in Table 1.
Table 1. Comparison of the level of difficulty to the task High Availability Cluster.
The task Replication refers to the ability of the database to keep data between different distributed servers appropriately, either synchronously or asynchronously.
Oracle has the concept of Replication Streams, which is a mechanism for capturing and routing SQL instructions between servers through functions in Oracle packages. SQL Server has the capability of replication that involves several concepts such as publisher, distributor, publications, replication types, etc. MySQL does a simple replication by changing settings in the configuration files. As stated in the previous section, PostgreSQL has the Slone-I to create the replication environment among other approaches. A comparison of the level of difficulty to the task Rreplication is presented in Table 2.
Table 2. Comparison of the level of difficulty to the task Replication.
In the next section, we analyze importing and exporting data and programming and debugging.