For more than twenty-five years, NetApp has been tackling the needs of businesses of every size by providing cutting-edge, high-performance storage solutions and services with loads of baked-in data management capabilities. In today’s evolving IT landscape, this technology provides the agility and mobility that organizations require in their quest for digital transformation and cloud adoption. Optimizing storage performance is a crucial part of that mission.
To highlight the benefits of high performance storage, this blog post will present the results of a recent performance benchmark of a key member of the NetApp Cloud Volumes family: Cloud Volumes ONTAP for AWS.
In a nutshell, Cloud Volumes ONTAP is a cloud version of the well-known ONTAP data management software that harnesses storage and compute resources in the public cloud to act as a software-defined storage solution. It optimizes the usage of native cloud compute and storage services, such as Amazon EC2 instances and Amazon EBS volumes on AWS, and helps address many of the requirements to cloud deployment, from data protection and cloud data storage costs to DevOps agility and hybrid multicloud deployment.
When it comes to the most business-critical AWS workloads, storage performance is highly important. What does it take to push the envelope and define a set of completely new boundaries to cloud performance? At the NetApp Innovation Center in Tel Aviv, we decided to find out.
Over the past few months, a team led by product manager Ofir Dagan, and composed of QA manager Ishai Avramovich, QA engineer Oryan Rachum, and Cloud Solution Architects Michele Pardini, Aviv Degani, and Yuval Kalderon looked into this problem. The idea was to stress test Cloud Volumes ONTAP for AWS to see how well the system could perform across the board. The tests were performed with different instances and under various workloads, trying to identify its performance limits with the supported AWS services for compute (Amazon EC2) and storage (Amazon EBS), and the existing performance restrictions of those services.
The tests were designed to determine the best performance that can be achieved on Cloud Volumes ONTAP for AWS running Linux-based applications (8 RHEL 8.0 instances were utilized) and using the NFSv4 protocol.
The workloads were generated using the I/O workload generator fio, and consist of I/O mixtures and access patterns seen by widely deployed applications as well as 4K random reads workload, which is primarily used in benchmarking. This is described in the following table:
Params / Workload | Random Reads | OLTP | Analytics / Mixed | Sequential Reads | Sequential Writes |
Block Size | 4K | 8K | 16K | 64K | 64K |
Read Type | Random | Random | Random | Sequential | - |
Read % | 100% | 80% | 50% | 100% | - |
Write type | - | Random | Random | - | Sequential |
Write % | - | 20% | 50% | - | 100% |
The ultimate goal of this Cloud Volumes ONTAP for AWS testing was to provide a metric for IT staff members and their application service providers to make informed decisions regarding cloud data storage. In the process of identifying those numbers, our team discovered something unexpected: AWS performance exploded to new heights.
A picture (10 in this case) is worth a thousand words. The following charts present the results achieved for each workload, all of which are fully documented in this technical report on the performance characteristics of Cloud Volumes ONTAP for AWS.
A random read is a disk access pattern whereby small (4K) blocks of data are read from random locations. The results of the random reads tests, used primarily within the context of benchmarking, show how effective Cloud Volumes ONTAP is at quickly retrieving small pieces of data from random locations. The c5d.18xlarge in both single node and HA configuration provided the best results ever seen with Cloud Volumes ONTAP at ~200K IOPS and ~540K IOPS respectively at sub-millisecond response time.
Transactional workloads typically seen with databases that receive large amounts of requests resulting in multiple changes being made to the data from multiple users over time. These modifications are called transactions. The transactions are small and random in nature with high concurrency. This type of workload is generated by transactional database applications such as SAP, Oracle, and MySQL databases.
For AWS OLTP workloads, Cloud Volumes ONTAP in a single node produced better results—more IOPS per node and 2.5ms latency on some instances—than the high availability configuration, which provides ~80% more IOPS at around ~5ms latency. This difference is due to the synchronous data replication maintained between both nodes for business continuity purposes.
Despite these differences, use of high availability configuration is still highly recommended by NetApp. When it comes to ensuring the uptime of mission-critical applications, including databases, that slight tradeoff in performance is acceptable.
Many applications generate a mix of read/write operations that differ in the reads versus writes percentage, block size, and random versus sequential percentage and that typically require high throughput and low latency. A 50% reads and 50% writes mix is a common starting point for measuring. That kind of workload can be found, for example, in VDI, file services, and analytics.
When it comes to mixed reads/writes, the numbers for each of the two types of Cloud Volumes ONTAP configurations show that the throughput ranges between ~380MBps to ~600MBps with latency around 15ms on single node while on HA throughput ranges between ~660MBps to ~870MBps with an averaged ~17ms latency. Both highly desirable results.
In a streaming reads workload, only sequential read operations are performed, which are concurrent, large, contiguous requests. This workload is typically generated by applications such as media servers (for example, video on demand) and virtual tape libraries.
The results for how Cloud Volumes ONTAP performs for sequential reads shows that it can provide up to ~4150MBps in a single node configuration and about double the amount in HA (~9000MBps). The great difference between the instances is related to the amount vCPUs used, the amount of memory, and network bandwidth as well, in general the more you have the better the read performance is.
In sequential workload, only write operations, which are concurrent, large, and contiguous requests, are performed. This workload is typically generated by applications such as media capture, virtual tape libraries, medical imaging, backup and archiving, and video surveillance.
As the graphs show, write throughput tops at ~1000MBps in single node configuration and ~900MBps in HA. This is due to the synchronous data replication happening in HA to maintain business continuity.
In any of the workloads presented involving writes, including this one, write performance can be significantly improved for single-node configuration by using Cloud Volumes ONTAP’s fast write mode option. High write speed should be used if fast write performance is required for your workload and you can withstand the risk of data loss in the event of an unplanned system outage. See the planning your configuration page for more information.
Cloud Volumes ONTAP performance varies greatly depending mainly on the underlying compute instance and cloud storage configuration used, as well as the deployment type (single node or HA) and write speed configuration (more information on the write speed effect in this technical report on the performance characteristics of Cloud Volumes ONTAP for AWS.)
When designing a cloud architecture and planning the required resources, it is important to know what your performance requirements are (IOPS, throughput, and latency) for the different workloads you use and the business requirements at your organization, so you can choose the right solution.
With the information found in this benchmark test in hand, users of Cloud Volumes ONTAP for AWS can now pick the most suitable instance and deployment type to address their business and performance needs. If and when performance requirements change, the results give users a reference for adjusting compute and storage, which can instantly be changed through NetApp Cloud Manager, the single pane management console that controls your entire storage infrastructure no matter where it resides.
As shown in the AWS performance insights we can see in the graphs above, Cloud Volumes ONTAP for AWS can address the performance requirements for many types of workloads including OLTP, mixed reads/writes, streaming and more.
But while Cloud Volumes ONTAP can optimize the performance of Amazon EBS storage volumes, it will yield different results based on the workload and instance type in use. Luckily, with just a click of a button on NetApp Cloud Manager, the underlying EC2 instance can be swapped to accommodate any changes in performance demands.
Beyond AWS performance, Cloud Volumes ONTAP also offers an entire suite of enhanced data management capabilities, including multiprotocol support for both NAS and SAN, data protection with zero-penalty snapshots for improved application resilience, SnapMirror® data replication for disaster recovery and Cloud Backup Service for zero-effort backup and restore, zero-penalty clones for accelerated application development with FlexClone®, as well as always-on AI-driven data mapping and privacy controls by Cloud Data Sense, and storage efficiency features that help reduce your spend on cloud storage.
Are you ready to jump into the cloud with AWS? With NetApp’s extensive history of storage management solutions on your side, you can make that leap to the cloud. We’ve got your back(end).