Smaller X1e instances for SAP HANA non-production workloads

Wilson Karunakar Puvvula is an SAP Solutions Architect at Amazon Web Services.

A lot of customers running SAP HANA on Amazon Web Services (AWS) choose to run their development and QA/test workloads on smaller instances from the R4 family while they run their production on X1/X1e instances. In this blog we will discuss using smaller X1e instances for your development and QA/test environments. This will particularly help customers who are implementing SAP as a greenfield solution and those who have a smaller data footprint on HANA.

At AWS, we are always making an effort to help customers architect their solutions with leaner total cost of ownership (TCO), and AWS offers many instance types that support HANA workloads. Although R4 instances provide a better vCPU-to-memory ratio, some of the non-production workloads might not need such high CPU or I/O. For example, r4.8xlarge provides similar in-memory capabilities as x1e.2xlarge, but it has four times as much vCPU capacity, which often goes underutilized.

The cost of non-production SAP systems can be a significant part of the overall TCO, because every SAP production system has a number of additional non-production systems. Therefore, to lower your TCO you could run your non-production environments on one of the smaller instances from the X1e family. This also aligns with the approach documented in SAP note 2271345 – Cost-Optimized SAP HANA Hardware for Non-Production Usage (SAP logon required).

Comparing X1e and R4 instances

Because the smaller X1e instances have lower Amazon EBS throughput, they generally take additional time when writing the backups to Amazon EBS and loading tables into memory during database startup. In a non-production environment, however, this is an acceptable tradeoff for a majority of customers who want to keep their costs low.

Let’s take a look at some of the X1e and R4 instances that provide similar memory but a different vCPU configuration:

EC2 instance vCPU Memory (GB) SAPS* Amazon EBS throughput (MiB/s) Memory per vCPU
x1e.4xlarge 16 524 16,437 218.75 32.57 GB
x1e.2xlarge 8 262 8,219 125 32.57 GB
x1e.xlarge 4 131 4,109 62.5 32.57 GB
r4.16xlarge 64 524 76,400 1,750 7.5 GB
r4.8xlarge 32 262 38,200 875 7.5 GB
r4.4xlarge 16 131 19,100 437.5 7.5 GB

* SAP Application Performance Standard

We have tested these instances in both standard and distributed SAP installations, and have found the results reasonable. Our tests focused on write performance of HANA backups and data load times into memory. We used a 1 TB Amazon EBS Throughput Optimized HDD volume (st1) attached to the instance for the backups. The write performances were 3-6 GB/minute on smaller X1e instances versus 6-9 GB/minute on R4 instances. For data load into memory, we observed a data load speed of 3-4 GB/minute on smaller X1e instances versus 17-25 GB/minute on R4 instances. These tests were performed on all the instances listed in the table, and we recommend testing other SAP operational activities that you see fit for your business.

Instance resizing: More capacity only when you need it

At AWS we understand the need for customers to scale on demand, allowing you to transition to a larger instance—say scaling up from an x1e.2xlarge instance to an r4.8xlarge instance.

Instance resizing is particularly helpful during maintenance activities such as SAP application upgrades, where you need to match your QA/test environment with production compute. Using instance resizing, you can scale up your QA/test environment for the duration of the upgrade and scale down after the activity has finished. Also note that according to SAP note 2271345 – Cost-Optimized SAP HANA Hardware for Non-Production Usage (SAP logon required), performance-related support will be provided only on production-grade hardware. You can quickly switch to a production-certified instance by using the instance resize feature.

Take a look at the example timeline of an SAP upgrade event where an EC2 instance is scaled on-demand:

upgrade resource usage diagram

The example assumes that the customer is running QA/test workloads on a Reserved Instance of x1e.2xlarge. During the downtime phase of the upgrade, the x1e.2xlarge Reserved Instance is scaled up to an r4.8large On-Demand Instance for a duration of 8 hours. In this case, the customer pays for r4.8xlarge on demand for duration of downtime, i.e., 8 hours, and then scales down the QA/test workloads to x1e.2xlarge and reclaims the reserved capacity. Running an r4.8xlarge On-Demand Instance for a duration of 8 hours would cost $17 in the us-east-1 region.

Having this flexibility to scale enables you to optimize performance while lowering your costs. The smaller X1e instances are now available for deployment using the SAP HANA on AWS Quick Start.

For more information, see Changing the Instance Type in the Amazon EC2 documentation, and take a look at the list of instance types that are supported for SAP workloads and their Amazon EBS throughput limits.

Feel free to contact us with your questions or suggestions. Thank you!

— Wilson