Resource limits for elastic pools using the vCore purchasing model

APPLIES TO: Azure SQL Database

This article provides the detailed resource limits for Azure SQL Database elastic pools and pooled databases using the vCore purchasing model.

For DTU purchasing model limits, see SQL Database DTU resource limits - elastic pools.

Important

Under some circumstances, you may need to shrink a database to reclaim unused space. For more information, see Manage file space in Azure SQL Database.

You can set the service tier, compute size (service objective), and storage amount using the Azure portal, PowerShell, the Azure CLI, or the REST API.

Important

For scaling guidance and considerations, see Scale an elastic pool.

General purpose - provisioned compute - Gen4

Important

New Gen4 databases are no longer supported in the Australia East or Brazil South regions.

General purpose service tier: Generation 4 compute platform (part 1)

Compute size (service objective) GP_Gen4_1 GP_Gen4_2 GP_Gen4_3 GP_Gen4_4 GP_Gen4_5 GP_Gen4_6
Compute generation Gen4 Gen4 Gen4 Gen4 Gen4 Gen4
vCores 1 2 3 4 5 6
Memory (GB) 7 14 21 28 35 42
Max number DBs per pool 1 100 200 500 500 500 500
Columnstore support Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) N/A N/A N/A N/A N/A N/A
Max data size (GB) 512 756 1536 1536 1536 2048
Max log size 154 227 461 461 461 614
TempDB max data size (GB) 32 64 96 128 160 192
Storage type Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage
IO latency (approximate) 5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
Max data IOPS per pool 2 400 800 1200 1600 2000 2400
Max log rate per pool (MBps) 6 12 18 24 30 36
Max concurrent workers per pool (requests) 3 210 420 630 840 1050 1260
Max concurrent logins per pool 3 210 420 630 840 1050 1260
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1 0, 0.25, 0.5, 1, 2 0, 0.25, 0.5, 1...3 0, 0.25, 0.5, 1...4 0, 0.25, 0.5, 1...5 0, 0.25, 0.5, 1...6
Number of replicas 1 1 1 1 1 1
Multi-AZ N/A N/A N/A N/A N/A N/A
Read Scale-out N/A N/A N/A N/A N/A N/A
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

General purpose service tier: Generation 4 compute platform (part 2)

Compute size (service objective) GP_Gen4_7 GP_Gen4_8 GP_Gen4_9 GP_Gen4_10 GP_Gen4_16 GP_Gen4_24
Compute generation Gen4 Gen4 Gen4 Gen4 Gen4 Gen4
vCores 7 8 9 10 16 24
Memory (GB) 49 56 63 70 112 159.5
Max number DBs per pool 1 500 500 500 500 500 500
Columnstore support Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) N/A N/A N/A N/A N/A N/A
Max data size (GB) 2048 2048 2048 2048 3584 4096
Max log size (GB) 614 614 614 614 1075 1229
TempDB max data size (GB) 224 256 288 320 512 768
Storage type Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage
IO latency (approximate) 5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
Max data IOPS per pool 2 2800 3200 3600 4000 6400 9600
Max log rate per pool (MBps) 42 48 48 48 48 48
Max concurrent workers per pool (requests) 3 1470 1680 1890 2100 3360 5040
Max concurrent logins pool (requests) 3 1470 1680 1890 2100 3360 5040
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1...7 0, 0.25, 0.5, 1...8 0, 0.25, 0.5, 1...9 0, 0.25, 0.5, 1...10 0, 0.25, 0.5, 1...10, 16 0, 0.25, 0.5, 1...10, 16, 24
Number of replicas 1 1 1 1 1 1
Multi-AZ N/A N/A N/A N/A N/A N/A
Read Scale-out N/A N/A N/A N/A N/A N/A
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

General purpose - provisioned compute - Gen5

General purpose service tier: Generation 5 compute platform (part 1)

Compute size (service objective) GP_Gen5_2 GP_Gen5_4 GP_Gen5_6 GP_Gen5_8 GP_Gen5_10 GP_Gen5_12 GP_Gen5_14
Compute generation Gen5 Gen5 Gen5 Gen5 Gen5 Gen5 Gen5
vCores 2 4 6 8 10 12 14
Memory (GB) 10.4 20.8 31.1 41.5 51.9 62.3 72.7
Max number DBs per pool 1 100 200 500 500 500 500 500
Columnstore support Yes Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) N/A N/A N/A N/A N/A N/A N/A
Max data size (GB) 512 756 1536 1536 1536 2048 2048
Max log size (GB) 154 227 461 461 461 614 614
TempDB max data size (GB) 64 128 192 256 320 384 448
Storage type Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage
IO latency (approximate) 5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
Max data IOPS per pool 2 800 1600 2400 3200 4000 4800 5600
Max log rate per pool (MBps) 12 24 36 48 48 48 48
Max concurrent workers per pool (requests) 3 210 420 630 840 1050 1260 1470
Max concurrent logins per pool (requests) 3 210 420 630 840 1050 1260 1470
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1, 2 0, 0.25, 0.5, 1...4 0, 0.25, 0.5, 1...6 0, 0.25, 0.5, 1...8 0, 0.25, 0.5, 1...10 0, 0.25, 0.5, 1...12 0, 0.25, 0.5, 1...14
Number of replicas 1 1 1 1 1 1 1
Multi-AZ N/A N/A N/A N/A N/A N/A N/A
Read Scale-out N/A N/A N/A N/A N/A N/A N/A
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

General purpose service tier: Generation 5 compute platform (part 2)

Compute size (service objective) GP_Gen5_16 GP_Gen5_18 GP_Gen5_20 GP_Gen5_24 GP_Gen5_32 GP_Gen5_40 GP_Gen5_80
Compute generation Gen5 Gen5 Gen5 Gen5 Gen5 Gen5 Gen5
vCores 16 18 20 24 32 40 80
Memory (GB) 83 93.4 103.8 124.6 166.1 207.6 415.2
Max number DBs per pool 1 500 500 500 500 500 500 500
Columnstore support Yes Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) N/A N/A N/A N/A N/A N/A N/A
Max data size (GB) 2048 3072 3072 3072 4096 4096 4096
Max log size (GB) 614 922 922 922 1229 1229 1229
TempDB max data size (GB) 512 576 640 768 1024 1280 2560
Storage type Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage Premium (Remote) Storage
IO latency (approximate) 5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
Max data IOPS per pool 2 6,400 7,200 8,000 9,600 12,800 16,000 16,000
Max log rate per pool (MBps) 48 48 48 48 48 48 48
Max concurrent workers per pool (requests) 3 1680 1890 2100 2520 3360 4200 8400
Max concurrent logins per pool (requests) 3 1680 1890 2100 2520 3360 4200 8400
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1...16 0, 0.25, 0.5, 1...18 0, 0.25, 0.5, 1...20 0, 0.25, 0.5, 1...20, 24 0, 0.25, 0.5, 1...20, 24, 32 0, 0.25, 0.5, 1...16, 24, 32, 40 0, 0.25, 0.5, 1...16, 24, 32, 40, 80
Number of replicas 1 1 1 1 1 1 1
Multi-AZ N/A N/A N/A N/A N/A N/A N/A
Read Scale-out N/A N/A N/A N/A N/A N/A N/A
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

General purpose - provisioned compute - Fsv2-series

Fsv2-series compute generation (part 1)

Compute size (service objective) GP_Fsv2_8 GP_Fsv2_10 GP_Fsv2_12 GP_Fsv2_14 GP_Fsv2_16
Compute generation Fsv2-series Fsv2-series Fsv2-series Fsv2-series Fsv2-series
vCores 8 10 12 14 16
Memory (GB) 15.1 18.9 22.7 26.5 30.2
Max number DBs per pool 1 500 500 500 500 500
Columnstore support Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) N/A N/A N/A N/A N/A
Max data size (GB) 1024 1024 1024 1024 1536
Max log size (GB) 336 336 336 336 512
TempDB max data size (GB) 333 333 333 333 333
Storage type Remote SSD Remote SSD Remote SSD Remote SSD Remote SSD
IO latency (approximate) 5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
Max data IOPS per pool 2 2560 3200 3840 4480 5120
Max log rate per pool (MBps) 48 48 48 48 48
Max concurrent workers per pool (requests) 3 400 500 600 700 800
Max concurrent logins per pool (requests) 3 800 1000 1200 1400 1600
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0-8 0-10 0-12 0-14 0-16
Number of replicas 1 1 1 1 1
Multi-AZ N/A N/A N/A N/A N/A
Read Scale-out N/A N/A N/A N/A N/A
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

Fsv2-series compute generation (part 2)

Compute size (service objective) GP_Fsv2_18 GP_Fsv2_20 GP_Fsv2_24 GP_Fsv2_32 GP_Fsv2_36 GP_Fsv2_72
Compute generation Fsv2-series Fsv2-series Fsv2-series Fsv2-series Fsv2-series Fsv2-series
vCores 18 20 24 32 36 72
Memory (GB) 34.0 37.8 45.4 60.5 68.0 136.0
Max number DBs per pool 1 500 500 500 500 500
Columnstore support Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) N/A N/A N/A N/A N/A N/A
Max data size (GB) 1536 1536 1536 3072 3072 4096
Max log size (GB) 512 512 512 1024 1024 1024
TempDB max data size (GB) 83.25 92.5 111 148 166.5 333
Storage type Remote SSD Remote SSD Remote SSD Remote SSD Remote SSD Remote SSD
IO latency (approximate) 5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
5-7 ms (write)
5-10 ms (read)
Max data IOPS per pool 2 5760 6400 7680 10240 11520 23040
Max log rate per pool (MBps) 48 48 48 48 48 48
Max concurrent workers per pool (requests) 3 900 1000 1200 1600 1800 3600
Max concurrent logins per pool (requests) 3 1800 2000 2400 3200 3600 7200
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0-18 0-20 0-24 0-32 0-36 0-72
Number of replicas 1 1 1 1 1 1
Multi-AZ N/A N/A N/A N/A N/A N/A
Read Scale-out N/A N/A N/A N/A N/A N/A
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

Business critical - provisioned compute - Gen4

Important

New Gen4 databases are no longer supported in the Australia East or Brazil South regions.

Business critical service tier: Generation 4 compute platform (part 1)

Compute size (service objective) BC_Gen4_2 BC_Gen4_3 BC_Gen4_4 BC_Gen4_5 BC_Gen4_6
Compute generation Gen4 Gen4 Gen4 Gen4 Gen4
vCores 2 3 4 5 6
Memory (GB) 14 21 28 35 42
Max number DBs per pool 1 50 100 100 100 100
Columnstore support Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) 2 3 4 5 6
Storage type Local SSD Local SSD Local SSD Local SSD Local SSD
Max data size (GB) 1024 1024 1024 1024 1024
Max log size (GB) 307 307 307 307 307
TempDB max data size (GB) 64 96 128 160 192
IO latency (approximate) 1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
Max data IOPS per pool 2 9,000 13,500 18,000 22,500 27,000
Max log rate per pool (MBps) 20 30 40 50 60
Max concurrent workers per pool (requests) 3 420 630 840 1050 1260
Max concurrent logins per pool (requests) 3 420 630 840 1050 1260
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1, 2 0, 0.25, 0.5, 1...3 0, 0.25, 0.5, 1...4 0, 0.25, 0.5, 1...5 0, 0.25, 0.5, 1...6
Number of replicas 4 4 4 4 4
Multi-AZ Yes Yes Yes Yes Yes
Read Scale-out Yes Yes Yes Yes Yes
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

Business critical service tier: Generation 4 compute platform (part 2)

Compute size (service objective) BC_Gen4_7 BC_Gen4_8 BC_Gen4_9 BC_Gen4_10 BC_Gen4_16 BC_Gen4_24
Compute generation Gen4 Gen4 Gen4 Gen4 Gen4 Gen4
vCores 7 8 9 10 16 24
Memory (GB) 49 56 63 70 112 159.5
Max number DBs per pool 1 100 100 100 100 100 100
Columnstore support N/A N/A N/A N/A N/A N/A
In-memory OLTP storage (GB) 7 8 9.5 11 20 36
Storage type Local SSD Local SSD Local SSD Local SSD Local SSD Local SSD
Max data size (GB) 1024 1024 1024 1024 1024 1024
Max log size (GB) 307 307 307 307 307 307
TempDB max data size (GB) 224 256 288 320 512 768
IO latency (approximate) 1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
Max data IOPS per pool 2 31,500 36,000 40,500 45,000 72,000 96,000
Max log rate per pool (MBps) 70 80 80 80 80 80
Max concurrent workers per pool (requests) 3 1470 1680 1890 2100 3360 5040
Max concurrent logins per pool (requests) 3 1470 1680 1890 2100 3360 5040
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1...7 0, 0.25, 0.5, 1...8 0, 0.25, 0.5, 1...9 0, 0.25, 0.5, 1...10 0, 0.25, 0.5, 1...10, 16 0, 0.25, 0.5, 1...10, 16, 24
Number of replicas 4 4 4 4 4 4
Multi-AZ Yes Yes Yes Yes Yes Yes
Read Scale-out Yes Yes Yes Yes Yes Yes
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

Business critical - provisioned compute - Gen5

Business critical service tier: Generation 5 compute platform (part 1)

Compute size (service objective) BC_Gen5_4 BC_Gen5_6 BC_Gen5_8 BC_Gen5_10 BC_Gen5_12 BC_Gen5_14
Compute generation Gen5 Gen5 Gen5 Gen5 Gen5 Gen5
vCores 4 6 8 10 12 14
Memory (GB) 20.8 31.1 41.5 51.9 62.3 72.7
Max number DBs per pool 1 50 100 100 100 100 100
Columnstore support Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) 3.14 4.71 6.28 8.65 11.02 13.39
Max data size (GB) 1024 1536 1536 1536 3072 3072
Max log size (GB) 307 307 461 461 922 922
TempDB max data size (GB) 128 192 256 320 384 448
Storage type Local SSD Local SSD Local SSD Local SSD Local SSD Local SSD
IO latency (approximate) 1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
Max data IOPS per pool 2 18,000 27,000 36,000 45,000 54,000 63,000
Max log rate per pool (MBps) 60 90 120 120 120 120
Max concurrent workers per pool (requests) 3 420 630 840 1050 1260 1470
Max concurrent logins per pool (requests) 3 420 630 840 1050 1260 1470
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1...4 0, 0.25, 0.5, 1...6 0, 0.25, 0.5, 1...8 0, 0.25, 0.5, 1...10 0, 0.25, 0.5, 1...12 0, 0.25, 0.5, 1...14
Number of replicas 4 4 4 4 4 4
Multi-AZ Yes Yes Yes Yes Yes Yes
Read Scale-out Yes Yes Yes Yes Yes Yes
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

Business critical service tier: Generation 5 compute platform (part 2)

Compute size (service objective) BC_Gen5_16 BC_Gen5_18 BC_Gen5_20 BC_Gen5_24 BC_Gen5_32 BC_Gen5_40 BC_Gen5_80
Compute generation Gen5 Gen5 Gen5 Gen5 Gen5 Gen5 Gen5
vCores 16 18 20 24 32 40 80
Memory (GB) 83 93.4 103.8 124.6 166.1 207.6 415.2
Max number DBs per pool 1 100 100 100 100 100 100 100
Columnstore support Yes Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) 15.77 18.14 20.51 25.25 37.94 52.23 131.68
Max data size (GB) 3072 3072 3072 4096 4096 4096 4096
Max log size (GB) 922 922 922 1229 1229 1229 1229
TempDB max data size (GB) 512 576 640 768 1024 1280 2560
Storage type Local SSD Local SSD Local SSD Local SSD Local SSD Local SSD Local SSD
IO latency (approximate) 1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
Max data IOPS per pool 2 72,000 81,000 90,000 108,000 144,000 180,000 256,000
Max log rate per pool (MBps) 120 120 120 120 120 120 120
Max concurrent workers per pool (requests) 3 1680 1890 2100 2520 3360 4200 8400
Max concurrent logins per pool (requests) 3 1680 1890 2100 2520 3360 4200 8400
Max concurrent sessions 30,000 30,000 30,000 30,000 30,000 30,000 30,000
Min/max elastic pool vCore choices per database 0, 0.25, 0.5, 1...16 0, 0.25, 0.5, 1...18 0, 0.25, 0.5, 1...20 0, 0.25, 0.5, 1...20, 24 0, 0.25, 0.5, 1...20, 24, 32 0, 0.25, 0.5, 1...20, 24, 32, 40 0, 0.25, 0.5, 1...20, 24, 32, 40, 80
Number of replicas 4 4 4 4 4 4 4
Multi-AZ Yes Yes Yes Yes Yes Yes Yes
Read Scale-out Yes Yes Yes Yes Yes Yes Yes
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

Business critical - provisioned compute - M-series

M-series compute generation (part 1)

Compute size (service objective) BC_M_8 BC_M_10 BC_M_12 BC_M_14 BC_M_16 BC_M_18
Compute generation M-series M-series M-series M-series M-series M-series
vCores 8 10 12 14 16 18
Memory (GB) 235.4 294.3 353.2 412.0 470.9 529.7
Max number DBs per pool 1 100 100 100 100 100 100
Columnstore support Yes Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) 64 80 96 112 128 150
Max data size (GB) 512 640 768 896 1024 1152
Max log size (GB) 171 213 256 299 341 384
TempDB max data size (GB) 256 320 384 448 512 576
Storage type Local SSD Local SSD Local SSD Local SSD Local SSD Local SSD
IO latency (approximate) 1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
Max data IOPS per pool 2 12,499 15,624 18,748 21,873 24,998 28,123
Max log rate per pool (MBps) 48 60 72 84 96 108
Max concurrent workers per pool (requests) 3 800 1,000 1,200 1,400 1,600 1,800
Max concurrent logins per pool (requests) 3 800 1,000 1,200 1,400 1,600 1,800
Max concurrent sessions 30000 30000 30000 30000 30000 30000
Min/max elastic pool vCore choices per database 0-8 0-10 0-12 0-14 0-16 0-18
Number of replicas 4 4 4 4 4 4
Multi-AZ No No No No No No
Read Scale-out Yes Yes Yes Yes Yes Yes
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

If all vCores of an elastic pool are busy, then each database in the pool receives an equal amount of compute resources to process queries. Azure SQL Database provides resource sharing fairness between databases by ensuring equal slices of compute time. Elastic pool resource sharing fairness is in addition to any amount of resource otherwise guaranteed to each database when the vCore min per database is set to a non-zero value.

M-series compute generation (part 2)

Compute size (service objective) BC_M_20 BC_M_24 BC_M_32 BC_M_64 BC_M_128
Compute generation M-series M-series M-series M-series M-series
vCores 20 24 32 64 128
Memory (GB) 588.6 706.3 941.8 1883.5 3767.0
Max number DBs per pool 1 100 100 100 100 100 100
Columnstore support Yes Yes Yes Yes Yes
In-memory OLTP storage (GB) 172 216 304 704 1768
Max data size (GB) 1280 1536 2048 4096 4096
Max log size (GB) 427 512 683 1024 1024
TempDB max data size (GB) 4096 2048 1024 768 640
Storage type Local SSD Local SSD Local SSD Local SSD Local SSD
IO latency (approximate) 1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
1-2 ms (write)
1-2 ms (read)
Max data IOPS per pool 2 31,248 37,497 49,996 99,993 160,000
Max log rate per pool (MBps) 120 144 192 264 264
Max concurrent workers per pool (requests) 3 2,000 2,400 3,200 6,400 12,800
Max concurrent logins per pool (requests) 3 2,000 2,400 3,200 6,400 12,800
Max concurrent sessions 30000 30000 30000 30000 30000
Number of replicas 4 4 4 4 4
Multi-AZ No No No No No
Read Scale-out Yes Yes Yes Yes Yes
Included backup storage 1X DB size 1X DB size 1X DB size 1X DB size 1X DB size

1 See Resource management in dense elastic pools for additional considerations.

2 The maximum value for IO sizes ranging between 8 KB and 64 KB. Actual IOPS are workload-dependent. For details, see Data IO Governance.

3 For the max concurrent workers (requests) for any individual database, see Single database resource limits. For example, if the elastic pool is using Gen5 and the max vCore per database is set at 2, then the max concurrent workers value is 200. If max vCore per database is set to 0.5, then the max concurrent workers value is 50 since on Gen5 there are a max of 100 concurrent workers per vCore. For other max vCore settings per database that are less 1 vCore or less, the number of max concurrent workers is similarly rescaled.

If all vCores of an elastic pool are busy, then each database in the pool receives an equal amount of compute resources to process queries. Azure SQL Database provides resource sharing fairness between databases by ensuring equal slices of compute time. Elastic pool resource sharing fairness is in addition to any amount of resource otherwise guaranteed to each database when the vCore min per database is set to a non-zero value.

Database properties for pooled databases

The following table describes the properties for pooled databases.

Note

The resource limits of individual databases in elastic pools are generally the same as for single databases outside of pools that has the same compute size (service objective). For example, the max concurrent workers for an GP_Gen4_1 database is 200 workers. So, the max concurrent workers for a database in a GP_Gen4_1 pool is also 200 workers. Note, the total number of concurrent workers in GP_Gen4_1 pool is 210.

Property Description
Max vCores per database The maximum number of vCores that any database in the pool may use, if available based on utilization by other databases in the pool. Max vCores per database is not a resource guarantee for a database. This setting is a global setting that applies to all databases in the pool. Set max vCores per database high enough to handle peaks in database utilization. Some degree of over-committing is expected since the pool generally assumes hot and cold usage patterns for databases where all databases are not simultaneously peaking.
Min vCores per database The minimum number of vCores that any database in the pool is guaranteed. This setting is a global setting that applies to all databases in the pool. The min vCores per database may be set to 0, and is also the default value. This property is set to anywhere between 0 and the average vCores utilization per database. The product of the number of databases in the pool and the min vCores per database cannot exceed the vCores per pool.
Max storage per database The maximum database size set by the user for a database in a pool. Pooled databases share allocated pool storage, so the size a database can reach is limited to the smaller of remaining pool storage and database size. Max database size refers to the maximum size of the data files and does not include the space used by log files.

Next steps