Published on

February 16, 2020

Choosing the Right Azure DB Model and Tier for Your Workload

Microsoft Azure DB is a powerful SQL Server service that offers a cost-effective and efficient way to manage your databases in the cloud. However, selecting the appropriate model and tier for your workload can be challenging. In this article, we will explore the different models and tiers available in Azure DB and provide guidance on how to choose the right one for your specific needs.

Azure DB Models

Azure DB is currently offered in two models: the DTU-based model and the vCore-based model. The DTU model is based on the Database Transaction Unit, which is a combination of CPU, I/O, and memory capabilities. On the other hand, the vCore model allows you to scale the number of virtual CPU cores based on your workload.

The DTU model is suitable for workloads with pricing constraints or those that have a stable workload. It offers scalability by allowing you to upgrade the tier or grade of your Azure DB in the future. However, if you require more granular control over your CPU or storage requirements, the vCore model might be a better choice.

The vCore model is divided into the General Purpose and Business Critical tiers. It supports up to 80 vCores and offers features such as In-Memory OLTP support, replicas, and local SSD storage. The General Purpose tier provides 500 IOPS per vCore, while the Business Critical tier offers 5,000 IOPS per vCore.

Azure Service Tiers

When creating an Azure DB in the DTU model, you need to select a tier: Basic, Standard, or Premium. Each tier has different definitions of DTUs, which are pegged to a benchmark standard called ASDB. The choice of tier depends on factors such as backup retention, CPU requirements, I/O throughput, I/O latency, columnstore indexing, and in-memory OLTP.

To help you make the right decision, Microsoft provides guidance on choosing a service tier. They also offer a decision flowchart that consolidates the limits imposed by each service tier into a series of yes/no workflow questions. By following this flowchart, you can determine the appropriate tier for your workload.

Azure DB Service Performance Levels

Once you have determined the model and tier for your Azure DB, you need to choose a performance level. Microsoft provides comparative tables that allow you to select the appropriate level based on your desired CPU performance, memory expectation, IOPS, and available features.

DTU performance levels are named using a letter and a digit, where the letter represents the service tier and the digit represents the performance category. For example, S0 is the lowest-performing level in the Standard Tier, while P4 is a middle-performing level in the Premium tier.

For the vCore-based model, the naming convention includes the tier, CPU generation, and the number of vCores. For example, GP_Gen4_8 denotes a Generation-4 CPU in the General Purpose tier with 8 vCores.

The Anatomy of a DTU

DTUs are artificial measures that denote the load on an Azure DB service. They are constructed based on a benchmark standard and are a blend of CPU, memory, and I/O allocation. The exact algorithms used to construct DTU definitions are not publicly available, but Microsoft provides information on the benchmarking process.

The benchmark consists of 6 tables, with 2 fixed-size tables and 3 tables sized proportionately to the number of users and database size. The workload is a mix of reads and writes distributed over different categories. The definition of a DTU depends on the number of users and database size, which are determined by the service tier and performance level.

Conclusion

Choosing the right model and tier for your Azure DB workload is crucial for achieving optimal performance and cost-efficiency. By understanding the differences between the DTU-based and vCore-based models, considering the service tiers and performance levels, and evaluating your specific workload requirements, you can make an informed decision.

Microsoft provides tools such as the DTU calculator and Query Performance Insight to assist in the decision-making process. However, it is important to gather information from multiple sources and cross-reference the data to ensure accurate analysis.

With the right model and tier in place, you can leverage the power of Azure DB to efficiently manage your databases in the cloud.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.