Parallel Server   «Prev  Next»

Lesson 5 Operating system processes in OPS
Objective Describe Operating system processes in an Oracle Parallel Server system.

Operating System Processes and Oracle Real Application Clusters

Oracle introduced Oracle Real Application Clusters (RAC) in 1995 to replace Oracle Parallel Server. RAC is a cluster database solution that allows multiple Oracle instances to access a single database. RAC provides high availability, scalability, and performance for demanding workloads.
Oracle Parallel Server was a complex and expensive solution to implement and manage. RAC simplified the cluster database architecture and made it more affordable and accessible to a wider range of customers. RAC is now the standard networking technology for Oracle databases. Oracle Parallel Server is no longer supported and was officially discontinued in 2018.
Here is a table that summarizes the key differences between Oracle Parallel Server and Oracle RAC:
Feature Oracle Parallel Server Oracle RAC
Architecture Shared disk Shared storage or cluster file system (CFS)
Scalability Limited to a single node Can scale to hundreds of nodes
High availability Limited High availability with no single point of failure
Performance Good Excellent
Complexity High Low
Cost High Low

If you are considering migrating from Oracle Parallel Server to Oracle RAC, there are a number of resources available to help you with the process.

Distinctive Attributes of Operating System Processes in Oracle Real Application Clusters (RAC)

Oracle Real Application Clusters (RAC) represents a groundbreaking solution in the domain of database clustering, allowing multiple instances on different servers to access a single database. This enhances both availability and scalability. Within the context of RAC, operating system processes assume unique characteristics, tailored to fit this complex, multi-node environment. Here's a closer look at the distinctive aspects of operating system processes within Oracle RAC:
  1. Global Services Daemon (GSD): In a RAC environment, the GSD facilitates the start and stop of RAC instances and services. Each node in the cluster runs its own GSD process, allowing centralized control over multiple instances.
  2. Cluster Ready Services (CRS): CRS is the primary component ensuring high availability in a RAC setup. The processes under CRS, including `crsd`, monitor and manage the high-availability operations, detecting failures and ensuring necessary components are restarted.
  3. Cluster Synchronization Services (CSS): The CSS daemon (`ocssd`) manages cluster node membership and ensures that a consistent view of cluster membership is maintained across nodes. It ensures that if a node becomes unresponsive (due to issues like network failures), it's evicted from the cluster to maintain data integrity.
  4. Event Manager (EVM): EVM is a background process that publishes events, allowing components to be notified and take action when specific events occur.
  5. RACG: Oracle RAC uses the RACG (RAC Generic) services to run scripts on remote nodes in the cluster. This ensures coordination and centralized management across nodes.
  6. Inter-process Communication (IPC): In a RAC environment, nodes must frequently communicate with one another. This necessitates specialized IPC mechanisms. The Global Enqueue Service Daemon (`LMD`) process manages requests for data dictionary locks and library cache locks across instances.
  7. Cache Fusion: Oracle RAC employs Cache Fusion to maintain a coherent cache across nodes. When a block of data in one instance's cache is needed by another instance, it's transferred directly between the instances without being written to disk. Processes like the Global Cache Service (`LMS`) are responsible for managing Cache Fusion.
  8. ACMS: The Atomic Controlfile to Memory Service (ACMS) is essential in a RAC environment where an update to the control file must be globally committed across all instances.
  9. Global Resource Directory (GRD): GRD manages resources like data blocks or enqueues across cluster nodes. It ensures that a requested resource, currently held by one instance, is either read or written by another instance without disk I/O. Processes in the RAC manage the GRD, ensuring efficient resource sharing and conflict resolution.
  10. Cluster Health Monitor (CHM): The CHM continuously monitors node health, tracking operating system statistics and metrics and detecting and diagnosing node and network failures.

The Oracle Real Application Clusters environment, with its distributed architecture, necessitates a suite of specialized operating system processes. These processes, each tailored for a specific purpose, ensure that the RAC maintains high availability, data integrity, and seamless operation across multiple interconnected nodes. For any professional working with Oracle RAC, understanding these processes is pivotal for effective cluster management and optimization.

Setting up Oracle Parallel Server | Legacy

There are several ways to set up OPS, depending on your hardware and software configuration and the needs of your system. However, no matter how you do it, your operating system must have certain components in place and available for use by the OPS. OPS uses the operating system components to access database files and to speed up communications, as you see in the diagram below.

Operating System Components of Oracle Parallel Server: A Legacy Perspective

Cluster Manager2
Cluster Manager2

CM The Cluster Manager watches over all the activity for all of the processors. All transactions register and de-register with this component. If a failure occurs in one instance, the Cluster Manager redirects traffic until it is fixed.
Startup The Startup component is part of the Windows NT operating system, but is not needed on other operating systems. It controls the sequence of events when the OPS starts up.
IO The Input/Output component coordinates simultaneous access to shared disks. It works with the Oracle process called the Integrated Distributed Lock Manager (IDLM).
IPC The interprocessor communication (IPC) component is responsible for moving information between the interconnected parallel processors as quickly as possible. A fast IPC is needed for good response time in the OPS.

Oracle Component

The Oracle component that works closely with these operating system components is called the Integrated Distributed Lock Manager (IDLM). The IDLM is the choreographer of all the communications that are happening at once in a parallel system. Its primary tasks are to:
  1. Coordinate operations, such as locking and updating data, that require reading and writing of data on disks. This maximizes re-use of data in memory.
  2. Ensure that all operations have a consistent view of the data. This validates data integrity.
The IDLM is a built-in component of the (OPS) Oracle Parallel Server that is customized for each operating system that Oracle suports. The next lesson covers the concept of instance affinity.

Operating System Processes - Exercise

Click the Exercise link below to match terms with their definitions.
Operating System Processes - Exercise