Exadata Exascale Architecture Explained: Elastic Compute and Storage for Oracle Databases
Exascale architecture

Exadata Exascale Architecture Explained: Elastic Compute and Storage for Oracle Databases

Exascale keeps everything that makes Exadata fast and changes who owns the hardware. Compute and storage become shared, elastic pools, databases live in storage vaults instead of ASM disk groups, and clones become metadata operations. Here is how the pieces fit.

Exadata Multi-Cloud Series · Architecture Deep Dive
Oracle Database VM clusters (ECPUs) RDMA fabric Exascale storage pool
On this page
  1. 01 · Why Exadata Needed a New Architecture
  2. 02 · The Big Picture: Pools, Not Racks
  3. 03 · The Layered Stack, Top to Bottom
  4. 04 · Storage Vaults and Exascale Files
  5. 05 · How I/O Flows Through Exascale
  6. 06 · Elastic Compute and Storage in Practice
  7. 07 · Snapshots and Thin Clones for DBAs
  8. 08 · What Stays the Same, and What Changes
  9. 09 · Key Takeaways
  10. 10 · Frequently Asked Questions

01 · Why Exadata Needed a New Architecture

Architecture deep dive · Exadata Exascale

"We want Exadata, but we only need a slice of one."

For most of its history the unit of Exadata was the rack, or at least a set of whole database and storage servers. That suited consolidated ERP and data warehouse estates, and it made life hard for everyone else. A team with one 2 TB database, or a fleet of short-lived test copies, had to choose between overbuying Exadata and giving up Smart Scan, RDMA and the storage software that make it special.

Exascale is Oracle's answer. It is not a smaller Exadata; it is a different way of running the same Exadata hardware and software. Oracle operates large shared pools of database servers and storage servers, and each customer gets a VM cluster and a storage vault carved out of those pools. In the cloud it is sold as Exadata Database Service on Exascale Infrastructure (ExaDB-XS) on OCI and through Oracle AI Database@AWS, @Azure and @Google Cloud.

01Compute and storage are separate shared pools. You scale ECPUs and storage gigabytes independently, with no separate IOPS charge.
02Databases live in Exascale storage vaults: files are striped across every storage server, without ASM disk groups to manage.
03Smart Scan, storage indexes and RDMA reads still work, and snapshots and thin clones become fast, space-efficient metadata operations.

02 · The Big Picture: Pools, Not Racks

Answer: Exascale runs many customers' VM clusters on a shared pool of Exadata database servers, and stores their databases in storage vaults spread across a shared pool of Exadata storage servers. An RDMA network fabric connects the two pools, and Exascale control services manage vaults, files, clones and pool health.

Three ideas define the architecture. First, the database servers are a pool: your VM cluster's virtual machines run on servers that also host other tenants' VMs, with hypervisor isolation and per-VM ECPU allocation. Second, the storage servers are a pool too: every vault's data is spread across all of them, so even a small database gets the I/O bandwidth of many servers. Third, a set of Exascale services replaces the per-cluster ASM instance and keeps the metadata about which file lives where.

The topology below shows one Exascale site with three tenants. Each tenant connects from its own network to its own VM cluster. Below the RDMA fabric, the coloured stripes show the three tenants' vaults, each spread across all four storage servers.

Inside Exascale: Shared Pools, RDMA Fabric and Storage Vaults OCI parent region Control plane Tenant A own VPC / VNet Tenant B own VPC / VNet Tenant C own VPC / VNet Exascale infrastructure (Oracle-operated site in OCI or a hyperscaler data center) RESTful services (ERS) API for vaults, files, clones Cluster services (EGS) membership, pool health Data services (EDS) vault and file metadata Tenant SQL*Net RDMA data path Control and metadata Exascale control services VM cluster A VM cluster C DB server 1 (KVM host) VM cluster B VM cluster A DB server 2 (KVM host) VM cluster C VM cluster B DB server 3 (KVM host) Database server pool RDMA over Converged Ethernet (RoCE) network fabric Storage server 1 XRMEM, flash, disk Smart Scan offload Storage server 2 XRMEM, flash, disk Smart Scan offload Storage server 3 XRMEM, flash, disk Smart Scan offload Storage server 4 XRMEM, flash, disk Smart Scan offload Vault A extents Vault A extents Vault A extents Vault A extents Vault B extents Vault B extents Vault B extents Vault B extents Vault C extents Vault C extents Vault C extents Vault C extents Storage server pool: every vault striped across every server
Figure 1 · Exascale internals: shared database and storage server pools, an RDMA fabric, per-tenant vaults and the control services

Follow tenant A: its VM cluster runs on database servers 1 and 2, and its vault stripe crosses every storage server. That is the core of the elasticity story. Adding ECPUs grows the VMs on the top pool; adding gigabytes grows the stripe on the bottom pool. Neither change requires new hardware for that tenant.

03 · The Layered Stack, Top to Bottom

Answer: Exascale has seven practical layers: the Oracle Database instance, the VM cluster, the Exascale data access layer in the database, the RDMA fabric, the Exascale storage services with vaults and files, the Exadata storage server software, and the physical memory, flash and disk tiers.

Most of these layers exist on any Exadata. What Exascale changes is the middle: the database no longer talks to an ASM instance to learn where extents are. It asks the Exascale services for file metadata and then reads and writes storage servers directly. VM images are also stored on Exascale volumes rather than on local disks, which is what lets Oracle place and move VMs within the database server pool.

The Exascale Stack, From SQL to Physical Media Oracle AI Database instance CDB, PDBs, RAC, Data Guard, optimizer L1 VM cluster (guest VMs) ECPUs allocated per VM, images on Exascale volumes L2 Exascale data access in the database File metadata from Exascale, direct I/O, no ASM instance L3 RDMA network fabric (RoCE) Low-latency transport between the two server pools L4 Exascale storage services Vaults, files, extents, redundancy, snapshots and clones L5 Exadata storage server software Smart Scan, storage indexes, HCC, flash cache L6 Physical media tiers Exadata RDMA Memory (XRMEM), NVMe flash, disk L7 request results Scale: ECPUs Scale: GB You manage schemas, PDBs, tuning, patch timing Oracle manages VMs, fabric, vaults, storage servers, media, pool capacity and isolation Request travels down the stack Results return up the stack Layers L3 and L5 are new with Exascale. Everything else is the familiar Exadata stack.
Figure 2 · The Exascale stack: what you manage at the top, what Oracle runs underneath, and where each kind of scaling happens

The bracket on the right is the operating model in one picture. You manage the database layer: schemas, users, PDBs, tuning and patch timing. Oracle manages everything from the VM down. The two yellow tags mark the only two knobs that change your bill: ECPUs on the VM layer, gigabytes on the vault layer.

Layer Dedicated Exadata (ExaDB-D) Exascale (ExaDB-XS)
Compute Whole database servers, VMs on them VMs on a shared database server pool
Storage layout ASM disk groups (DATA, RECO) Exascale storage vaults, no ASM
Data distribution Across your own storage servers Across the whole shared storage pool
Clones Sparse clones with extra setup Native snapshots and thin clones
Billing unit Infrastructure + ECPUs ECPUs + storage GB, no IOPS charge

04 · Storage Vaults and Exascale Files

Answer: A storage vault is a logical container for database files in the Exascale storage pool. It has a capacity you pay for in gigabytes, its files are striped and mirrored across all storage servers, and databases reference it directly by name instead of through an ASM disk group.

If you think in ASM terms, a vault plays the role of the disk group from the database's point of view, but without disks you own. When you create an ExaDB-XS VM cluster you associate it with a vault, and database files created there carry the vault name in their path, prefixed with an at sign. Commands such as CREATE TABLESPACE and parameters such as DB_CREATE_FILE_DEST simply point at the vault.

What happens inside the pool

Each Exascale file is split into extents that are distributed across the storage servers in the pool and kept with redundant copies on different servers. Oracle handles rebalancing when servers are added or replaced, the job that ASM rebalance used to do on dedicated systems. Because extents of every vault land on every server, an I/O-heavy query on a small database still fans out across the whole pool.

Concept ASM on dedicated Exadata Exascale
Container Disk group (DATA, RECO, SPARSE) Storage vault
Who manages it Your Grid Infrastructure and ASM instance Exascale services run by Oracle
File reference +DATA/... @VAULT_NAME/...
Capacity change Add storage servers or cells Increase vault size in the console or API
Snapshots Sparse disk groups, test masters Built in, per file
Not a NASA vault is not a network file share. Database I/O still uses the Exadata storage protocol over RDMA, with Smart Scan offload, storage indexes and flash caching. Only the bookkeeping moved from ASM to Exascale services.

05 · How I/O Flows Through Exascale

Answer: Exascale keeps Exadata's three I/O superpowers: Smart Scan pushes filtering to the storage servers, RDMA lets the database read hot blocks straight from storage server memory, and snapshots let new databases share existing extents. The walkthrough shows each path step by step.

Performance questions about Exascale usually come down to one worry: does a shared pool mean slower I/O? The answer depends on the I/O type, so it helps to trace the three most common ones. The figure follows a reporting query, a single-row OLTP lookup and a thin clone from request to result.

Three I/O Paths Through Exascale Example 1 · Smart Scan query Example 2 · OLTP single-block read Example 3 · Thin clone Selective full scan SELECT ... WHERE region = 'EU' on a large table Request fans out To every server holding the table's extents Filter on storage Storage index skips regions, predicate and column projection Rows return Database merges results from all servers Only matching rows cross the fabric Buffer cache miss Index lookup needs one block RDMA read Direct from XRMEM or flash cache over RoCE If not cached Storage server reads flash or disk Block in SGA Exadata-class latency Cached reads skip storage CPU Clone request SNAPSHOT COPY or console clone Metadata copy New file entries point at existing extents Clone opens No data copied, no space used yet Writes diverge Only changed blocks use new vault space Seconds, regardless of size Offloaded scan traffic RDMA block read Metadata operation
Figure 3 · Three I/O paths through Exascale: a Smart Scan, an RDMA single-block read and a thin clone

The green tags at the bottom are the takeaway. Smart Scan returns only matching rows, so the RDMA fabric carries far less data than the table size. The OLTP read never wakes the storage server's CPU when the block is cached in memory. The clone writes metadata, not data, so its time does not grow with database size.

Smart Scan on a shared pool

A full scan with a selective predicate is sent to every storage server holding extents of the table. Storage indexes skip regions whose min and max values cannot match, the remaining blocks are filtered and projected on the storage servers, and only qualifying rows and columns return. Because the vault is spread across the whole pool, the scan gets parallelism from many servers even for a modest table.

OLTP reads over RDMA

For a single-block read the database checks the buffer cache first, then reads the block directly from Exadata RDMA Memory or flash cache on the storage server that holds it, using RDMA over the RoCE fabric. If the block is not cached, the storage server reads it from flash or disk. This is why Exascale OLTP latency stays in the Exadata class rather than the network storage class.

Thin clones

A clone request creates new file entries that point at the same extents as the source. Only blocks changed afterwards consume new space. A 5 TB PDB can therefore be cloned for testing in seconds and cost little until the test workload starts writing.

06 · Elastic Compute and Storage in Practice

Answer: Compute and storage scale independently. You change the ECPU count of a VM cluster or the capacity of its storage vault through the console, CLI or Terraform, and pay for what is allocated, with no separate charge for IOPS.

Independent scaling changes capacity planning. On dedicated infrastructure, you size the rack for the peak of both CPU and storage, and live with whichever is idle. On Exascale the two curves are separate. A reporting database that needs 40 TB but little CPU, and a busy OLTP schema that needs many ECPUs but 500 GB, are both sized honestly.

  1. Start small. Provision the VM cluster with the ECPUs the current workload needs and a vault sized to today's data plus growth headroom.
  2. Watch the right metrics. Track CPU utilization, average active sessions and vault used capacity in OCI monitoring or your hyperscaler's monitoring service.
  3. Scale ECPUs for peaks. Increase ECPUs before month end or a launch, then reduce them afterwards. Database services stay up during the change.
  4. Grow the vault ahead of need. Increase vault capacity before free space runs low; there are no cells or disks to order.
  5. Review monthly. Compare allocated ECPUs and gigabytes with actual use and adjust. Elasticity saves money only if someone turns the dial down.
Change Dedicated (ExaDB-D) Exascale (ExaDB-XS)
Add CPU Within the servers you rent; add servers for more Increase ECPUs on the VM cluster
Add storage Add storage servers Increase vault capacity
New test copy Full copy or sparse clone setup Thin clone in seconds
Minimum footprint Whole servers Small VM cluster and vault

07 · Snapshots and Thin Clones for DBAs

Answer: Exascale makes snapshot and clone operations native to storage. A PDB snapshot copy or a database clone shares extents with its source and consumes space only for changed blocks, which makes per-developer and per-test-run copies affordable.

On dedicated Exadata, thin cloning needed sparse disk groups, a read-only test master and a careful refresh routine. On Exascale the storage layer does the work. You can still use familiar SQL, and the cloud consoles expose clone operations for whole databases.

-- Thin clone of a production PDB for testing (same CDB)
CREATE PLUGGABLE DATABASE sales_test FROM sales_prod SNAPSHOT COPY;
ALTER PLUGGABLE DATABASE sales_test OPEN;

-- Where are the files? Exascale paths start with the vault name
SELECT name FROM v$datafile WHERE con_id = (SELECT con_id FROM v$pdbs WHERE name = 'SALES_TEST');

Good practice is to treat clones as disposable. Build them from a masked copy if they leave the production security boundary, tag them with an owner and an expiry date, and drop them when the test cycle ends. Clones are cheap to create, and their changed blocks are still billed vault capacity.

08 · What Stays the Same, and What Changes

For the people who write SQL and run batch jobs, very little changes. The database release, the optimizer, RAC, Data Guard, AWR and the Exadata performance features behave as they do on dedicated systems. For the people who plan capacity and run operations, quite a lot changes.

  • No ASM administration. Disk groups, rebalance power and failure groups are no longer your concern.
  • Capacity is a setting. ECPUs and vault size replace hardware orders and rack elevations.
  • Release requirements. Exascale supports Oracle AI Database 26ai and Oracle Database 19c (19c through Exascale volumes with ASM), so check the release updates on offer and your application certification first.
  • Noisy neighbours are Oracle's problem. Resource isolation in the shared pools is part of the service.
  • Clones become routine. Test, development and analytics copies can be created per sprint instead of per quarter.

Exascale does not make Exadata smaller. It makes the unit you rent smaller, while every query still runs on the full power of the pool underneath.

09 · Key Takeaways

  1. Two shared pools, one fabric. Exascale runs tenants' VM clusters on a shared database server pool and their vaults on a shared storage server pool, joined by RDMA.
  2. Vaults replace ASM. Database files live in storage vaults, are striped across every storage server and are referenced by vault name.
  3. Exadata features are intact. Smart Scan, storage indexes, flash caching and RDMA reads still do the heavy lifting.
  4. Scale each dimension on its own. ECPUs and storage gigabytes are separate dials, with no IOPS charge.
  5. Clones are metadata. Snapshot copies and thin clones share extents and cost space only for changed blocks.

10 · Frequently Asked Questions

What is Exadata Exascale?

Exascale is an Exadata architecture in which many customers share pools of Exadata database and storage servers. Each customer gets a VM cluster and a storage vault, billed by ECPU and by gigabyte, while keeping Exadata features such as Smart Scan and RDMA.

Does Exascale use ASM?

No. Database files are stored as Exascale files in storage vaults, managed by Exascale services. The database references the vault by name instead of an ASM disk group.

Is Smart Scan available on Exascale?

Yes. Exascale keeps Exadata storage offload, so Smart Scan, storage indexes and related features filter data on the storage servers before results return to the database.

How do thin clones work on Exascale?

A clone creates new file entries that point to the same extents as the source. Only blocks changed after the clone consume additional space, so clones are created quickly and cost little until they are modified.

Can I scale compute and storage separately on Exascale?

Yes. You change ECPUs on the VM cluster and capacity on the storage vault independently, and you are billed for ECPUs and storage gigabytes with no separate IOPS charge.

About the author. ExaGuru Oracle Cloud architects design and run Exadata, ExaCC and multi-cloud Oracle estates for enterprise customers, and teach the same architectures in live, hands-on labs.

Learn this hands-on

Practice Exadata, OCI and multi-cloud architectures in live labs with a practicing consultant.