To the new company, the company is using RAC, I am more familiar with MySQL third-party cluster scheme Galera cluster This kind of multi-master cluster,
The following is a comparison of the assumptions that I made about the RAC, and then the guesswork level that I did with the MySQL scenario.
The comparison of RAC and MySQL Galera Cluster (MGC),
1, implementation and operation, RAC is the business Solution systematization of course strong, MGC mostly use a variety of open source high-availability load balancer, deployed to the implementation of the requirements of the low RAC, nonsense ... RMB are given to Oracle, if it is self-prepared to make bad performance 2 units is not as good as a, in fact, the operation and maintenance of the volume is the same;
2, the connection is a multi-point transaction scheme, the transaction can be in the transaction node cluster in any one of the beginning, in theory, the intermediate failure can also automatically go to another node to continue, commit the transaction is to each node synchronization, see if there is a node because the lock can not be submitted, so that the transaction rollback,
3, different, RAC transaction node cluster is separated from the data node cluster, the data default is not redundant, only the transaction in the running state in the transaction node redundancy, of course, sometimes on a machine, but at least a different process, and the package MySQL, and other mainstream sqldb transactions, data seems to be together, is a true multi-master, high redundancy, and RAC should be counted transactional node redundancy, data is not redundant, if not from the underlying data node to do not stray from the RAC schema of the underlying data node redundancy, then how can RAC can be compared to the same number of single-machine Oracle instance to high performance,
The advantages and disadvantages of this result:
1, the data node of the RAC, of course, save hard disk space, theoretically can be selected for the Library, table, table partition level to select the physical different data nodes, hard disk redundancy for the underlying redundancy, not like the MGC is either redundant, or not redundant
2, MySQL each node is also suitable for writing and reading, so the multi-master of MGC not only improve the concurrency of the transaction, but also increase the read-lock data reading concurrency, which is far more than the RAC
3, RAC itself is a high-availability program, failover program, there is a high operational requirements on the availability, too many levels, operation and maintenance requirements are high, of course, you can all to the DBA and Oracle pay services, the requirements of their own very high, this aspect of MySQL because the level of less relatively easy to transport, Of course, the premise is that your ops people are already playing on the MySQL cluster program is very easy, otherwise if you are a Product manager or project manager can only think that MySQL is not good to engage in
4, MGC at the same time to read and write, the performance of the transaction, and directly is highly available, simple structure, single point of the problem than RAC, because the level is less, so should be less,
5, RAC benefit from the natural effects of Oracle, more suitable for statistical classes, BI class, this aspect of MySQL can not, than
6, MGC suitable for the main thermal data read and write, not too suitable for complex related queries, should be more suitable for the business of simple internet applications
In essence, many people use Oracle only to be afraid to bet on the open source and the reputation of a slightly problematic MySQL. Enterprise Application with Oracle It's a little bit of a sucker, huh?
The internet should consider MySQL, if you want to be compatible with parallel query ability implementation Pgsql bar
About Oracle's RAC cluster and MySQL Galera cluster ideas