Getting Started with Decision Support Workloads in the Cloud
In this article
This article was provided and written by Intel.
Decision support system (DSS) workloads are increasingly popular tools that organizations rely on to make data-driven decisions. DSS workloads collect and analyze raw information and turn it into insights upon which decision-makers can act. If your business runs these workloads in the cloud, or if you're considering doing so, many options are available to you. The number of choices could be overwhelming, and you might wonder how much they differ and how much it really matters which you choose. In fact, selecting cloud virtual machines (VMs) or instances that deliver high performance on DSS workloads can help your business two ways. The first way is by getting actionable insights into the hands of decision-makers earlier. In our fast-paced world, timing is everything, and fresher data leads to better-informed decisions. The second way that strong VM or instance performance helps your business is financially. Cloud service providers (CSPs) generally charge for the amount of compute time you use. If one VM can complete a given amount of work in less time, that translates to compute cost savings. In this blog, I'll provide some guidance around what to consider when choosing VMs for your DSS workloads and some of the performance gains third-party testing saw in their DSS testing on both AWS and Azure public clouds.
Factors to consider when selecting cloud instances for your DSS workloads
One way to achieve strong database performance is by choosing VMs that are correctly sized and configured for the job. Memory, compute, and storage requirements are all important to keep in mind. Optimizing performance requires balancing CPU, storage, and memory to avoid bottlenecks. Both Azure and AWS offer several categories of VMs, each targeting different roles. So, the first step is to determine the right VM category for your DSS workload. The most common categories include general-purpose, compute-optimized, and memory-optimized. The CSP provides some basic guidance about the workloads for which each category is most appropriate. For example, AWS lists web servers and code repositories as examples for their general-purpose instances. Azure lists relational database servers, medium to large caches, and in-memory analytics workloads for their memory-optimized VMs. If you're not sure which family is right for your needs, a good starting point for guidance is the CSPs themselves. For the testing we highlight in this blog, the test lab determined that memory is vital for performance and chose memory-optimized VMs from both CSPs for the DSS tests. Once you've chosen your instance, the next decision you face is storage.
Cloud storage considerations
Since DSS workloads rely on databases, they stress both memory and storage to push performance. Public cloud hosting offers a lot of flexibility around storage compared to being locked into a specific hardware stack on-prem, and the choices can be a little overwhelming. Especially when you have to keep performance caps on both the VMs and the disks themselves in mind. While both AWS and Azure offer several different types of storage – object, file, block, and more – for this workload, we'll focus on block storage. As with the VM family types, the CSPs categorize their storage by expected performance. Let's take a quick look at each CSP and the storage they offer.
AWS
Amazon Elastic Block Store (EBS) is the main block storage offering on AWS. EBS volumes come in General Purpose SSDs, Provisioned IOPS SSDs, and low-performance HDD options. AWS recommends the General Purpose SSDs for most workloads, and it's what the third-party lab used when testing on AWS.With gp2 volumes, IOPS scales with the drive capacity, so you may end up with more capacity than you need to reach the performance your workload requires. Newer gp3 volumes have a higher IOPS baseline than gp2 volumes, with the option to pay for more IOPS regardless of drive capacity We recommend the gp3 volumes for the best control over capacity and performance needs for your specific workload.
Azure
On Azure, you have to look at the managed disks offerings, which come in several performance tiers from HDDs to Ultra disk SSDs. Standard SSDs are best for low-performance workloads, while Premium SSDs cover most standard workloads. Ultra disk SSDs, which offer the highest maximum IOPS, are for workloads with very high performance needs. In the testing we cite, Premium SSDs, with lower maximum IOPS, were enough to cover the needs of the DSS workload. Note that at the time of this writing, Azure Premium SSDs v2 disks are available in a limited preview. With the new v2 disks, customers can adjust IOPS independently from disk capacity while the current Premium SSDs must increase capacity to increase performance.
For both CSPs, it's vital to pay attention to details when determining instance size and disk details. While the disk you choose may be capable of pushing 40,000 IOPS or 1,200MB of throughput, your instance may be capped at smaller IOPS or throughput values. This is especially true of smaller VMs where caps may be lower than those of the same VM with more vCPUs. For example, in our Azure DSS testing, we tested on 8, 16, and 64 vCPU sizes in the Eds memory-optimized VM series. The maximum uncached storage bandwidth on the E8ds_v5 VM was 500 MBps, while the E64ds_v5 VM was capped at 1,735 MBpsNoting these caps and working within them can help give your DSS workloads the performance they need and let you avoid paying for more disk performance than your VMs can handle.
How the processor behind the cloud product you choose can affect DSS performance and your bottom line
If you're running a DSS workload, you already understand the value of making decisions based on information. In this section, I'd like to show you some data that can help you make a good choice when it comes to selecting a cloud product to support your DSS workloads. Independent testing ran a decision support workload on Microsoft Azure VMs and AWS instances. The results revealed that cloud products featuring 3rd Gen Intel Xeon Platinum Scalable processors consistently outperformed those using previous-generation processors.
Let's look at Azure first. Testing compared a 10-node cluster of Azure Edsv5-series VMs featuring 3rd Generation Intel Xeon Platinum 8370C processors and a 10-node cluster of Azure Edsv4-series VMs featuring 2nd Generation Intel Xeon Platinum 8272CL processors.
As Figure 1 shows, at three different sizes, the newer VM clusters completed a set of queries faster than older ones. The small VM clusters with 3rd Gen Intel Xeon Platinum Scalable processors were 22% speedier than their previous-generation counterparts, the medium-sized VM clusters were 20% speedier, and the largest VM clusters had the greatest speed advantage: 24%
AWS testing compared a 10-node cluster of R6i-series instances featuring 3rd Generation Intel Xeon Platinum 8375c processors and a 10-node cluster of R5n-series instances featuring 2nd Generation Intel Xeon Platinum 8259CL processors. When we look at the results, we see a picture that is similar to what we saw with Azure. As Figure 2 shows, at all three sizes, the clusters of newer instances with 3rd Gen Intel Xeon Platinum Scalable processors outperformed the older ones. The newer small instance clusters processors were 27% faster than the older instance clusters, the medium-sized instance clusters were 28% faster, and the largest instance clusters again had the greatest speed advantage: 36%.
The speedier cloud instances could provide decision-makers with vital data sooner, thus improving the quality of their business decisions. A faster decision processing duration could also decrease cloud spending because your VM or instance be active for less time.
Additional tips and tricks
One final thing I'd like to do is provide a few tips and tricks that may help you in your journey into the cloud with DSS workloads. When choosing an Azure VM, be sure that it can support the level of storage that your workload needs. While nearly every family of VMs offers a VM type that supports the top tier of storage, not all of them do, so read carefully to ensure that your VM supports Premium SSDs and Ultra Disks. Additionally, if you want to use Ultra disks, be sure to enable that support when you first create your VMs. If you don't set the availability zones and other considerations with Ultra Disks in mind in the beginning, adding this functionality later could require you destroy and recreate the VM entirely.
With both CSPs, make note of CPU family and versioning on the various instance types. the latest instances likely come with only the latest processor version; for example, Azure V5 instances come with 3rd Generation Intel Xeon Scalable processors. However, some previous-generation VMs come with one of a variety of processor versions. To ensure a consistent experience on these VMs, CSPs often throttle the higher-end processors and sometimes even disable certain features on these processors. If you think your workload would benefit from a specific processor, pay attention to details about features you need and what processors are available on the instance.
Conclusion
Running your decision support workloads in the cloud offers many advantages—from saving time and money on hardware upkeep and upgrades, to being able to scale your workloads, to being able to pay for only the resources that you actually use. However, paying for the resources you use makes it especially important to choose efficient cloud products that minimize the amount of compute time necessary to execute your work.
By using the results of independent performance testing on decision support workloads, you can base your purchasing decision on facts. Whether you prefer to work with Azure or AWS, you can maximize your cloud investment by selecting VMs or instances featuring 3rd Generation Intel Xeon Scalable processors. This choice will also improve the quality of your decisions by helping you arrive at actionable business insights earlier.