Oracle RAC is a cluster database with a shared cache architecture that overcomes the limitations of traditional shared-nothing and shared-disk approaches to provide a highly scalable and available database solution for all your business applications. Oracle RAC provides the foundation for enterprise grid computing.
Oracle Real Application Clusters (RAC) allows Oracle Database to run any packaged or custom application, unchanged across a set of clustered servers. This provides the highest levels of availability and most flexible scalability. If a clustered server fails Oracle continues running on the remaining servers. When you need more processing power, simply add another server without taking users offline.
File Systems and Volume Management
As RAC is a shared everything architecture, the volume management and file system used must be cluster-aware. Oracle recommends the use of Automatic Storage Management (ASM), which is a feature, included with Oracle Database 11g to automate the management of storage for the database.
Virtual Internet Protocol Address (VIP)
Oracle RAC 11g requires a virtual IP address for each server in the cluster. The virtual IP address is an unused IP address on the same subnet as the Local Area Network (LAN). This address is used by applications to connect to the RAC database. If a node fails, the Virtual IP is failed over to another node in the cluster to provide an immediate node down response to connection requests. This increases the availability for applications, as they no longer have to wait for network timeouts before the connection request fails over to another instance in the cluster.
Oracle RAC 11g provides infrastructure for datacenter high availability. It is also an integral component of oracle’s high availability architecture, which provides the highest availability data management solution. Oracle RAC provides protection against the main characteristics of high availability solution.
Oracle database is known for its reliability. RAC takes this step further by removing the database server as a single point of failure. If an instance fails, the remaining instances in the cluster are open and active.
Flexible Scalability : Oracle Real Application Clusters provides flexibility for scaling applications. To keep costs low, clusters can be built from standardized, commodity-priced processing, storage, and network components. When you need more processing power, simply add another server without taking users offline servers to gain horizontal scalability. Oracle Clusterware and Oracle RAC support up to 100 nodes in the cluster.
Automatic Workload Management : With Oracle Database 11g, application workloads can be defined as Services so that they can be individually managed and controlled. DBAs control which processing resources are allocated to each Service during both normal operations and in response to failures. Users connecting to a Service are load balanced across the cluster. Performance is tracked on a per Service basis by the Oracle Database 11g Automatic Workload Repository facility. Thresholds on performance metrics can be set to automatically generate alerts should these thresholds be crossed. Services are integrated with the Database Resource Manager, to control the resources within an instance that a group of users are given. Services provide location transparency with queues when using Oracle Streams Advanced Queuing.
Through the Scheduler feature, batch job classes can be mapped to services. To provide the best possible throughput of application transactions, Oracle Database 11g JDBC Implicit Connection Cache, OCI Session Pools, and ODP.NET connection pools provide intelligent load balancing for applications called Runtime Connection Load Balancing. The connection pools are updated with the current service response being supplied by the active database instances. When an application gets a connection, instead of receiving a random free connection, it is given the free connection that will provide the best possible response based on current processing activity in the cluster.
FAST APPLICATION NOTIFICATION (FAN)
Fast Application Notification (FAN), is a feature of Oracle RAC that further differentiate it for high availability and scalability. FAN enables the automated recovery of applications when cluster components fail. FAN solves the following problems:
• Application waiting for TCP/IP time-out when a node fails.
• Applications attempting to connect when service are down.
• Applications not connecting when the service is resume.
• Applications processing the last result after a node, instance, or service has gone down.
• Applications not balancing across available systems when services restart or expand.
• Attempting to execute work on slow, hung, and dead nodes.
For cluster configuration changes, the oracle RAC HA framework posts a FAN event immediately when a stat change occurs in a cluster.
Advantages of FAN
1. Your application can take advantage of FAN without any programmatic changes by utilizing integrated oracle client. The integrated client for FAN events include Oracle Database 11g JDBC, Oracle Database 11g ODP.NET, and Oracle Database 11g Oracle Call Interface (OCI).
2. Applications can take advantage of FAN programmatically by using the Oracle Notification Service Application Programming Interface (ONS API) to subscribe to FAN events and execute event-handling actions upon receipt.
3. Implement FAN server side callouts on your database Tier.
Oracle RAC FAN event Types:
Service Events – Includes both application services and database services.
Node Events – Includes cluster membership states and native join/leave operations
Load Balancing Events – Sent from the RAC Load Balancing Advisory.
Enabling Enterprise Grids
Oracle RAC enables enterprise Grids. Enterprise Grids are built from standardized, commodity-priced processing, storage, and network components. Oracle RAC enables the Oracle Database to run on this platform and provides the highest levels of capability in terms of availability and scalability. Nodes, storage, CPUs, and memory can all be dynamically provisioned while the system remains online. This allows service levels to be easily and efficiently maintained while lowering cost still further through improved utilization. Oracle Database 11g dramatically reduces operational costs and provides the flexibility to make systems more adaptive, proactive, and agile.
source : internet