Sql-server – Azure SQL Elastic Pools – When to Create a new one versus upping the eDTU

azureazure-sql-databasesql server

I've tried to Google looking for others with the same question for about an hour now and can't find anything close, so hoping someone here might be able to offer some insight!

I'm a many-hat admin with a small software company the provides SaaS service solutions to our clients, we use Azure SQL, with Elastic Pools to host around 100 individual customer databases currently that run quite happily on a Standard Tier 100 eDTU Elastic Pool. Utilisation through the day runs between 60-80% which for our application is quite a comfortable buffer in case one of the clients should go crazy with a report query or bulk data load.

We are about to bring another 100 or so clients currently hosted on legacy VMs running SQL classic over into Azure SQL as well.

My questions is: Do I place them in the current elastic pool and up the eDTU to 200, or do I create a new separate 100 eDTU elastic pool and place them there?

Database size and Min/Max DTU per database settings, and the marginal difference in costs aren't considerations. So given that all the relative resource limits effectively double between 100 and 200 eDTU (concurrent workers/connections/sessions etc), is it just a question of how they are logically grouped?

What considerations would go into this choice? Is there something I'm missing?

Best Answer

It seems that you are below the limits in both cases, so it seems pretty the same.

These are the limits:

enter image description here

As you can see, the only thing that really seems to matter in your case and that donsen't double when you switch from 100edtu to 200edtu, is the max concurrent sessions.

So, if you are far below this limit, I suggest you to choose basing on the easiest design. If you are reaching the session limit per pool, it's better to split it up in two 100 edtu pool.

Don't change winning team. :-)