For years, running Oracle on AWS meant managing it yourself on EC2 or handing it to Amazon RDS for Oracle and accepting the constraints of a managed commodity service. Database@AWS changes the menu. Oracle now operates real Exadata infrastructure inside AWS regions, reachable over private low latency paths, and the question is no longer whether Oracle can live well on AWS but which of two very different platforms a given workload deserves. Teams get this wrong in both directions: paying for an Exadata platform to host databases RDS would carry without effort, or torturing a heavyweight workload to fit RDS constraints it was never going to respect.
This article is part of our multicloud database series. The pillar, Oracle Database@Azure, @AWS, and @Google Cloud: The Buyer Guide, covers the strategic choice across cloud providers; here we stay inside AWS and compare the two ways to run Oracle there as managed services. For the full walkthrough of what Database@AWS actually is, see our complete guide to Database@AWS. What follows assumes you have real Oracle workloads on or headed to AWS and need to decide, workload by workload, where each one should land.
Two philosophies, not two tiers
These are not a small option and a large option of the same thing. The two services embody different philosophies about what an Oracle database is.
RDS for Oracle treats the Oracle database as a commodity engine. AWS provisions a single instance database, automates the undifferentiated work of patching, backup, and failover orchestration, and exposes the result through the same console, APIs, and billing constructs as every other RDS engine. The bet is that most databases do not need anything exotic: they need to be reliable, patched, backed up, and forgotten about. For an enormous share of the world's Oracle databases, that bet pays off.
Database@AWS treats the Oracle database as a platform in its own right. Oracle places actual Exadata racks inside AWS data centers, operates them as Oracle Cloud Infrastructure capacity, and connects them to your AWS environment so applications in the same region see local latency. You get the Exadata Database Service and Autonomous Database options that exist in OCI, with the engineered system features, clustering, and scale the word Exadata implies. The bet here is the opposite one: the databases that matter most are exactly the ones that need everything Oracle has built, and they should not have to leave AWS to get it.
The capability gap
Once you see the two philosophies, the capability gap stops being surprising. It is structural, not accidental. The specific feature lists move over time, so always verify current RDS feature support against the AWS documentation before you commit; the shape described here is the durable part.
Where RDS draws its lines
RDS for Oracle is deliberately constrained. It runs single instance databases; there is no Real Application Clusters, so a workload that depends on RAC for scale out or for its availability model has no honest home there. High availability comes through the Multi AZ pattern, a standby in another availability zone with managed failover, respectable for many workloads but a different answer than RAC or a fully customer controlled Data Guard topology. The supported editions and options are a curated subset of the Oracle catalog, and some options that heavyweight estates lean on are restricted or absent. Instance sizes top out at the ceiling of the underlying instance families, generous for most databases and a hard wall for the largest. And because AWS manages the host, you operate with restricted privileges rather than full SYSDBA style control, which is irrelevant until a vendor script or diagnostic tool assumes access the platform will not give you.
None of this is a criticism. Those constraints are the product: they make the service cheap to operate, consistent to run, and safe to hand to a team without deep Oracle expertise.
Where Database@AWS removes them
Database@AWS is, structurally, the absence of those constraints. It is Exadata, so you get the performance features that define the platform: smart scan offload to storage, columnar flash caching, RDMA fabric between nodes, and the throughput that lets consolidation actually work. RAC is fully supported, so scale out and rolling maintenance behave the way Oracle estates expect. Data Guard is under your control, with the topologies, protection modes, and observer placement your recovery objectives demand. The Autonomous Database option brings Oracle's self managing service into an AWS region. Editions, options, and packs follow Oracle's catalog, and the scale ceiling is an Exadata ceiling, which most workloads will never find.
The summary: if a workload fits comfortably inside RDS constraints, RDS is the simpler and usually cheaper home. If a workload depends on what the constraints exclude, no amount of discounting makes RDS the right answer.
One pane of glass, or two control planes
The operational difference matters as much as the capability difference. RDS is a single vendor experience end to end: one console, one API surface, one billing relationship, one support organization. When something breaks at 3 a.m., there is no ambiguity about whom to call, and your existing AWS automation and monitoring practice covers the database the way it covers everything else.
Database@AWS is a partnership, and the seams show in operations. The infrastructure lives inside AWS and integrates with AWS networking and identity, but the database service is operated by Oracle through Oracle constructs, so your teams work across two control planes with two sets of concepts. Support is split as well: AWS supports the AWS side and Oracle supports the database layer, and the time to discover how that split behaves is before a production incident, not during one. Teams comfortable with a deliberate multicloud posture absorb this easily; teams that chose AWS partly to have one throat to choke should weigh it honestly. For the related pattern of connecting AWS applications to databases in OCI proper, see our article on the Oracle Interconnect for AWS, which trades some latency for a simpler footprint.
Licensing: the dimension that breaks naive comparisons
Licensing is where most spreadsheet comparisons of these two services quietly go wrong. On RDS, the License Included model bundles the Oracle license into the hourly instance rate, but only for certain editions; beyond that subset you bring your own licenses under Oracle's BYOL rules, which means your entitlement position, your support stream, and Oracle's cloud licensing policies all come along for the ride. On Database@AWS, the choice is between license included rates and BYOL, but expressed in Oracle's own constructs: licenses map to enabled cores on Exadata, options and packs have their own entitlements, and the analysis runs through Oracle's rules rather than a simplified cloud abstraction.
The practical consequence is that the licensing model can move the total cost of either platform by a large factor, and the right choice depends on entitlements you already own, support fees you already pay, and audit exposure you may not have measured. Comparing the two services on infrastructure rates alone produces conclusions that do not survive an Oracle audit or a renewal negotiation. This is exactly where independent licensing specialists earn their fee before a single workload moves.
Cost shape: granular hours versus a reserved floor
We deliberately avoid quoting prices, because rates change and negotiated deals vary. The shapes, however, are stable and they drive the decision more than the rates do.
RDS cost is granular and proportional. You pay for instance hours, storage, and backup, you can stop what you are not using, and a small database costs a small amount. There is no entry fee and no floor beyond the instances you run. For an estate of modest databases, this granularity is decisive.
Database@AWS cost starts with a reserved infrastructure floor. You commit to dedicated Exadata capacity, charged whether busy or idle, and usage based dials such as enabled cores and storage sit on top. The economics hinge on amortization: a heavyweight estate that consolidates dozens of serious databases spreads the floor thin and often wins per database, while a single mid sized database alone on reserved Exadata capacity is paying for an empty hotel. The billing construct also differs in kind: Database@AWS flows through the AWS Marketplace and draws down AWS spend commitments, which changes procurement conversations in ways we unpack in our article on Database@AWS pricing and the billing split. For when the heavyweight platform justifies itself financially, our piece on building the Database@ business case walks through the full model.
The comparison at a glance
Here is the structural comparison in one place. Treat the RDS column as a snapshot of a moving target and verify current support before deciding.
| Dimension | Amazon RDS for Oracle | Database@AWS |
|---|---|---|
| Platform | Single instance Oracle on AWS managed infrastructure | Oracle Exadata infrastructure inside AWS data centers |
| RAC | Not available | Fully supported |
| Performance character | General purpose instance and storage performance | Exadata engineered system features, smart storage offload, high throughput |
| Editions and options | Curated subset; verify current support | Full Oracle catalog, including Autonomous Database |
| Licensing models | License Included for certain editions, plus BYOL | License included or BYOL in Oracle constructs tied to enabled cores |
| Billing construct | Instance hours, granular and proportional | Reserved infrastructure floor plus usage, via AWS Marketplace |
| Support model | Single vendor, AWS end to end | Split: AWS for the AWS side, Oracle for the database layer |
| Fit | Small and mid sized commodity databases | Heavyweight, consolidated, RAC dependent, or Exadata class estates |
Migration gravity: where is the estate going?
One factor outweighs most feature debates and rarely appears in them: direction of travel. Where your Oracle estate is going matters more than where it is today. If the strategy is to shrink the Oracle footprint over the next few years, RDS is usually the right waystation; it keeps each database cheap and disposable while the estate winds down, and a reserved Exadata floor is exactly the wrong commitment to sign on the way out the door. If the strategy is to keep and modernize a serious Oracle core, the gravity runs the other way: consolidation onto an Exadata platform compounds in value as more workloads join. And if the genuine destination is Oracle's own cloud, the comparison widens beyond AWS; our Oracle Database on OCI page covers running the estate natively in OCI, often the strongest economics of all for Oracle centric estates.
The selection mistakes we see most
Before the framework, the failure patterns. Each one is expensive in its own way.
- Choosing Exadata for a database RDS would carry. A 500 GB departmental database does not need smart scan. It needs patching and backups, and it needs to be cheap.
- Forcing a RAC workload into RDS. Rearchitecting away from RAC is a real project with real risk; pretending the dependency does not exist is not a migration strategy.
- Comparing list prices without the licensing dimension. BYOL positions, support streams, and entitlement gaps move the totals more than the published rates do.
- Ignoring the support split. Two control planes and two support organizations are a manageable cost, but only if you priced them in before the first incident.
- Letting one workload decide the whole estate. One RAC dependent system does not mean everything belongs on Exadata, and one tiny database does not mean everything belongs on RDS.
A seven step decision framework, per workload
This is the sequence we run in a platform assessment, applied to each workload rather than to the estate as a block. We run it as a fixed fee engagement so the recommendation is not shaped by what we hope you buy afterwards.
- Catalog edition and option dependencies. List what each database actually uses, not what is installed. A single hard dependency on an option RDS does not offer ends the debate for that workload.
- Size the workload honestly. Measured CPU, memory, IOPS, and growth, not folklore. Most databases are smaller than their owners believe.
- Test whether RDS constraints bite. No RAC, restricted privileges, instance ceilings, Multi AZ instead of custom Data Guard. For most workloads none of these bite; for some, one is fatal.
- Model three year cost both ways. RDS instance hours versus the amortized share of an Exadata floor, with licensing in both columns. Use your negotiated rates, not list.
- Weigh operational tolerance for two control planes. If the team cannot staff and govern a split support model, that is a legitimate reason to pay a capability premium for simplicity.
- Consider estate consolidation pull. A workload that is marginal on its own may belong on Database@AWS if the heavyweight core is already there and the marginal cost of joining is low.
- Decide per workload and revisit annually. Feature lists, rates, and your estate all move. A placement that was right at signing can be wrong two renewals later.
Mixed estates are the normal outcome
Run that framework across a real estate and you almost never get a clean sweep. The common result is a split: the long tail of small commodity databases lands on RDS, where granular pricing and single vendor operations suit them, while the heavyweight core, the RAC dependent systems, and the consolidation candidates land on Database@AWS, where the reserved floor is amortized across enough serious work to justify itself. This is not indecision; it is the economically correct answer, and both vendors quietly expect it. The governance work is keeping the boundary honest, so databases do not drift onto the expensive platform out of convenience or get squeezed onto the cheap one out of budget pressure.
That ongoing discipline is where most teams want help after the initial placement. Our Managed Monthly clients get the placement boundary reviewed as part of the regular estate review, with 24/7/365 monitoring, and where we find idle enabled cores, oversized instances, or workloads on the wrong side of the line, our optimization engagement charges a fee only on verified savings. Across our OCI work that discipline has averaged a 40% reduction in spend, and the habits transfer directly to a mixed AWS estate.
Bringing it together
RDS for Oracle and Database@AWS are not competitors so much as answers to different questions. RDS answers how to run ordinary Oracle databases on AWS with minimum fuss and proportional cost. Database@AWS answers how to run an Exadata class Oracle estate without leaving AWS. Catalog your dependencies, size honestly, model the three year cost with licensing in the picture, and decide workload by workload. Most estates end up using both, and the teams that get the best result drew the boundary deliberately and revisit it every year.
Free white paper
Go deeper on this topic with The Exadata Cloud Decision Guide, Database Service vs Cloud@Customer vs Autonomous, and how to choose. An independent analyst style report with comparison tables and recommendations, free with a work email. Prefer a monthly summary instead? The OCI Brief delivers one practical OCI briefing a month.
Part of a series
This guide is part of Oracle Database on OCI — our complete pillar guide on the topic.
Moving Oracle workloads to OCI, or already running on OCI and not sure the architecture or the spend is right? Most teams bring in a specialist before they commit to a region, a shape, or a Universal Credits number. OCISpecialists.com plans the landing zone, runs the migration, and manages the estate after go live, on a fixed project fee, a managed monthly retainer, or a cost optimization fee paid only on verified savings.