
Microsoft's cloud is a common home for MySQL, and Microsoft ships its own managed offering, Azure Database for MySQL. ScaleGrid's report compares that service against its own MySQL hosting on Azure, using 95th percentile latency in milliseconds and throughput in queries per second (QPS) as the yardsticks.
What was measured
Three workload mixes were exercised against both providers:
- Read-intensive: 80% reads and 20% writes
- Balanced: 50% reads and 50% writes
- Write-intensive: 20% reads and 80% writes
Read operations cover statements such as SELECT; writes cover INSERT, UPDATE and DELETE, which consume more resources and make write-heavy traffic the costlier of the two regimes. Full details of the test bed appear in the configuration section below.
Results by workload
Read-intensive
A read-dominated workload searches the database more often than it modifies it.
Throughput:

| Threads | ScaleGrid | Azure | ScaleGrid Improvement |
|---|---|---|---|
| 25 | 5,299 | 1,689 | 214% |
| 50 | 6,092 | 2,302 | 165% |
| 100 | 8,429 | 2,877 | 193% |
| 150 | 9,011 | 2,870 | 214% |
| 175 | 7,025 | 2,805 | 151% |
| As we can see from the above graph and performance table, ScaleGrid MySQL achieves up to 3x higher throughput compared to Azure Database for read-intensive workloads. While Azure Database for MySQL throughput is under 3,000 queries per second across all thread scenarios, ScaleGrid has over 5,000-9,000 queries per second across threads. |
Latency:

| Threads | ScaleGrid | Azure | ScaleGrid Improvement |
|---|---|---|---|
| 25 | 258 | 451 | -43% |
| 50 | 101 | 670 | -85% |
| 100 | 148 | 978 | -85% |
| 150 | 309 | 1562 | -80% |
| 175 | 1,089 | 1,678 | -35% |
| While Azure Database for MySQL latency rapidly increases as the number of threads grows, ScaleGrid MySQL steadily achieves low latency across all thread counts. On average, ScaleGrid for MySQL has 66% lower latency than Azure Database for MySQL for read-intensive workload scenarios. |
Balanced
Here reads and writes are roughly equal.
Throughput:

| Threads | ScaleGrid | Azure | ScaleGrid Improvement |
|---|---|---|---|
| 25 | 3,806 | 1,748 | 118% |
| 50 | 5,834 | 2,437 | 139% |
| 100 | 6,365 | 2,712 | 135% |
| 150 | 5,724 | 2,775 | 106% |
| 175 | 6,206 | 1,767 | 251% |
| On average, ScaleGrid improved the MySQL throughput by 150% over Azure Database for MySQL for balanced workloads, and is over 2x better across all number of threads. Azure Database maxed out at around 2,775 queries per second at 150 threads, while ScaleGrid achieved 5,724 queries per second for the same number of threads. |
Latency:

| Threads | ScaleGrid | Azure | ScaleGrid Improvement |
|---|---|---|---|
| 25 | 76 | 390 | -81% |
| 50 | 103 | 612 | -83% |
| 100 | 240 | 943 | -75% |
| 150 | 560 | 1,590 | -65% |
| 175 | 560 | 2,199 | -75% |
| We see another dramatic improvement in latency performance for balanced workloads, where ScaleGrid MySQL deployments are able to perform at less than one third the latency compared to Azure Database for MySQL. |
Write-intensive
Throughput:

| Threads | ScaleGrid | Azure | ScaleGrid Improvement |
|---|---|---|---|
| 25 | 3,327 | 826 | 303% |
| 50 | 5,003 | 1,154 | 334% |
| 100 | 5,180 | 1,476 | 251% |
| 150 | 4,310 | 1,651 | 161% |
| 175 | 4,071 | 1,643 | 148% |
| In our write-intensive scenario, we are able to see the largest performance improvement where ScaleGrid achieves up to 4x higher throughput compared to Azure Database. This is especially apparent in our low-thread scenarios, but even at 175 threads ScaleGrid still performs 2.5x better than Azure Database. |
Latency:

| Threads | ScaleGrid | Azure | ScaleGrid Improvement |
|---|---|---|---|
| 25 | 76 | 277 | -73% |
| 50 | 101 | 383 | -74% |
| 100 | 298 | 996 | -70% |
| 150 | 760 | 1,740 | -56% |
| 175 | 1,089 | 2,009 | -46% |
| ScaleGrid outperformed Azure Database again with an average of 64% lower latency across all number of threads for write-intensive workloads. |
Across all three scenarios the reports show higher throughput and lower latency for ScaleGrid deployments than for Azure Database for MySQL.
Benchmark configuration
The plans were chosen to be as close to equivalent as possible on both sides: differences are minor and the two configurations cost the same.
| ScaleGrid MySQL on Azure | Azure Database for MySQL | |
|---|---|---|
| Instance Type | Dedicated Large: Standard_Ds2_v2 2 cores | General Purpose: 2 cores |
| RAM | 7GB | 10GB (5GB Memory per vCore) |
| SSD | 128GB, Premium SSD disk, 500 IOPS | 167GB, up to 500 IOPS |
| Deployment Type | 2+1 Quorum with Semisynchronous replication | +1 Read Replica Asynchronous replication |
| Region | East US | East US |
| Support | Included | Standard plan ($100) |
| Estimated Monthly Price | $400 | $400 |
Sysbench settings:
| Configuration | Details |
|---|---|
| Tool | Sysbench version 1.0.20 |
| Host | Standard_Ds2_v2 2 cores (2 vcpus, 7GB memory) on East US region |
| # Tables | 100 |
| # Rows per table | 2,000,000 |
| Random numbers distribution | Special |
MySQL server settings:
| Configuration | Azure Scalegrid (Dedicated) | Azure DB for MySQL |
|---|---|---|
| SQL version | 5.7.25 | 5.7.27 |
| innodb_buffer_pool_size | 4G | 7.5G |
| innodb_log_file_size | 1G | 268M |
| innodb_io_capacity | 500 | 500 |
| innodb_io_capacity_max | 1000 | 1000 |
InnoDB log file size illustrates the gap between the two platforms. ScaleGrid lets you raise it to 1GB; on Azure Database the parameter cannot be modified and defaults to 268M. More broadly, ScaleGrid exposes advanced options for tuning MySQL configuration settings, while Azure Database leaves a number of parameters fixed at platform defaults. Microsoft documents the affected parameters in its MySQL limits page.



