Skip to content

Commit a673945

Browse files
committed
SQL Assessment Doc Updates For As On-Prem
1 parent 50260b7 commit a673945

7 files changed

+79
-19
lines changed

articles/migrate/common-questions-discovery-assessment.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ To ensure performance data is collected, check:
6464
- If Azure Migrate connection status for all SQL instances is 'Connected' in the discovered SQL instance section.
6565
- If all of the performance counters are missing, ensure that outbound connections on ports 443 (HTTPS) are allowed.
6666

67-
If any of the performance counters are missing, Azure SQL assessment recommends the smallest Azure SQL configuration for that instance/database.
67+
If any of the performance counters are missing, Azure SQL assessment falls back to As on-premises sizing and recommends an Azure SQL configuration based on the allocated cores, memory and total database size on-premises.
6868

6969
## Why is confidence rating not available for Azure App Service assessments?
7070

articles/migrate/concepts-azure-sql-assessment-calculation.md

Lines changed: 62 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,11 @@ There are three types of assessments that you can create using the Azure Migrate
3030
> [!NOTE]
3131
> If the number of Azure VM or AVS assessments are incorrect on the Discovery and assessment tool, click on the total number of assessments to navigate to all the assessments and recalculate the Azure VM or AVS assessments. The Discovery and assessment tool then shows the correct count for that assessment type.
3232
33-
An Azure SQL assessment provides one sizing criteria:
33+
An Azure SQL assessment provides two sizing criteria:
3434

3535
**Sizing criteria** | **Details** | **Data**
3636
--- | --- | ---
37+
**As on-premises** | Assessments that make recommendations based on the on-premises SQL Server configuration alone | The Azure SQL configuration is based on the on-premises SQL Server configuration, which includes cores allocated, total memory allocated and database sizes.
3738
**Performance-based** | Assessments that make recommendations based on collected performance data | The Azure SQL configuration is based on performance data of SQL instances and databases, which includes CPU utilization, Memory utilization, IOPS (Data and Log files), throughput, and latency of IO operations.
3839

3940
## How do I assess my on-premises SQL servers?
@@ -56,8 +57,8 @@ The appliance collects performance data for compute settings with these steps:
5657
1. The appliance collects a real-time sample point. For SQL servers, it collects a sample point every 30 seconds.
5758
2. The appliance aggregates the sample data points collected every 30 seconds over 10 minutes. To create the data point, the appliance selects the peak values from all samples. It sends the max, mean and variance for each counter to Azure.
5859
3. Azure Migrate stores all the 10-minute data points for the last month.
59-
4. When you create an assessment, Azure Migrate identifies the appropriate data point to use for rightsizing. Identification is based on the percentile values for performance history and percentile utilization.
60-
- For example, if the performance history is one week and the percentile utilization is the 95th percentile, the assessment sorts the 10-minute sample points for the last week. It sorts them in ascending order and picks the 95th percentile value for rightsizing.
60+
4. When you create an assessment, Azure Migrate identifies the appropriate data point to use for right-sizing. Identification is based on the percentile values for performance history and percentile utilization.
61+
- For example, if the performance history is one week and the percentile utilization is the 95th percentile, the assessment sorts the 10-minute sample points for the last week. It sorts them in ascending order and picks the 95th percentile value for right-sizing.
6162
- The 95th percentile value makes sure you ignore any outliers, which might be included if you picked the 99th percentile.
6263
- If you want to pick the peak usage for the period and don't want to miss any outliers, select the 99th percentile for percentile utilization.
6364
5. This value is multiplied by the comfort factor to get the effective performance utilization data for these metrics that the appliance collects:
@@ -82,7 +83,7 @@ Target and pricing settings | **Currency** | The billing currency for your accou
8283
Target and pricing settings | **Discount (%)** | Any subscription-specific discounts you receive on top of the Azure offer. The default setting is 0%.
8384
Target and pricing settings | **VM uptime** | Specify the duration (days per month/hour per day) that servers/VMs run. This is useful for computing cost estimates for SQL Server on Azure VM where you're aware that Azure VMs might not run continuously. <br/> Cost estimates for servers where recommended target is *SQL Server on Azure VM* are based on the duration specified. Default is 31 days per month/24 hours per day.
8485
Target and pricing settings | **Azure Hybrid Benefit** | Specify whether you already have a Windows Server and/or SQL Server license. Azure Hybrid Benefit is a licensing benefit that helps you to significantly reduce the costs of running your workloads in the cloud. It works by letting you use your on-premises Software Assurance-enabled Windows Server and SQL Server licenses on Azure. For example, if you have a SQL Server license and they're covered with active Software Assurance of SQL Server Subscriptions, you can apply for the Azure Hybrid Benefit when you bring licenses to Azure.
85-
Assessment criteria | **Sizing criteria** | Set to *Performance-based* by default, which means Azure Migrate collects performance metrics pertaining to SQL instances and the databases managed by it to recommend an optimal-sized SQL Server on Azure VM and/or Azure SQL Database and/or Azure SQL Managed Instance configuration.
86+
Assessment criteria | **Sizing criteria** | Set to *Performance-based* by default, which means Azure Migrate collects performance metrics pertaining to SQL instances and the databases managed by it to recommend an optimal-sized SQL Server on Azure VM and/or Azure SQL Database and/or Azure SQL Managed Instance configuration. <br/><br/> You can change this to *As on-premises* to get recommendations based on just the on-premises SQL Sever configuration without the performance metric based optimizations.
8687
Assessment criteria | **Performance history** | Indicate the data duration on which you want to base the assessment. (Default is one day)
8788
Assessment criteria | **Percentile utilization** | Indicate the percentile value you want to use for the performance sample. (Default is 95th percentile)
8889
Assessment criteria | **Comfort factor** | Indicate the buffer you want to use during assessment. This accounts for issues like seasonal usage, short performance history, and likely increases in future usage.
@@ -149,9 +150,59 @@ If the database/instance is marked as **Ready** for the target deployment type S
149150

150151
## Calculate sizing
151152

152-
### Instances to Azure SQL MI and Databases to Azure SQL DB configuration
153+
After the assessment determines the readiness and the recommended Azure SQL deployment type, it computes a specific service tier and Azure SQL configuration (SKU size) that can meet or exceed the on-premises SQL Server performance. This calculation depends on whether you are using *As on-premises* or *Performance-based* sizing criteria.
153154

154-
After the assessment determines the readiness and the recommended Azure SQL deployment type, it computes a specific service tier and Azure SQL configuration (SKU size) that can meet or exceed the on-premises SQL instance performance:
155+
### As on-premises sizing calculation
156+
157+
If you use As on-premises sizing criteria, the assessment uses only SQL instance configuration data and doesn't consider performance data.
158+
159+
#### Instances to Azure SQL MI and Databases to Azure SQL DB configuration
160+
The assessment computes a specific service tier and Azure SQL configuration (SKU size) that can meet or exceed the on-premises SQL instance configuration:
161+
1. During the discovery process, Azure Migrate collects SQL instance configuration that includes:
162+
- vCores (allocated)
163+
- Memory (allocated)
164+
- Total DB size and database file organizations
165+
- Database size is calculated by adding all the data and log files.
166+
1. The assessment aggregates all the configuration data and tries to find the best match across various Azure SQL service tiers and configurations and picks a configuration that can match or exceed the SQL instance requirements, optimizing the cost.
167+
168+
#### Instances to SQL Server on Azure VM configuration
169+
*Instance to SQL Server on Azure VM* assessment report covers the ideal approach for migrating SQL Server instances and databases to SQL Server on Azure VM, adhering to the best practices. [Learn more](/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-checklist?preserve-view=true&view=azuresql#vm-size).
170+
171+
##### Storage sizing
172+
For storage sizing, the assessment maps each of the instance disk to an Azure disk. Sizing works as follows:
173+
174+
- The disk size needed for each of the disks is the size of SQL Data and SQL Log drives.
175+
176+
- The assessment recommends creating a storage disk pool for all SQL Log and SQL Data drives. For temp drives, the assessment recommends storing the files in the local drive.
177+
178+
- If the assessment can't find a disk for the required size, it marks the instance as unsuitable for migrating to SQL Server on Azure VM
179+
- If the assessment finds a set of suitable disks, it selects the disks that support the location specified in the assessment settings.
180+
- If the environment type is *Production*, the assessment tries to find Premium disks to map each of the disks, else it tries to find a suitable disk, which could either be Premium or Standard SSD disk.
181+
- If there are multiple eligible disks, assessment selects the disk with the lowest cost.
182+
183+
##### Compute sizing
184+
After it calculates storage requirements, the assessment considers CPU and RAM requirements of the instance to find a suitable VM size in Azure.
185+
- The assessment looks at the allocated cores and RAM to find a suitable Azure VM size.
186+
- If no suitable size is found, the server is marked as unsuitable for Azure.
187+
- If a suitable size is found, Azure Migrate applies the storage calculations. It then applies location and pricing-tier settings for the final VM size recommendation.
188+
- If there are multiple eligible Azure VM sizes, the one with the lowest cost is recommended.
189+
> [!NOTE]
190+
>As Azure SQL assessments are intended to give the best performance for your SQL workloads, the VM series list only has VMs that are optimized for running your SQL Server on Azure Virtual Machines (VMs). [Learn more](/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-checklist?preserve-view=true&view=azuresql#vm-size).
191+
192+
#### Servers to SQL Server on Azure VM configuration
193+
For *All servers to SQL Server on Azure VM* migration strategy, refer compute and storage sizing [here](concepts-assessment-calculation.md#calculate-sizing-as-is-on-premises).
194+
195+
> [!NOTE]
196+
> Confidence ratings are not applicable to Azure SQL assessments using *As on-premises* sizing criteria.
197+
198+
199+
### Performance-based sizing calculation
200+
201+
If you use *Performance-based* sizing, the assessment uses both SQL instance configuration and performance data to generate recommendations that meet or exceed the performance requirements.
202+
203+
#### Instances to Azure SQL MI and Databases to Azure SQL DB configuration
204+
205+
The assessment computes a specific service tier and Azure SQL configuration (SKU size) that can meet or exceed the on-premises SQL instance performance requirements:
155206
1. During the discovery process, Azure Migrate collects SQL instance configuration and performance that includes:
156207
- vCores (allocated) and CPU utilization (%)
157208
- CPU utilization for a SQL instance is the percentage of allocated CPU utilized by the instance on the SQL server
@@ -171,13 +222,13 @@ After the assessment determines the readiness and the recommended Azure SQL depl
171222
- Connection Mode: Read-only vs None
172223
1. The assessment aggregates all the configuration and performance data and tries to find the best match across various Azure SQL service tiers and configurations and picks a configuration that can match or exceed the SQL instance performance requirements, optimizing the cost.
173224

174-
### Instances to SQL Server on Azure VM configuration
225+
#### Instances to SQL Server on Azure VM configuration
175226

176227
*Instance to SQL Server on Azure VM* assessment report covers the ideal approach for migrating SQL Server instances and databases to SQL Server on Azure VM, adhering to the best practices. [Learn more](/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-checklist?preserve-view=true&view=azuresql#vm-size).
177228

178229
If the source is a SQL Server Always On Failover Cluster Instance (FCI), the assessment report covers the approach for migrating to a two-node SQL Server Failover Cluster Instance. This preserves the high availability and disaster recovery intents while adhering to the best practices. [Learn more](/azure/azure-sql/virtual-machines/windows/hadr-cluster-best-practices?view=azuresql&preserve-view=true&tabs=windows2012).
179230

180-
#### Storage sizing
231+
##### Storage sizing
181232
For storage sizing, the assessment maps each of the instance disk to an Azure disk. Sizing works as follows:
182233

183234
- Assessment adds the read and write IOPS of a disk to get the total IOPS required. Similarly, it adds the read and write throughput values to get the total throughput of each disk. The disk size needed for each of the disks is the size of SQL Data and SQL Log drives.
@@ -192,7 +243,7 @@ For storage sizing, the assessment maps each of the instance disk to an Azure di
192243
- If the environment type is *Production*, the assessment tries to find Premium disks to map each of the disks, else it tries to find a suitable disk, which could either be Premium or Standard SSD disk.
193244
- If there are multiple eligible disks, assessment selects the disk with the lowest cost.
194245

195-
#### Compute sizing
246+
##### Compute sizing
196247
After it calculates storage requirements, the assessment considers CPU and RAM requirements of the instance to find a suitable VM size in Azure.
197248
- The assessment looks at the effective utilized cores and RAM to find a suitable Azure VM size. *Effective utilized RAM or memory* for an instance is calculated by aggregating the buffer cache (buffer pool size in MB) for all the databases running in an instance.
198249
- If no suitable size is found, the server is marked as unsuitable for Azure.
@@ -203,10 +254,10 @@ After it calculates storage requirements, the assessment considers CPU and RAM r
203254
>As Azure SQL assessments are intended to give the best performance for your SQL workloads, the VM series list only has VMs that are optimized for running your SQL Server on Azure Virtual Machines (VMs). [Learn more](/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-checklist?preserve-view=true&view=azuresql#vm-size).
204255
205256

206-
### Servers to SQL Server on Azure VM configuration
257+
#### Servers to SQL Server on Azure VM configuration
207258
For *All servers to SQL Server on Azure VM* migration strategy, refer compute and storage sizing [here](concepts-assessment-calculation.md#calculate-sizing-performance-based).
208259

209-
### Confidence ratings
260+
### Confidence ratings (Performance-based)
210261
Each Azure SQL assessment is associated with a confidence rating. The rating ranges from one (lowest) to five (highest) stars. The confidence rating helps you estimate the reliability of the size recommendations Azure Migrate provides.
211262
- The confidence rating is assigned to an assessment. The rating is based on the availability of data points that are needed to compute the assessment.
212263
- For performance-based sizing, the assessment collects performance data of all the SQL instances and databases, which include:

articles/migrate/how-to-create-azure-sql-assessment.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,12 @@ This article shows you how to assess discovered SQL instances in preparation for
2020
- To create an assessment, you need to set up an Azure Migrate appliance for VMware, Hyper-V or Physical environment, whichever applicable. The appliance discovers on-premises servers, and sends metadata and performance data to Azure Migrate. [Learn more](migrate-appliance.md).
2121

2222
## Azure SQL assessment overview
23-
You can create an Azure SQL assessment with sizing criteria as **Performance-based**.
23+
You can create an Azure SQL assessment with sizing criteria as **Performance-based** or **As on-premises**.
2424

2525
**Sizing criteria** | **Details** | **Data**
2626
--- | --- | ---
27-
**Performance-based** | Assessments based on collected performance data | The recommended **Azure SQL configuration** is based on performance data of SQL instances and databases, which includes CPU usage, core counts, database file organizations and sizes, file IOs, batch query per second and memory size and usage by each of the database.
27+
**As on-premises** | Assess based on SQL Server configuration data/metadata. | The recommended Azure SQL configuration is based on the on-premises SQL Server configuration, which includes cores allocated, total memory allocated and database sizes. This can be useful when the workload characteristics require a longer duration to capture a comprehensive performance metric profile.
28+
**Performance-based** | Assess based on collected performance data. | The recommended Azure SQL configuration is based on performance data of SQL Server instances and databases, which includes CPU usage, core counts, database file organization and size, file IOs, and memory usage by each database. You can get optimal recommendations that are right-sized for the SQL workload.
2829

2930
[Learn more](concepts-azure-sql-assessment-calculation.md) about Azure SQL assessments.
3031

@@ -55,7 +56,7 @@ Run an assessment as follows:
5556
Target and pricing settings | **Discount (%)** | Any subscription-specific discounts you receive on top of the Azure offer. The default setting is 0%.
5657
Target and pricing settings | **VM uptime** | Specify the duration (days per month/hour per day) that servers/VMs run. This is useful for computing cost estimates for SQL Server on Azure VM where you're aware that Azure VMs might not run continuously. <br/> Cost estimates for servers where recommended target is *SQL Server on Azure VM* are based on the duration specified. Default is 31 days per month/24 hours per day.
5758
Target and pricing settings | **Azure Hybrid Benefit** | Specify whether you already have a Windows Server and/or SQL Server license. Azure Hybrid Benefit is a licensing benefit that helps you to significantly reduce the costs of running your workloads in the cloud. It works by letting you use your on-premises Software Assurance-enabled Windows Server and SQL Server licenses on Azure. For example, if you have a SQL Server license and they're covered with active Software Assurance of SQL Server Subscriptions, you can apply for the Azure Hybrid Benefit when you bring licenses to Azure.
58-
Assessment criteria | **Sizing criteria** | Set to *Performance-based* by default, which means Azure Migrate collects performance metrics pertaining to SQL instances and the databases managed by it to recommend an optimal-sized SQL Server on Azure VM and/or Azure SQL Database and/or Azure SQL Managed Instance configuration.
59+
Assessment criteria | **Sizing criteria** | Set to *Performance-based* by default, which means Azure Migrate collects performance metrics pertaining to SQL instances and the databases managed by it to recommend an optimal-sized SQL Server on Azure VM and/or Azure SQL Database and/or Azure SQL Managed Instance configuration.<br/><br/> You can change this to *As on-premises* to get recommendations based on just the on-premises SQL Sever configuration without the performance metric based optimizations.
5960
Assessment criteria | **Performance history** | Indicate the data duration on which you want to base the assessment. (Default is one day)
6061
Assessment criteria | **Percentile utilization** | Indicate the percentile value you want to use for the performance sample. (Default is 95th percentile)
6162
Assessment criteria | **Comfort factor** | Indicate the buffer you want to use during assessment. This accounts for issues like seasonal usage, short performance history, and likely increases in future usage. For example, consider a comfort factor of 2 for effective utilization of 2 Cores. In this case, the assessment considers the effective cores as 4 cores. Similarly, for the same comfort factor and an effective utilization of 8 GB memory, the assessment considers effective memory as 16 GB.

0 commit comments

Comments
 (0)