You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: azure-sql/includes/sql-managed-instance/azure-sql-managed-instance-next-gen-general-purpose-upgrade.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
author: MashaMSFT
3
3
ms.author: mathoma
4
4
ms.reviewer: randolphwest
5
-
ms.date: 11/18/2025
5
+
ms.date: 03/10/2026
6
6
ms.service: azure-sql-managed-instance
7
7
ms.topic: include
8
8
ms.custom:
@@ -32,7 +32,7 @@ The Next-gen General Purpose service tier helps reduce cost by offering free IOP
32
32
33
33
For example:
34
34
- If 1 GB of storage costs 0.115, then 1 IOPS = 0.115/3 = 0.038 per IOPS.
35
-
- A 1,024-GB instance receives 3,072 IOPS for free. You can choose to increase your IOPS up to the [VM limit](../../managed-instance/resource-limits.md#iops) for an additional cost.
35
+
- A 1,024-GB instance receives 3,072 IOPS for free. You can choose to increase your IOPS up to the [VM limit](../../managed-instance/resource-limits.md#iops-and-throughput) for an additional cost.
<sup>1</sup> Deploying a 2-vCore instance is only possible inside an [instance pool](instance-pools-overview.md).
@@ -149,9 +148,9 @@ The following table lists the maximum storage size based on the number of vCores
149
148
| Max number of database files | 280 per instance, unless the instance storage size or [Azure Premium Disk storage allocation space](doc-changes-updates-known-issues.md#exceeding-storage-space-with-small-database-files) limit has been reached. | 4,096 files per database | 32,767 files per database, unless the instance storage size limit has been reached. |
150
149
| Max data file size | Maximum size of each data file is 8 TB. Use at least two data files for databases larger than 8 TB. | Up to currently available instance size (depending on the number of vCores). | Up to currently available instance size (depending on the number of vCores). |
151
150
| Max log file size | Limited to 2 TB and currently available instance storage size. | Limited to 2 TB and currently available instance storage size. | Limited to 2 TB and currently available instance storage size. |
152
-
| Data/Log IOPS (approximate) | 500 - 7500 per file<br />\*[Increase file size to get more IOPS](#file-io-characteristics-in-general-purpose-tier)| Reserved storage * 3 - up to the VM limit. 300 in case of 32 GB, 64 GB, and 96 GB of reserved storage.<br />VM limit depends on the number of vCores<br />6400 IOPS for a VM with 4 vCores - 80 K IOPS for a VM with 128 vCores | 16 K - 320 K (4000 IOPS/vCore)<br />Add more vCores to get better IO performance. |
153
-
| Data throughput (approximate) | 100 - 250 MiB/s per file<br />\*[Increase the file size to get better IO performance](#file-io-characteristics-in-general-purpose-tier)| IOPS / 30 MBps - up to the VM limit. 75 MBps in case of 32 GB, 64 GB, and 96 GB of reserved storage. | Not limited. |
154
-
| Log write throughput limit (per instance) | 4.5 MiB/s per vCore<br />Max 120 MiB/s per instance<br />22 - 65 MiB/s per DB (depending on log file size)<br />\*[Increase the file size to get better IO performance](#file-io-characteristics-in-general-purpose-tier)| 4.5 MiB/s per vCore<br />Max 192 MiB/s | Standard-series:<br />4.5 MiB/s per vCore<br />Max 96 MiB/s<br /><br />Premium-series and Memory optimized premium-series:<br />12 MiB/s per vCore<br />Max 192 MiB/s |
151
+
| Data/Log IOPS (approximate) | 500 - 7500 per file<br />\*[Increase file size to get more IOPS](#iops-and-throughput)| Reserved storage * 3 - up to the VM limit. 300 in case of 32 GB, 64 GB, and 96 GB of reserved storage.<br />VM limit depends on the number of vCores<br />6400 IOPS for a VM with 4 vCores - 80 K IOPS for a VM with 128 vCores | 16 K - 320 K (4000 IOPS/vCore)<br />Add more vCores to get better IO performance. |
152
+
| Data throughput (approximate) | 100 - 250 MiB/s per file<br />\*[Increase the file size to get better IO performance](#iops-and-throughput)| IOPS / 30 MBps - up to the VM limit. 75 MBps in case of 32 GB, 64 GB, and 96 GB of reserved storage. | Not limited. |
153
+
| Log write throughput limit (per instance) | 4.5 MiB/s per vCore<br />Max 120 MiB/s per instance<br />22 - 65 MiB/s per DB (depending on log file size)<br />\*[Increase the file size to get better IO performance](#iops-and-throughput)| 4.5 MiB/s per vCore<br />Max 192 MiB/s | Standard-series:<br />4.5 MiB/s per vCore<br />Max 96 MiB/s<br /><br />Premium-series and Memory optimized premium-series:<br />12 MiB/s per vCore<br />Max 192 MiB/s |
155
154
| Storage IO latency (approximate<sup>1</sup>) | 5-10 ms | 3-5 ms | 1-2 ms |
156
155
| In-memory OLTP | Not supported | Not supported | Available, [size depends on number of vCore](#in-memory-oltp-available-space)|
157
156
| Max sessions | 30000 | 30000 | 30000 |
@@ -165,37 +164,23 @@ The following table lists the maximum storage size based on the number of vCores
165
164
166
165
<sup>1</sup> This is an average range. Although the vast majority of IO request durations will fall under the top of the range, outliers which exceed the range are possible.
167
166
168
-
### IOPS
167
+
### IOPS and throughput
169
168
170
-
For the Next-gen General Purpose and Business Critical service tiers, available IOPS are dictated by the number of vCores:
169
+
IOPS and throughput are characteristics of the IO file system.
171
170
172
-
-**Next-gen General Purpose service tier**: fixed value of IOPS based on the number of vCores. The price of the storage includes the minimum IOPS. If you go above the minimum, you're charged as follows: 1 IOPS = storage price (by region) divided by three. For example, if 1 GB of storage costs 0.115, then 1 IOPS = 0.115/3 = 0.038 per IOPS.
173
-
-**Business Critical service tier**: uses a formula (4000 IOPS/vCore) to determine IOPS limits.
171
+
IOPS and throughput differ by service tier in the following ways:
174
172
175
-
The following table lists the max IOPS available to each service tier based on the number of vCores:
173
+
- In the **Business Critical** service tier, throughput is unlimited.
174
+
- In the **General Purpose** service tier, throughput depends on the file size.
175
+
- In the **Next-gen General Purpose** service tier, throughput scales proportionally with the number of IOPS allocated to the instance.
176
176
177
-
| Number of vCores | Next-gen General Purpose | Business Critical |
178
-
| --- | --- | --- |
179
-
| 4 | 6,400 | 16,000 |
180
-
| 6 | 9,600 | 24,000 |
181
-
| 8 | 12,800 | 32,000 |
182
-
| 10 | 16,000 | 40,000 |
183
-
| 12 | 19,200 | 48,000 |
184
-
| 16 | 25,600 | 64,000 |
185
-
| 20 | 32,000 | 80,000 |
186
-
| 24 | 38,400 | 96,000 |
187
-
| 32 | 51,200 | 128,000 |
188
-
| 40 | 64,000 | 160,000 |
189
-
| 48 | 76,800 | 192,000 |
190
-
| 56 | 80,000 | 224,000 |
191
-
| 64 | 80,000 | 256,000 |
192
-
| 80 | 80,000 | 320,000 |
193
-
| 96 | 80,000 | 320,000 |
194
-
| 128 | 80,000 | 320,000 |
195
-
196
-
### File IO characteristics in General Purpose tier
197
-
198
-
In the General Purpose service tier, every database file gets dedicated IOPS and throughput that depend on the file size. Larger files get more IOPS and throughput. IO characteristics of database files are shown in the following table:
177
+
The following sections describe IO characteristics by service tier in more detail.
178
+
179
+
#### IOPS and throughput in the General Purpose service tier
180
+
181
+
In the General Purpose service tier, every database file gets dedicated IOPS and throughput that depend on the file size. Larger files get more IOPS and throughput.
182
+
183
+
The following table shows IO characteristics of database files in the **General Purpose** service tier:
199
184
200
185
| File size | >=0 and <=129 GiB | >129 and <=513 GiB | >513 and <=1025 GiB | >1025 and <=2049 GiB | >2049 and <=4097 GiB | >4097 GiB and <=8 TiB |
201
186
| --- | --- | --- | --- | --- | --- | --- |
@@ -206,6 +191,75 @@ If you notice high IO latency on some database file or you see that IOPS/through
206
191
207
192
There's also an instance-level limit on the max log write throughput (see the previous table for values, for example 22 MiB/s), so you might not be able to reach the max file throughout on the log file because you're hitting the instance throughput limit.
208
193
194
+
#### IOPS and throughput in the Next-gen General Purpose service tier
195
+
196
+
The **Next-gen General Purpose** service tier has the following IOPS characteristics:
197
+
-**Minimum guaranteed IOPS**: Every instance is guaranteed a minimum of 300 IOPS, regardless of the reserved storage.
198
+
-**IOPS scales with reserved storage**: For every 1GB of reserved storage, you get 3 built-in IOPS. For example, if you have 1024 GB of reserved storage, you get 3072 IOPS assigned.
199
+
-**Extra IOPS**: You can increase the amount of IOPS above the built-in value up to the cap.
200
+
-**Maximum IOPS cap per vCore count**: Each vCore configuration has a maximum IOPS limit, as the max IOPS per vCore table shows.
201
+
202
+
The **Next-gen General Purpose** service tier has the following throughput characteristics:
203
+
204
+
-**Minimum guaranteed throughput**: Every instance is guaranteed a minimum of 75 MB/s of throughput, regardless of the number of vCores.
205
+
-**Throughput scales with IOPS**: Throughput scales proportionally with the number of IOPS allocated to the instance, using the formula `throughput (MB/s) = IOPS / 30`. For example, an instance allocated with 3,000 IOPS receives 100 MB/s of throughput.
206
+
-**Maximum throughput cap per vCore count**: Each vCore configuration has a maximum throughput limit, as the max throughput per vCore table shows. Once the required IOPS are provisioned to reach this cap, allocating additional IOPS increases IOPS capacity but doesn't increase throughput further. For example, a 4 vCore instance (max 6,400 IOPS) reaches its throughput cap of 145 MB/s at 4,350 IOPS. Scaling IOPS from 4,350 to 6,400 provides more IOPS to the instance, but throughput remains capped at 145 MB/s. To increase the maximum throughput, add more vCores.
207
+
208
+
The following table shows the max IOPS and throughput per number of vCores allocated to an instance in the Next-gen General Purpose service tier:
209
+
210
+
|**Number of vCores**|**Max IOPS**|**Max throughput (MB/s)**|
211
+
|:--|:--|:--|
212
+
| 4 | 6,400 | 145 |
213
+
| 6 | 9,600 | 217 |
214
+
| 8 | 12,800 | 290 |
215
+
| 10 | 16,000 | 367 |
216
+
| 12 | 19,200 | 445 |
217
+
| 16 | 25,600 | 600 |
218
+
| 20 | 32,000 | 665 |
219
+
| 24 | 38,400 | 730 |
220
+
| 32 | 51,200 | 865 |
221
+
| 40 | 64,000 | 1,152 |
222
+
| 48 | 76,800 | 1,152 |
223
+
| 56 - 128 | 80,000 | 1,200 |
224
+
225
+
#### IOPS pricing in Next-gen General Purpose
226
+
227
+
When using the additional IOPS, consider the following:
228
+
- Additional IOPS is charged per IOPS/month
229
+
- Billable IOPS is calculated by the following formula: `Billable IOPS = Total IOPS - default IOPS`.
230
+
231
+
For example, if you have a pay-as-you-go 4 vCore instance with 6400 IOPS, you are charged for:
#### IOPS and throughput in the Business Critical service tier
238
+
239
+
In the Business Critical service tier, available IOPS are dictated by the number of vCores using the formula `4000 IOPS/vCore`. Since the Business Critical service tier uses local storage for data and log files, the throughput is unlimited.
240
+
241
+
The following table lists the max IOPS available in the Business Critical service tier based on the number of vCores:
242
+
243
+
| Number of vCores | Business Critical |
244
+
| --- | --- |
245
+
| 4 | 16,000 |
246
+
| 6 | 24,000 |
247
+
| 8 | 32,000 |
248
+
| 10 | 40,000 |
249
+
| 12 | 48,000 |
250
+
| 16 | 64,000 |
251
+
| 20 | 80,000 |
252
+
| 24 | 96,000 |
253
+
| 32 | 128,000 |
254
+
| 40 | 160,000 |
255
+
| 48 | 192,000 |
256
+
| 56 | 224,000 |
257
+
| 64 | 256,000 |
258
+
| 80 | 320,000 |
259
+
| 96 | 320,000 |
260
+
| 128 | 320,000 |
261
+
262
+
209
263
### Data and log storage
210
264
211
265
The following factors affect the amount of storage used for data and log files, and apply to General Purpose and Business Critical tiers.
@@ -236,7 +290,7 @@ Storage for database backups is allocated to support the [point-in-time restore
236
290
237
291
- Both data and log file size in the user and system databases are included in the instance storage size that is compared with the max storage size limit. Use the [sys.master_files](/sql/relational-databases/system-catalog-views/sys-master-files-transact-sql) system view to determine the total used space by databases. Error logs aren't persisted and not included in the size. Backups aren't included in storage size.
238
292
239
-
- Throughput and IOPS in the General Purpose tier also depends on the [file size](#file-io-characteristics-in-general-purpose-tier), and isn't explicitly limited by the SQL Managed Instance.
293
+
- Throughput and IOPS in the General Purpose tier also depends on the [file size](#iops-and-throughput), and isn't explicitly limited by the SQL Managed Instance.
240
294
241
295
- Max instance IOPS depend on the file layout and distribution of workload. As an example, if you create 7 x 1-TB files with max 5 K IOPS each and seven small files (smaller than 128 GB) with 500 IOPS each, you can get 38500 IOPS per instance (7x5000+7x500) if your workload can use all files. Some IOPS are also used for autobackups.
242
296
@@ -261,7 +315,7 @@ When allocating memory, you can choose between a minimum and maximum value, and
261
315
The following table shows the minimum and maximum memory values for the flexible memory feature:
262
316
263
317
| vCores | Min RAM (GB) | Max RAM (GB) | Supported API RAM values | Min ratio | Max ratio | Supported ratios |
SQL Managed Instance can be created only in [supported regions](https://azure.microsoft.com/global-infrastructure/services/?products=sql-database®ions=all). To create a SQL Managed Instance in a region that is currently not supported, you can [send a support request via the Azure portal](../database/quota-increase-request.md).
0 commit comments