Tuesday, November 26, 2019

Data Platform Tips 10 - What are Elastic Pools and when you need one?

Elastic Pools on Azure are simple and cost effective way to manage and scale multiple databases of varying usage demands with a predictable cost. Multiple databases in an elastic pool are on a single Azure SQL Database server share a defined set of resources for a set price.

Elastic Pools are really handy for SaaS developers where by they have to provision separate database for each of their clients who may have varying demands. Elastic Pools will manage the resources based on the demand across the different databases within the pool.

If any additional resources are required they can be added to the pool without any downtime except when databases needs to be moved in and out of the pool there will be a minimum downtime at the end of the operation where connections will be dropped.

There is no per-database charge for elastic pools. You are billed for each hour a pool exists at the highest eDTU or vCores, regardless of usage or whether the pool was active for less than an hour.

When do you really need an Elastic Pool?

If you have multiple databases but really don't know the demands of the databases then it is better to assign them in an Elastic Pool with known set of resources and predictable cost. The Elastic Pool will take care of allocating required resources to the databases during demands.

Creating an Elastic Pool on Azure

a) Log on to the Azure Portal

b) Search for Elastic Pools on the Marketplace.

c) Provision an Elastic Pool and SQL Server on Azure.

d) Create 2 databases inside the SQL Server and assign the Elastic Pool as part of it. Now the resources will be shared within the 2 databases as part of the Elastic Pool meeting their demands efficiently for a known cost.

More information on Elastic Pools

Elastic Pools and Elastic Jobs (Video)

No comments:

Post a Comment