If a node in the shared disk cluster fails, the system dynamically redistributes the workload among the surviving cluster nodes.
RAC checks to detect node and network failures. A disk-based heartbeat mechanism uses the control file to monitor node membership and the cluster interconnect is regularly checked to determine correct operation.
Reduced time to recovery with concurrent resource configuration and instance (cache) recovery
Enhanced failover reliability in 10g with the use of Virtual IP addresses (VIPs)
Failover Users Database X Server Server Server Server
Transparent Application Failover
Masks failures to end users; they don’t need to log back into the system
Applications and users are transparently reconnected to another node
Applications and queries continue uninterrupted
Transactions can failover and replay
Login context maintained
DML transactions are rolled back
RAC Improvements for Oracle 9i
Full Cache Fusion
Enhanced coordination of cache management and distributed lock manager (DLM)
Lock simplification and automation
Global Cache Service coordinates local buffer cache and remote block transfers
Enhanced IPC (InterProcess Communication)
Resource configuration simplification and automation
Oracle 10g RAC New Features
Integrated Clusterware Management
No third-party clusterware software required
Automatic Workload Management
Application workloads can be managed through named services
Single System Image Management
Enterprise Manager manages RAC instances as a single image
Fast Connection Failover
Fast recovery between the database and mid-tier applications
Reduced message traffic, memory usage, and other resources
Zero Downtime Patching
Patches may be applied one node at a time without downtime
Cluster Verification and Improved Diagnostic Tools
New cluster diagnostic tool and improved diagnostic tools
Full Cache Fusion
Is a major feature of RAC starting with 9i
The underlying technology that enables RAC
Protocol that allows instances to combine their data caches into a shared global cache
Allows any node to get the most up-to-date data information from the cache of any other node in the cluster without having to access the disk drives again.
Improved performance with 10g
What is Cache Fusion? When do I care about it?
“Dirty” block of data is created
Data from disk is read into memory on a node
Data is updated on that node
Data hasn’t been written to disk yet.
Another node requests the data
“ ABC” block of data written to the disk drives in the database Node A Node B ABC Data
“ ABC” block of data read into memory on Node A Node A Node B ABC Data ABC Data
“ ABC” updated to “XYZ” in cache Node A Node B ABC Data ABC Data XYZ Data
Node B requests data block Node A Node B ABC Data ABC Data XYZ Data I want data! Gimme! Gimme!
Node A must write data block to disk drive Node A Node B ABC Data XYZ Data I want data! Gimme! Gimme! ABC Data XYZ Data write Previous to 9i RAC
Node B must read data block from disk drive Node A Node B ABC Data XYZ Data XYZ Data ABC Data XYZ Data read Previous to 9i RAC
Now with RAC Cache Fusion Node A Node B ABC Data ABC Data XYZ Data I want data! Gimme! Gimme! XYZ Data
Data is transferred immediately via the interconnect
Shared cache minimizes slow I/O
Shared Cache Across Nodes Users Database Server Server Server Server Cache Cache Cache Cache
Resource Simplification and Automation
No init.ora parameters required
to move the location of the resource masters for a database file to the instance where block operations are most frequently occurring. This optimizes
Dynamic resource remastering
Ability to move the ownership of a resource between instances of Real Application Clusters.
Dynamic resource remastering is used to implement resource affinity for increased performance.
What does cache fusion avoid that was mandatory in previous versions of Oracle Parallel Server?
Which Oracle process is most important in managing user session failover?
If the purpose of the interconnect is NOT to serve as a “heartbeat”, where is the heartbeat?