In this article, I will describe my findings related to one of the most common questions: licensing. I have applied our standard rules for optimization over the entire estate, capturing the resulting AWS shapes/storage and the basic target licensing metric: count of vCPU.
For the sake of simplicity, I will not dig into specific Oracle options and packs, although we do in each specific customer assessment, often finding optimization opportunities.
First Level of Optimization: 131.37% of Licenses Required
The assessment dataset aggregates up to 15,629 physical CPU cores on-premises, with the initial right-sizing of databases to AWS RDS requiring 10,266 CPU cores. This represents almost a 35% reduction right out of the gate. There are two key factors enabling this initial reduction:
CPU models and ages span from 2007 to 2021; the average CPU age across the dataset is six years. AWS runs on the latest hardware. Therefore for customers running on aging hardware, we typically realize an immediate reduction of the number of cores required to run the same workloads in AWS. We call this CPU Power right-sizing, which is the most basic of our optimization techniques. Reduction in cores translates directly into savings in most cases where Oracle is licensed on a per-core basis.
Rapid Discovery also gathers detailed information on the server sizing and the actual utilization data (average, p90, p95, and max). This allows us to right-size the architecture correctly to the cloud while ensuring it meets or exceeds performance. The flexibility of the cloud allows us to scale up and back down as needed.
(as a side note, we do the same right-sizing at the storage layer based on precise I/O workload measurements. This is as critical as CPU, especially when migrating from systems such as Exadata. We will dig deeper into the topic in the next part of the series)
Now, there will always be some outlier technical challenges. For example, modern IBM Power CPUs have high-clockspeeds, so right-sizing can be less effective. However, the biggest challenge is always the Oracle licensing policy.
When licensing Oracle on AWS and Azure, you must be aware of the Oracle Cloud Policy, a publicly facing non-contractual guide for licensing Oracle on virtual cloud infrastructures. This policy provides customers with guidance on how to count licenses in the clouds such as in Amazon EC2 or RDS. The short version is that when Oracle is deployed on virtual CPUs (vCPUs), you must count two vCPUs (one core) as one license. It is important to note that when deploying Oracle on 1/ EC2 Dedicated Hosts, 2/ Amazon EC2 Bare Metal, or 3/ VMWare Cloud on AWS, you count a core as a core, so no 2:1 penalty is applied.
Such deployments have strong use cases. However, they are not efficient for most of the workloads we analyze. So, for this analysis, we’ll follow the general customer desire to move to AWS virtualized EC2 infrastructure or managed RDS database services. So, the Oracle Cloud Policy generally doubles the needed license, right? Well, not quite. It converts our physical core count of 10,266 cores into 20,532 vCPUs, translating to 131% of the on-premises license needs. The results may vary across different organizations, and business cases – e.g., migrations out of SPARC are very challenging; densely consolidated solutions are also problematic. But this is just the journey’s beginning, so let’s dig deeper.
The Second Level of Optimization: 80.27% of Licenses Required
The following Oracle optimization is to convert Enterprise Edition (EE) to Standard Edition (SE) where possible. Many customers assume they need to run Enterprise Edition to meet availability requirements. However, with AWS features like CloudWatch for monitoring, Multi-AZ for availability, and cross-region backup replication for DR, SE can be run in place of EE for many real-world production workloads. This can free up costly EE licensing for other uses, such as migration swing capacity, making up for the license gap, putting it back on the shelf, or retiring them altogether. Most importantly – you can use Oracle SE as a License Included (and not BYOL) option in AWS. You can scale your SE instances up and down and even stop them when unused, so you only pay for what you need. This brings cloud elasticity benefits to the rigid world of Oracle licensing.
While Oracle Standard Edition may not fit some critical databases well, our analysis determined that 47% (2,711 databases) were good candidates to move to Standard Edition licensing. Our assessment process automatically detects the database workload and usage (Oracle options/packs/features, relevant workload parameters, etc.) and identifies EE to SE conversion candidates across large database estates. Using those rules (born out of real-world experience), we end up with 12,546 EE cores or 80.27% of the on-prem license.