Summary
Resolution
What is “Automatic Azure SQL database elastic pool management”?
Automatic Azure SQL database elastic pool management is a capability allowing you to decide if the Sage Provisioning Portal should manage Azure SQL elastic pools of your Azure subscription on your behalf.
How do I enable this option?
This can be enabled from within the subscription section of a partner account in the Sage Provisioning Portal as below.
TIP:You can also enable this option for a current subscription via the Adjustments option against the Subscription line.
How does this benefit me?
In short, the automatic Azure SQL database elastic pool management capability will help you lower costs.
The reason is Azure SQL database elastic pools become cost-effective only when the number of standalone databases reaches a certain threshold. This number is defined by a few factors, including the Sage product being deployed and the characteristics of standalone databases being used. When you reach that threshold, the Sage Provisioning Portal will automatically create an Azure SQL database elastic pool and move the standalone databases into the elastic pool.
Similarly, when the number of databases in the Azure SQL database elastic pool falls below that threshold, it is no longer cost-effective to keep the elastic pool. When this happens, the Sage Provisioning Portal can delete the Azure SQL database elastic pool returning the databases to standalone mode.
What if I have purchased Azure SQL elastic pool reserved instances?
If you have purchased reserved instances for a given Azure subscription, this means you have signed up to a minimum commitment for your Azure SQL elastic pool. Deleting an elastic pool will not remove your agreement with Microsoft for the consumption you signed up to.
As a result, we strongly recommend that you do not authorize the Sage Provisioning Portal to delete elastic pools. Reason is you will end up paying for the elastic pool commitment and the standalone databases.
You can find this setting in the Sage Provisioning Portal Azure Subscription set up or edit under the “Adjustments” section. By default, the Sage Provisioning Portal will not delete elastic pools.
What is the appropriate threshold?
The threshold depends on the pricing you obtain from your Microsoft CSP. Generally, it will be between 4-6. This means that, once 4 to 6 databases exist in standalone mode, it will be more cost-efficient to create an elastic pool and place the databases inside the elastic pool. In this way you pay for a pool of resources that can be shared by these databases.
How do I calculate the threshold?
NOTE: The below is provided as an example, if you have specific questions around the cost, please contact your Cloud Service Provider or Microsoft directly.
1) You must identify how much an Azure SQL elastic pool and a standalone database cost you.
2) Divide cost of the Azure SQL elastic pool by the cost of the standalone databases.
3) Round up the number.
For example, if an elastic pool costs you $432 and a standalone database $73. Then 432 divided by 73 = 5.9. This means that as of the 6th database it will be more cost-efficient to have an elastic pool.
How do I identify the cost of the databases?
To identify an Azure SQL elastic pool cost:
1) Visit the Microsoft’s official Azure calculator in your preferred language.
2) Sign-into your Microsoft Azure account.
3) On the main search bar, type “Azure SQL Database” and select the Azure SQL Database option.
4) Scroll down to the newly created “Azure SQL Database” section. Note that if you have previously used the calculator, you may already find other “Azure SQL Database” sections in this page. Make use you use the newly created section with the default settings.
5) Expand the “Azure SQL Database” section (if not already expanded).
6) Enter the values highlighted in red images below. Make sure you use your own Azure region.
7) If you have purchased elastic pool reserved instances you should use the appropriate “Savings options”.
8) Leave all other fields with their default settings.
9) Your total is shown on the top right of the calculator section. See green box above as an example.
To identify a standalone database cost:
1) Visit the Microsoft’s official Azure calculator in your preferred language.
2) Sign-into your Microsoft Azure account.
3) On the main search bar, type “Azure SQL Database” and select the Azure SQL Database option.
4) Scroll down to the newly created “Azure SQL Database” section. Note that if you have previously used the calculator, you may already find other “Azure SQL Database” sections in this page. Make use you use the newly created section with the default settings.
5) Expand the “Azure SQL Database” section (if not already expanded).
6) Enter the values highlighted in red images below. Make sure you use your own Azure region.
7) Leave all other fields with their default settings.
8) Your total is shown on the top right of the calculator section. See green box above as an example.
When will this elastic pool creation/deletion occur?
The processes to create/delete the elastic pools runs overnight. This ensures users working in the applications using the databases are not impacted.
What if I wish to manage the Azure SQL database elastic pools myself?
The choice is yours. You can select or deselect this Sage Provisioning Portal capability when adding an Azure subscription to SPP or when editing the Azure subscription.
What happens to my current subscription(s) once this capability is rolled out?
All existing subscriptions created prior to this functionality being available have this option deselected by default. This means that if you have previously removed an existing elastic pool, the Sage Provisioning Portal will not create one even if it cost-effective to have an elastic pool. The Sage Provisioning Portal will also not create future elastic pools even if it cost-effective to do so.
What happens if I create databases directly in the Azure Portal?
Only the Azure SQL databases created in the same SQL Server as the one created by the Sage Provisioning Portal will be in scope for this logic.
What happens if I have add-ons/customizations using databases?
Creating and deleting elastic pools have no impact on the workings of applications that use the databases. The elastic pools are simply containers of resources to be shared by the databases.
What happens if I don’t want a particular customer to be moved into an elastic pool?
If you want to keep a customer database out of the Azure SQL Elastic Pool, and the associated customer database(s) was/ were created by the Sage Product, then it is possible to do so by contacting Sage. We can internally mark this database to be treated as such.
Alternatively, you can visit the Azure portal yourself and add the following tag to the database(s) using the Azure portal.
SPPEPManagement.Standalone: true
If the database was not created by the Sage product, then you must add the above tag to the database yourself.
What type of Standalone Azure SQL Database does the Sage Provisioning Portal create before creating the elastic pool?
All standalone Azure SQL Databases are created with the following characteristics:
- Type: Single Database
- Purchase Model: DTU
- Service Tier: Standard
- Performance Level: S2
What is an Azure SQL database elastic pool and how is it different to an Azure SQL Database?
In short, an Azure SQL database elastic pool is a database container with a pre-defined set of resources that can be shared among the databases within the Elastic Pool. This means that unused resources, such as computing, can be used by other databases in the same pool.
Standalone databases, on the other hand, have dedicated resources that cannot be used by other databases even if the resources that you are paying for are not being consumed.
For further information please visit the follow Microsoft pages: