Operating System - OpenVMS
1828032 Members
1775 Online
109973 Solutions
New Discussion

Re: Clustering with OpenVMS + Oracle after 7-2.1

 
Andrew Moody_1
Regular Advisor

Clustering with OpenVMS + Oracle after 7-2.1


Morning

We current have an environment of two clustered ES40's running OpenVMS 7-2.1 . This environment supports three production Oracle database instances (7.3.4) but these Oracle instances are node specific. We are upgrading the Oracale databases which in turn will allow us to upgrade the OS.

What I would like to know is as the cluster shares SAN attached storage and the system disk is also SAN attached is there a way of making the Oracle instances available simultaneously from both Nodes. Would we have to deploy an Oracle solution like 9i Rack or 10g Grid to do this or will the OS allow us to.

Basically I'm just trying to understand better how clustering works in OpenVMS and if once we've clustered the hardware whether we have to deploy something within the application to use all the environments resources to the full.

I'd be interested to hear from anyone who knows of any resources (documents etc,) or has direct experience of the type of environment I've described above.

Many thanks

Andrew

Many thanks
A sobering thought: What if, right at this very moment, I am living up to my full potential?
16 REPLIES 16
Karl Rohwedder
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

As far as I know, Oracle does not use the VMS provided distributed-lockmanager to synchronize data access in a cluster, but uses own techniques (Parallel Server or 9iRAC), so you habe to use those version (more info on the oracle websites I suppose).
This in opposite to Oracle/RDB, which uses the lockmanager and is cluster-ware since clusters were invented...

regards kalle
Wim Van den Wyngaert
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

Oracle was given the permission to duplicate the patented DLM on all their platforms. This was for Oracle 6.2 with parallel server option.

Be aware : if you run an instance clusterwide this could slow down things enormously due to the overhead of DLM. If (very) high availability not needed, it's better to manualy start it on the alternate node.

Wim
Wim
Andrew Moody_1
Regular Advisor

Re: Clustering with OpenVMS + Oracle after 7-2.1


Thanks for the replies so far. I'd be as interested in options for using clustering for performance also. Is this an option? Mentioned above is the overhead created by DLM. But if I was to be able to use two nodes and therefore double both the number of available processors and memory, would the application use them or is clustering in OpenVMS seen as purely an availability solution?
A sobering thought: What if, right at this very moment, I am living up to my full potential?
Karl Rohwedder
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

That will be very application dependant, if processes from both nodes access the same records of a database at the same time, the access has to be serialized. If this is not the case, the performance will increase.
Using more instances of the OS helps to prevent the saturation when using many CPU's, but again, that depends.

regards Kalle
Wim Van den Wyngaert
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

To my knowlede 2 * 1 is less than 1 when using parallel server in transactional systems.

E.g. for each block in the cache that you want to use, it must verify if the other node has no newer version. If so, the other node has to write it to disk and then the first node can read and use it.

Oracle invented many tuning options to improve performance (promote locks to higher levels). VMS might need to get (difficult) tuning too.

Wim
Wim
Jan van den Ende
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

Andrew,

both Kalle and Wim in the above are right!
As Wim indicates, each cached block has to be checked. But _JUST CHECKING_ is a relatively cheap and painless operation.
_IF_ the check often results in the remainder of the sequence described by Wim, than HIS conclusion is correct: 2 * 1 < 1.
_IF_ however the check SELDOM leads to extra actions, _THEN_ the application gets well parallelized, and 2 * 1 > 1. It wil never equal 2, but I have seen ( Oracle V6.1.x, VaxVMS 5.*, so all kind of uncertainty here) that 3 * 1 = 2.5

So, as so often: it depends, but if you know the behavior of the app, you may well be able to influence it (a lot??).

hth

Proost.

Have one on me.

jpe


Don't rust yours pelled jacker to fine doll missed aches.
Hein van den Heuvel
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

>> I'd be as interested in options for using clustering for performance also. Is this an option?

Performance was the only reason for the old OPS (Oracle Parallel Server) from a pure Oracle perspective.

Increased performance is still a major reason to deploy RAC, but for some the 'hot standby / immediate failover' availability you can get is critical.

>> Mentioned above is the overhead created by DLM.

Just activating the same DB on an other node does NOT increase the overhead a lot.
Active use might, but 'it depends'.

>> But if I was to be able to use two nodes and therefore double both the number of available processors and memory, would the application use them

YES. But not at 100%. 100%+100% is not 200%.
For some applications you will get 180%, for others 110%. You will have to evaluate how much 'fighting' to expect between the nodes.

If you have multiple instances you are better of making the dominant usage for each instance happen on specific node, avoiding high lock activity.
And if you have 'zones' of usage, then you may want to direct usage for particulare data ranges / tables towards a specific node. This is not a big problem/error with Oracle. It just makes common sense. The caches on each node will be loaded for data mostly for that node: minimal duplication of effort.

I would highly recommend NOT to bother with OPS and use RAC as an excuse to upgrade.
Tuning OPS supposedly was very hard, notably figuring out locking. It is still a possible challenge for RAC but not nearly as bad(google: +oracle +gc_files_to_lock)


Btw.. RAC will also offer direct Cache-to-Cache block shipping instead of 'pinging over the disk' which OPS did to move a page from one cache to the other when needed.

Hope this helps,
Hein van den Heuvel
HvdH Performance Consulting
Wim Van den Wyngaert
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

I found that VMS DLM was used until Oracle 7. Oracle 8 used their own stuff. So, I guess you are using the VMS version.

If you loose or win also depends on your cluster connector speed. The faster it is, the better the result.

You also have to pay to get the parallel option ...

Would like too see where they got 180% when using 2 nodes ... in the real world.

Wim
Wim
Andrew Moody_1
Regular Advisor

Re: Clustering with OpenVMS + Oracle after 7-2.1

Sorry Guys if I misrepresented myself, more details perhaps needed.

Our current environment is

OpenVMS 7-2.1
Oracle 7.3.4
Oracle Forms 4/5

Which is where we have the OS clustered and the app specific to a node.

We are upgrading Oracle Forms so we can upgrade everything else and therefore we will have

OpenVMS 7-3.2/8-2
Oracle 10g
Oracle Forms 10g

what I'm trying to work out is given a two node cluster what is the best way to maintain/improve performance while also improving if possible availability.
A sobering thought: What if, right at this very moment, I am living up to my full potential?
Andrew Moody_1
Regular Advisor

Re: Clustering with OpenVMS + Oracle after 7-2.1


And given the above, would a three node fully specced ES47 cluster be better than a two node ES80/6 cluster?
A sobering thought: What if, right at this very moment, I am living up to my full potential?
Jan van den Ende
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

Andrew,

from your original question:

This environment supports three production Oracle database instances


combined with your last question

would a three node fully specced ES47 cluster be better than a two node ES80/6 cluster?

I am inclined to be affirmative.

And look at the nice analysis by Hein,

If you have multiple instances you are better of making the dominant usage for each instance happen on specific node, avoiding high lock activity.

Now (speculating that your 3 instances are more-or-less matched in heaviness) it looks like your environment is nearly optimal for having each app primarily localized to one node each, with the other two "available".

If you are using LAT or IP, you can create 3 services that each prefer their assigned node, but fall back to another if that node (for any reason) is not available.
Now you get the best of all worlds: maximum performance, maximum parallel activity, maximum availability, minimal operational, activity for failover, and full transparancy for the users.
And since this obviously will be a new environment setup, you can do the setup to make things easy for yourself, your operating staff, and your users.

Success!

Proost.

Have one on me.

jpe
Don't rust yours pelled jacker to fine doll missed aches.
Andrew Moody_1
Regular Advisor

Re: Clustering with OpenVMS + Oracle after 7-2.1


Thanks again JPE

2 of the 3 databases are equally stressed all year round. The third however is moderately to minimally stressed for 40 weeks of the year and then for 12 weeks (broken into 3 x 4 week chunks) could use every resource we have. These 12 weeks conicide with periods of relative inactivity on the other two databases.

Therefore I'm trying to devise an architecture that optimises the available hardware for the majority of the year but still has the overhead for letting the 3rd database gobble resources for a very short period of time.

This is why initially a cluster of two large nodes seemed preferable to three smaller nodes if I could balance the work over the two nodes.

Big questions without the knowledge to make properly informed decisions.
A sobering thought: What if, right at this very moment, I am living up to my full potential?
Jan van den Ende
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

Andrew,

How well do you know the apps? Especially, the one that "needs all it can get"? Is it many-users, or singel-process, or "a few" (batch?) processes? If it is single-process, one node would be prefered. If it is (or can be configured to be) >= 3, mostly localized, then use all 3 nodes to parallelize.

Maybe you should work with (stress?) your DBA to configure for localisation.

But, those would be _MY_ preferences. Others might use different emphasis, and come to different conclusions. These questions do not have _A_ correct answer. Different answers have different degrees of correctness, and the behavior of the app(s) is the most important referee here.

hth

Proost.

Have one on me.

jpe
Don't rust yours pelled jacker to fine doll missed aches.
Wim Van den Wyngaert
Honored Contributor

Re: Clustering with OpenVMS + Oracle after 7-2.1

The worst scenario is where all application processes are fighting for updating the same data (or data blocks).

Wim
Wim
Andrew Moody_1
Regular Advisor

Re: Clustering with OpenVMS + Oracle after 7-2.1


The instance that sucks resources intensively for a short period does so initially because we spend a period of a few days ramming data into it and then we then spend 2 or three weeks non stop creating files for printing so there will be half a dozen or so simultaneous big jobs on continuously for that period when it gobbles resources.

However as this period coincides with periods of relative quiet on the other two databases I was hoping that clustering and deploying a 9iRAC/10gGrid solution from Oracle would allow me to get a degree of virtualisation (conceptually) and be able therefore to throw the resources going spare from the other two apps at the third application.

This would be obviously preferable as a business solution than me having to ask them to buy a huge server simply to service the peak demands of an application that is otherwise largely dormant for large parts of the year.

Furthmore it would hopefully also allow me to offer the availability benefits for the other two databases from clustering the applications.

The other two databases are busy (when they are busy) with many concurrent users as oppossed to fewer large batch jobs.

But the idea is to create an environment that will support all three.
A sobering thought: What if, right at this very moment, I am living up to my full potential?
Andrew Moody_1
Regular Advisor

Re: Clustering with OpenVMS + Oracle after 7-2.1


Therefore hardware wise I'm not sure whether to suggest 2 x ES80/6 (32Gb)cluster or a 3 x ES47 (24Gb)
A sobering thought: What if, right at this very moment, I am living up to my full potential?