Microsoft Azure provides the following purchasing models for Azure SQL databases:
- vCore-based purchasing model that enables you to choose the exact amount of storage capacity and compute as necessary.
- DTU-based purchasing model where you can choose bundled compute&storage packages balanced for common workloads.
Each model is further divided into tiers and performance levels, see the corresponding Microsoft documentation for details.
The following table provides our recommendations for running Kentico databases in Azure SQL.
|Project demands||DTU-based tier||vCore-based tier||Notes|
|Projects in development||Standard||General purpose|
The lowest Standard level is suitable only for projects that are not in production and have only small performance demands.
Even though Kentico will run in the DTU-based Basic tier, we do not recommend using this tier as it severely restricts database performance.
|Read-only projects||Standard||General purpose||For small Kentico projects only.|
|Larger read/write intensive projects||Premium||Business critical||Websites expecting large amounts of visitors and database requests.|
We also recommend that you perform a load test when switching to a new Azure SQL tier to make sure the database provides satisfactory performance. Choosing performance levels that do not cover your project demands can cause slow database response times and generally low performance.
You can switch between deployment models and adjust their configuration on the Azure Management Portal -> Select your database -> Configure tab.
Azure SQL database elastic pools
In environments where multiple independent projects each use a single database, you can store individual databases in an elastic pool. The databases in an elastic pool are on a single Azure SQL Database server and share a set number of dynamically allocated resources (DTUs or vCores), which helps minimize overall expenses. See the Elastic pools Microsoft documentation for more information.