Increasing memory of Azure SQL Database in elastic pool

salilsingh-9961 351 Reputation points
2023-06-20T06:46:04.4+00:00

Hi Team,

I have an Azure SQL Database which is DTU based. This database is in an elastic pool which is also DTU based. Requesting to please provide solution for below queries -

  1. I need to increase the memory used in processing database requests, shall I need to increase the DTU of Database or Elastic pool?
  2. Inside an elastic pool, what role does DTU of database plays in deciding the memory that the database could use?

Please let me know if above questions are not clear and need to be explained more. A link explaining the solution would be of great help.

Thanks,

Salil

Azure SQL Database
{count} votes

2 answers

Sort by: Most helpful
  1. SSingh-MSFT 16,371 Reputation points Moderator
    2023-06-20T07:59:18.02+00:00

    Hi
    salilsingh-9961
    ,

    Welcome to Microsoft Q&A forum and thanks for using Azure Services.

    As I understand, you want to Increase memory of Azure SQL Database in elastic pool.

    For each elastic pool, you can optionally specify per database minimum and maximum DTUs to modify resource consumption patterns within the pool. Specified min and max values apply to all databases in the pool. Customizing min and max DTUs for individual databases in the pool is not supported.

    You can also set maximum storage per database, for example to prevent a database from consuming all pool storage. This setting can be configured independently for each database.

    While the per database properties are expressed in DTUs, they also govern consumption of other resource types, such as data IO, log IO, buffer pool memory, and worker threads. As you adjust min and max per database DTUs values, reservations and limits for all resource types are adjusted proportionally.

    Min and max per database DTU values apply to resource consumption by user workloads, but not to resource consumption by internal processes. For example, for a database with a per database max DTU set to half of the pool eDTU, user workload cannot consume more than one half of the buffer pool memory. However, this database can still take advantage of pages in the buffer pool that were loaded by internal processes. For more information, see Resource consumption by user workloads and internal processes.

    Reference Links:

    https://learn.microsoft.com/en-us/azure/azure-sql/database/resource-limits-dtu-elastic-pools?view=azuresql

    https://learn.microsoft.com/en-us/azure/azure-sql/database/elastic-pool-scale?view=azuresql

    https://learn.microsoft.com/en-us/azure/azure-sql/database/elastic-pool-resource-management?view=azuresql

    Please let us know if above information helps in your case. If not, we would continue to understand more and help.

    Thanks

    0 comments No comments

  2. Alberto Morillo 34,671 Reputation points MVP Volunteer Moderator
    2023-06-21T13:35:36.0833333+00:00

    Please note the eDTUs govern consumption of resources such as data IO, log IO, buffer pool memory, and worker threads. As you adjust min and max per database DTUs values, reservations and limits for all resource are adjusted proportionally. So increase the per database eDTUs to increase memory.

    For example, for a database with a per database max DTU set to half of the pool eDTU, user workload cannot consume more than one half of the buffer pool memory.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.