General Database Deployment Topics for Oracle RAC
Learn about various Oracle RAC deployment considerations such as tablespace use, object creation, distributed transactions, and more.
This section describes considerations when deploying Oracle RAC databases. Oracle RAC database performance is not compromised if you do not employ these techniques. If you have an effective noncluster design, then your application will run well on Oracle RAC.
Tablespace Use in Oracle RAC
Learn how to optimize tablespace use in Oracle RAC.
In addition to using locally managed tablespaces, you can further simplify space administration by using automatic segment space management (ASSM) and automatic undo management.
ASSM distributes instance workloads among each instance's subset of blocks for inserts. This improves Oracle RAC performance because it minimizes block transfers. To deploy automatic undo management in an Oracle RAC environment, each instance must have its own undo tablespace.
Object Creation and Performance in Oracle RAC
Learn about object creation and performance in Oracle RAC.
As a general rule, only use DDL statements for maintenance tasks and avoid running DDL statements during peak system operation periods. In most systems, the amount of new object creation and other DDL statements should be limited. As in noncluster Oracle AI Databases, excessive object creation and deletion can increase performance overhead.
Node Addition and Deletion and the SYSAUX Tablespace in Oracle RAC
Learn how adding and deleting nodes affects the SYSAUX tablespace in Oracle RAC.
If you add nodes to your Oracle RAC database environment, then you may need to increase the size of the SYSAUX tablespace. Conversely, if you remove nodes from your cluster database, then you may be able to reduce the size of your SYSAUX tablespace.
See also
Your platform-specific Oracle RAC installation guide for guidelines about sizing the SYSAUX tablespace for multiple instances
Distributed Transactions and Oracle RAC
Learn about distributed transactions in Oracle RAC.
If you are running XA Transactions in Oracle RAC environments and the performance is poor, then direct all of the branches of a tightly coupled distributed transaction to the same instance by creating multiple Oracle Distributed Transaction Processing (DTP) services, with one or more on each Oracle RAC instance.
Each DTP service is a singleton service that is available on one and only one Oracle RAC instance. All access to the database server for distributed transaction processing must be done by way of the DTP services. Ensure that all of the branches of a single global distributed transaction use the same DTP service. In other words, a network connection descriptor, such as a TNS name, a JDBC URL, and so on, must use a DTP service to support distributed transaction processing.
Related Topics
Deploying OLTP Applications in Oracle RAC
Learn about deploying OTLP applications in Oracle RAC.
Cache Fusion makes Oracle RAC databases the optimal deployment servers for online transaction processing (OLTP) applications. This is because these types of applications require:
- High availability if there are failures
- Scalability to accommodate increased system demands
- Load balancing according to demand fluctuations
The high availability features of Oracle AI Database and Oracle RAC can re-distribute and load balance workloads to remaining instances without interrupting processing. Oracle RAC also provides excellent scalability so that if you add or replace a node, then Oracle AI Database updates resources and re-distributes processing loads.
Flexible Implementation with Cache Fusion
Learn about flexible workload implementation with cache fusion in Oracle RAC.
To accommodate the frequently changing workloads of online transaction processing systems, Oracle RAC remains flexible and dynamic despite changes in system load and system availability. Oracle RAC addresses a wide range of service levels that, for example, fluctuate due to:
- Varying user demands
- Peak scalability issues like trading storms (bursts of high volumes of transactions)
- Varying availability of system resources
Deploying Data Warehouse Applications in Oracle RAC
Learn how to deploy data warehouse applications in Oracle RAC
This section discusses how to deploy data warehouse systems in Oracle RAC environments by briefly describing the data warehouse features available in shared disk architectures.
Parallelism for Data Warehouse Applications on Oracle RAC
Learn about parallelism for data warehouse applications in Oracle RAC.
Oracle RAC is ideal for data warehouse applications because it augments the noncluster benefits of Oracle AI Database. Oracle RAC does this by maximizing the processing available on all of the nodes that belong to an Oracle RAC database to providespeed-up for data warehouse systems.
The query optimizer considers parallel processing when determining the optimal processing plans. The default cost model for the query optimizer is CPU+I/O and the cost unit is time. In Oracle RAC, the query optimizer dynamically computes intelligent defaults for parallelism based on the number of processors in the nodes of the cluster. An evaluation of the costs of alternative access paths, table scans versus indexed access, for example, takes into account the degree of parallelism available for the operation. This results in Oracle AI Database selecting the processing plans that are optimized for your Oracle RAC configuration.
Parallel Processing in Data Warehouse Systems and Oracle RAC
Use parallel processing to improve data warehouse performance in Oracle RAC.
Parallel processing uses multiple processes to run SQL statements on one or more CPUs and is available on both noncluster Oracle AI Databases and Oracle RAC databases.
Oracle RAC takes full advantage of parallel processing by distributing parallel processing across all available instances. The number of processes that can participate in parallel operations depends on the degree of parallelism assigned to each table or index.
Related Topics
Data Security Considerations in Oracle RAC
Learn about transparent data encryption and Microsoft Windows firewall considerations for Oracle RAC data security.
Transparent Data Encryption and Keystores
Learn about transparent data encryption and keystores in Oracle RAC.
Oracle AI Database enables Oracle RAC nodes to share the keystore (wallet). This eliminates the need to manually copy and synchronize the keystore across all nodes. Oracle recommends that you create the keystore on a shared file system. This allows all instances to access the same shared keystore.
Oracle RAC uses keystores in the following ways:
- Any keystore operation, such as opening or closing the keystore, performed on any one Oracle RAC instance is applicable for all other Oracle RAC instances. This means that when you open and close the keystore for one instance, then it opens and closes the keystore for all Oracle RAC instances.
Starting with Oracle AI Database 26ai, the parameter
ENCRYPTION_WALLET_LOCATIONis desupported.To store and retrieve the TDE wallet, use the
WALLET_ROOTstructure (introduced with Oracle Database 18c). - A master key rekey performed on one instance is applicable for all instances. When a new Oracle RAC node comes up, it is aware of the current keystore open or close status.
- Do not issue any keystore
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPENorCLOSESQL statements while setting up or changing the master key.
Oracle does not support the use of individual TDE wallets for each Oracle RAC node. Instead, use shared wallets for TDE in the Oracle RAC environment. This enables all of the instances to access the same shared software keystore.
Related Topics
Windows Firewall Considerations
Learn about Microsoft Windows firewall considerations.
By default, all installations of Windows Server 2003 Service Pack 1 and higher enable the Windows Firewall to block virtually all TCP network ports to incoming connections. As a result, any Oracle products that listen for incoming connections on a TCP port will not receive any of those connection requests, and the clients making those connections will report errors.
Depending upon which Oracle products you install and how they are used, you may need to perform additional Windows post-installation configuration tasks so that the Firewall products are functional on Windows Server 2003.
Securely Run ONS Clients Using Wallets
You can configure and use SSL certificates to set up authentication between the ONS server in the database tier and the notification client in the middle tier.
JDBC or Oracle Universal Connection Pools, and other Oracle RAC features, such as Fast Connection Failover, subscribe to notifications from the Oracle Notification Service (ONS) running on Oracle RAC nodes. These connections are not usually authenticated.
- Starting with Oracle Database 18c, a default wallet is created during the installation of Oracle Grid Infrastructure.
- If you are running a client-side ONS daemon on the middle tier, then there are two possible configurations:
- ONS started from OPMN (as in OracleAS 10.1.3.x), which uses
opmn.xmlfor its configuration. - ONS started standalone (as when using ONSCTL), which uses
ons.configfor its configuration.
For the first configuration, refer to the OPMN Administrator's Guide for the Oracle Application Server release. This involves modifying the
opmn.xmlfile to specify the wallet location.For the second configuration, the client-side ONS daemon can, potentially, run on different servers. Copy the wallet from step 1 to those client-side servers and specify the path on that client-side server in either the
ons.configfile or in theopmn.xmlfile. - ONS started from OPMN (as in OracleAS 10.1.3.x), which uses
If you are running a remote ONS configuration without a client-side ONS daemon, then configure the client-side server.
Export the ONS resource to the client cluster.
Use a command similar to the following, where cluster_name is the name of the remote cluster, and filename is the name of the file to which the credentials data will be written.
$ srvctl export ons -clientcluster cluster_name -clientdata filename- Specify the path on the client-side server.
Modify either the
ons.configfile or theopmn.xmlfile to point to the location of the copied file.
Related Topics