What is the architecture of Exadata storage server software?

What is the architecture of Exadata storage server software?

While the hardware of an Exadata cell is impressive, the "magic" happens in the Exadata Storage Server Software. This is the specialized software stack that runs on every storage cell, transforming standard x86 servers into intelligent, database-aware storage engines.

Think of it as a mini-operating system designed for one purpose: optimizing Oracle Database I/O.


1. The Core Engine: CELLSRV

The heart of the storage server is the CELLSRV (Cell Server) process. This is a multi-threaded, highly optimized C++ program that handles the bulk of the work.

What CELLSRV does:

  • Smart Scan Execution: It parses the SQL fragments sent by the database and performs the predicate filtering and column projection.

  • Block Management: It handles the reading and writing of data blocks from the physical media.

  • Cache Management: It decides what stays in the Smart Flash Cache and what gets pushed to disk.

  • Resource Management: It coordinates with IORM to ensure high-priority databases get their fair share of bandwidth.


2. Management and Monitoring: MS and RS

In addition to the data engine, two other background processes ensure the cell remains healthy and manageable:

MS (Management Server)

The MS process provides the interface for administrative tasks. When you run CellCLI commands to create a grid disk or check the health of a drive, you are talking to MS. It also handles Alerts and integrates with Oracle Enterprise Manager (OEM).

RS (Restart Server)

The RS process is the "watchdog." Its only job is to monitor the CELLSRV and MS processes. If either of them crashes or hangs, RS immediately restarts them to ensure maximum uptime for the storage grid.


3. The Communication Layer: The Network Stack

Exadata storage software doesn't use standard TCP/IP for data transfers. Instead, it uses a specialized protocol designed for the RoCE (RDMA over Converged Ethernet) or InfiniBand fabric.

  • iDB (Intelligent Database Protocol): This is the language the Database Server speaks to the Storage Server. It allows the database to send SQL-level metadata (like "only give me rows where ID > 100") instead of simple block requests.

  • Zero-Copy Transfers: The software uses RDMA to move data directly from the storage cell’s memory into the database server’s memory, bypassing the OS kernel entirely.


4. Storage Architecture Layers

The software organizes the physical hardware into a logical hierarchy that the database can understand:

  1. LUN (Logical Unit): The raw physical drive (HDD or Flash) presented by the RAID controller.

  2. Cell Disk: An abstraction over the LUN that adds metadata and management.

  3. Grid Disk: A slice of a Cell Disk that is presented to Oracle ASM.

  4. Flash Cache/Log: Logical areas of the Flash media used for acceleration.


5. Key Intelligent Features

The storage software isn't just a pass-through; it performs complex logic on the fly:

  • Hybrid Columnar Compression (HCC): The software can decompress and scan HCC-compressed data directly on the storage CPUs.

  • Storage Indexing: It maintains a memory-resident index of Min/Max values for every 1MB chunk of data to skip unnecessary I/O.

  • Smart Flash Logging: It manages the parallel "race" between Flash and Disk for redo log writes to reduce commit latency.


Summary: A Purpose-Built Stack

Process/LayerFunction
CELLSRVThe engine. Handles SQL offloading and I/O.
MSThe manager. Handles configuration and monitoring.
RSThe watchdog. Ensures process availability.
iDB ProtocolThe language. Enables "Smart" communication.
IORMThe traffic cop. Manages I/O priorities.

The Exadata Storage Server Software is essentially a distributed database kernel that runs inside your storage. By offloading CPU-intensive tasks to this layer, the main database servers are freed up to handle more transactions and complex joins.

Looking for servers Rental ?

Call Our Expert :


  • (call for rental enquiries)

Email us :