Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Veritas Cluster vs Oracle RAC for HA

Re: Veritas Cluster vs Oracle RAC for HA

From: Howard J. Rogers <hjr_at_dizwell.com>
Date: Mon, 09 Aug 2004 16:46:41 +1000
Message-ID: <opscgc33kg3d8uqx@shostakovich.dizwell.com>


On Mon, 09 Aug 2004 00:14:36 -0400, Mladen Gogala <gogala_at_sbcglobal.net> wrote:

> On Sun, 08 Aug 2004 19:32:10 -0700, Prem K Mehrotra wrote:
>
>> As for as I know VCS Setup provides only HA but no load balancing,
>> i.e., in a 2 node VCS, only one node will be used for database access.
>> In case, there is problem with that node, VCS clustering will switch
>> to other node (HA) within a short period of time.
>
> If only one node is used for database accesses, how can you have RAC?

Because RAC does not require a cluster.

RAC is merely two instances accessing one database. If you can somehow install the requisite inter-instance messaging software components, then it is indeed possible to have a RAC on... oh, I dunno... say, a laptop.

Let's not confuse two-instances-one-database with nodes and the hardware clustering that implies.

That it makes sense to run each instance in a RAC on a separate server, and hence require a hardware cluster as well as a RAC, does not mean it makes it compulsory.

But you're also missing another point which I'll come to shortly...

> RAC is a group of equivalent instances which perform database access
> simultaneously. We hold this truths to be self-evident, that all
> instances
> within RAC are created equal.

Oh dear. I'm sure I'm just lacking a sense of humour, but I don't think even in humour we should allow self-evidently wrong statements to pass without comment! All instances within a RAC are NOT created equal, otherwise it would never have been possible to do this:

alter system set shared_pool_size=120M scope=both sid='INSTANCE1'; alter system set shared_pool_size=80M scope=both sid='INSTANCE2';

And it is not true, either, that a RAC is a 'group' of 'equivalent' instances. If you care to set active_instance_count=1 then you can have a two-instance RAC where one of the instances is usable by ordinary people and one isn't. Hardly "equivalent". And this is precisely the situation the poster to whom you replied is referring, and hence is the real answer to your rhetorical question made in reply. Only one node is used to access the database, true... but the other is 'spare', ready to take up the slack when the first one dies rather quicker than would be the case if we had to start a new instance up from scratch (which is what we have to do with Oracle Failsafe, for example). The other instance is also there for administrative use... it won't accept Sqlnet connections, but local ones as SYSDBA are acceptable.

In truth, therefore, there is a hierarchy of Oracle High Availability solutions:

  1. No RAC. Use hardware clustering features to start a second instance when the first fails. This is Microsoft's (and the Failsafe) solution, for example.
  2. RAC, but only one active instance. The second instance should mean failover happens faster, and gives you a constantly-ready administrative instance. Nothing needs starting up from scratch. Sometimes called 'active-passive' RAC.
  3. RAC, with 'co-equal' instances. This is the one to which your constitutional quote makes allusion. It's the one everyone thinks of as RAC. Sometimes known as active-active RAC, it allows for load balancing as well as speedy failover, as well as parallel processing across nodes, and hence scale-up and speed-up.

Just thought I'd mention it.

Regards
HJR Received on Mon Aug 09 2004 - 01:46:41 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US