Evaluate the scalability of the possible database offering

  1. Home
  2. Evaluate the scalability of the possible database offering

Go back to DP-300 Tutorials

In this we will learn about scalability of Azure database offering. However, Azure SQL Database is a flexible Platform as a service database that can be easily scaled to fit your needs. Here, you can add more compute or storage to satisfy your performance requirements without waiting for new hardware or migrating data to more powerful machines. Azure enables you to change performance characteristics of your database on the fly and assign more resources when needed or release the resources when they are not needed in order to decrease the cost.

Azure SQL Database supports two types of scaling:

  • Firstly, Vertical scaling where you can scale up or down the database by adding more compute power.
  • Secondly, Horizontal scaling where you can add more databases and to shard your data into multiple database nodes.

Scaling up/down

Scaling up refers to a process of adding more resources to the database in order to achieve better performance. Moreover, you can scale-up your database if you see that your workload is hitting some performance limit (e.g. CPU or IO).

Secondly, Azure SQL Database enables you to choose how many CPU you want to use, how much storage you need. And also to dynamically change these parameters any time . Then you can simply add more CPU power or storage if the current resources cannot handle your workload.

Dp-300 practice tests

Read scale-out

If your workload is hitting the limit of available resources, and you cannot scale-up database to fix the issues, another option would be to redirect part of your workload to another database node. Databases in the Premium ( DTU-based model ) or in the Business Critical ( vCore-based model ) have several replicas to support the high-availability. Further, the main benefits of Read Scale-Out are:

  • Firstly, primary database node will not spend resources on the read-only/analytic queries because they are not sent to the primary node anymore.
  • Secondly, you can use resources on secondary nodes to handle heavy reports and analytical queries.

Global Scale-out/Sharding

Sharding is approach where you split your data into multiple database nodes. Using this way you can scale-out your data into several database shards . However, every database shard is an independent database where you can add or remove resources as needed. There is also a Elastic Database split-merge tool that enables you to move data between shards and reorganize your data distribution. Further, sharding might be useful architecture choice if you have geo-distributed application where every application should access part of data in the region.

Azure SQL Database enables you to create, manage, and use sharded data using the following libraries:

  • Firstly, Elastic Database client library
  • Secondly, Elastic Database split-merge tool that moves data between sharded databases.
  • Thirdly, Elastic Database query
  • Next, Elastic Database jobs
scalability of the possible database offering DP-300 online course

Reference: Microsoft Documentation

Go back to DP-300 Tutorials

Menu