DEV Community

ScaleGrid for ScaleGrid

Posted on

Best MySQL DigitalOcean Performance – ScaleGrid vs. DigitalOcean Managed Databases


Best MySQL DigitalOcean Performance – ScaleGrid vs. DigitalOcean Managed Databases

MySQL is the all-time number one open source database in the world, and a staple in RDBMS space. DigitalOcean is quickly building its reputation as the developers cloud by providing an affordable, flexible and easy to use cloud platform for developers to work with. MySQL on DigitalOcean is a natural fit, but what’s the best way to deploy your cloud database? In this post, we are going to compare the top two providers, DigitalOcean Managed Databases for MySQL vs. ScaleGrid MySQL hosting on DigitalOcean.

At a glance - TLDR

Compare Throughput

ScaleGrid averages almost 40% higher throughput over DigitalOcean for MySQL, with up to 46% higher throughput in write-intensive workloads. Read now

Compare Latency

On average, ScaleGrid achieves almost 30% lower latency over DigitalOcean for the same deployment configurations. Read now

Compare Pricing

ScaleGrid provides 30% more storage on average vs. DigitalOcean for MySQL at the same affordable price. Read now

MySQL DigitalOcean Performance Benchmark

In this benchmark, we compare equivalent plan sizes between ScaleGrid MySQL on DigitalOcean and DigitalOcean Managed Databases for MySQL. We are going to use a common, popular plan size using the below configurations for this performance benchmark:

Comparison Overview

ScaleGrid DigitalOcean
Instance Type Medium: 4 vCPUs Medium: 4 vCPUs
MySQL Version 8.0.20 8.0.20
RAM 8GB 8GB
SSD 140GB 115GB
Deployment Type Standalone Standalone
Region SF03 SF03
Support Included Business-level support included with account sizes over $500/month
Monthly Price $120 $120

As you can see above, ScaleGrid and DigitalOcean offer the same plan configurations across this plan size, apart from SSD where ScaleGrid provides over 20% more storage for the same price.

To ensure the most accurate results in our performance tests, we run the benchmark four times for each comparison to find the average performance across throughput and latency over read-intensive workloads, balanced workloads, and write-intensive workloads.

Throughput

In this benchmark, we measure MySQL throughput in terms of queries per second (QPS) to measure our query efficiency. To quickly summarize the results, we display read-intensive, write-intensive and balanced workload averages below for 150 threads for ScaleGrid vs. DigitalOcean MySQL:

ScaleGrid MySQL vs DigitalOcean Managed Databases - Throughput Performance Graph

For the common 150 thread comparison, ScaleGrid averages almost 40% higher throughput over DigitalOcean for MySQL, with up to 46% higher throughput in write-intensive workloads.

Read-Intensive Throughput Benchmark

Client Threads ScaleGrid DigitalOcean ScaleGrid Improvement
25 10,576 7,268 45.5%
50 12,374 8,598 43.9%
100 12,984 9,215 40.9%
150 12,845 9,590 33.9%
175 13,247 9,720 36.3%
200 12,916 9,677 33.5%

For read-intensive workloads, ScaleGrid for MySQL averages 39% higher throughput over DigitalOcean Managed Databases across all thread counts.

Balanced Workload Throughput Benchmark

Client Threads ScaleGrid DigitalOcean ScaleGrid Improvement
25 7,915 6,415 23.4%
50 9,725 7,613 27.7%
100 11,106 8,512 30.5%
150 11,936 8,552 39.6%
175 12,287 8,447 45.5%
200 12,507 8,579 45.8%

For balanced workloads, ScaleGrid for MySQL averages 35.4% higher throughput over DigitalOcean Managed Databases across all thread counts. The greatest performance improvement can be seen in the higher thread count rows of 175 and 200 threads where ScaleGrid achieves over 45% higher throughput.

Write-Intensive Throughput Benchmark

Client Threads ScaleGrid DigitalOcean ScaleGrid Improvement
25 6,595 5,353 23.2%
50 7,781 6,384 21.9%
100 9,268 7,132 29.9%
150 10,409 7,124 46.1%
175 10,338 7,075 46.1%
200 10,503 7,176 46.4%

For write-intensive workloads, ScaleGrid for MySQL averages 35.6% higher throughput over DigitalOcean Managed Databases across all thread counts. As you can see from the above table, ScaleGrid achieves over a 46% higher throughput in thread counts over 150 threads over DigitalOcean.

Latency

Now that we’ve compared throughput performance, let’s take a look at ScaleGrid vs. DigitalOcean latency for MySQL. We measure latency in ms 95th Percentile latency, and again compare across read-intensive, write-intensive and balanced workloads.

ScaleGrid MySQL vs DigitalOcean Managed Databases - Latency Performance Graph

In the above chart, we compare ScaleGrid vs. DigitalOcean MySQL latency across the common workloads for 150 threads, and see that on average, ScaleGrid achieves almost 30% lower latency over DigitalOcean for the same deployment configurations.

Now let’s take a look at the latency across different thread counts for read-intensive, balanced workload, and write-intensive scenarios.

Read-Intensive Latency Benchmark

Client Threads ScaleGrid DigitalOcean ScaleGrid Improvement
25 61 92 -33.8%
50 112 152 -26.4%
100 213 279 -23.6%
150 336 419 -19.9%
175 388 496 -21.8%
200 456 594 -23.2%

On average, ScaleGrid for MySQL achieved a 24.8% lower latency over DigitalOcean Managed Databases from read-intensive scenarios across all thread counts.

Balanced Workload Latency Benchmark

Client Threads ScaleGrid DigitalOcean ScaleGrid Improvement
25 39 53 -26.3%
50 67 87 -23.6%
100 117 158 -25.7%
150 170 246 -30.8%
175 197 300 -34.3%
200 222 342 -35.1%

On average, ScaleGrid for MySQL achieved a 29.3% lower latency over DigitalOcean Managed Databases from balanced workload scenarios across all thread counts. Most notably, the 175 and 200 thread scenarios latency were reduced by over a third at ScaleGrid.

If you're also deploying PostgreSQL, and interested to see how these two providers compare across throughput and latency, check out our Comparing PostgreSQL DigitalOcean Performance & Pricing – ScaleGrid vs. DigitalOcean Managed Databases post

Write-Intensive Latency Benchmark

Client Threads ScaleGrid DigitalOcean ScaleGrid Improvement
25 45 55 -17.5%
50 74 93 -20.9%
100 119 166 -28.5%
150 164 261 -37.4%
175 192 311 -38.1%
200 219 359 -38.9%

On average, ScaleGrid for MySQL achieved a 29.3% lower latency over DigitalOcean Managed Databases from write-intensive workloads across all thread counts. In particular, scenarios with 150 threads or higher achieved over 37% lower latency at ScaleGrid compared to DigitalOcean.

MySQL Benchmark Setup

Here is a breakdown of the benchmark configurations we used to compare MySQL deployments at ScaleGrid and DigitalOcean.

Sysbench Configuration

Configuration Details
Tool Sysbench version 1.0.20
Host Medium (4 vCPUs, 8GB RAM) SF03 region
# Tables 100
# Rows per table 2,000,000
# Threads 25-200
Random numbers distribution Uniform

We used two DigitalOcean Droplets to benchmark each instance simultaneously.

MySQL Parameters

Configuration ScaleGrid DigitalOcean
MySQL Version 8.0.20 8.0.20
innodb_buffer_pool_size 5GB 3.6GB
innodb_log_file_size 1 2.2
Innodb_io_capacity 3,000 200
innodb_io_capacity_max 6,000 2000
binlog_group_commit_sync_delay 0 0

DigitalOcean does not allow you to customize your MySQL configurations, which is why they are limited to the default values displayed here. At ScaleGrid, you can customize your MySQL configurations to optimize your deployment for your unique use case.

Read-Intensive Workload

80% reads and 20% writes, with 12 reads and 3 writes per transaction.

Balanced Workload

50% reads and 50% writes, running 3 selects, 1 insert, 1 update and 1 delete as part of each transaction.

Write-Intensive Workload

20% reads and 80% writes, with 4 writes and 1 read for every transaction.

MySQL on DigitalOcean Pricing

Pricing is of course one of the most significant considerations when it comes to making an infrastructure investment. Fortunately, just as we outlined above, ScaleGrid pricing is the same as DigitalOcean’s for MySQL when it comes to RAM and vCPUs across standalone, 2-node and 3-node deployments:

ScaleGrid MySQL vs DigitalOcean Managed Databases - Pricing Chart

While pricing is the same, ScaleGrid also offers, on average, 30% more storage for the same price as DigitalOcean, and as we discovered above also provides significantly higher performance. Both providers also offer support for PostgreSQL and Redis at the same price, and ScaleGrid is the only DBaaS to offer support for MongoDB® database on DigitalOcean.

ScaleGrid also offers a Nano plan size with 1GB of RAM, 1 core, and 18GB of storage for only $10/month. This is a great affordable plan for developer projects. Additionally, ScaleGrid offers a Startup Program where early-stage companies can get 50% off their MySQL hosting on DigitalOcean for up to 12 months.

Features for MySQL DigitalOcean

Both ScaleGrid and DigitalOcean offer the basic DBaaS features, like scaling, restores, and alerts that we’ve come to expect from a managed database provider. But, as any DBA knows, there’s much more to managing a deployment than the basics. Let’s take a look at some of the advanced MySQL features offered between ScaleGrid and DigitalOcean:

ScaleGrid PostgreSQL DigitalOcean PostgreSQL
Supported MySQL Versions 5.6.x, 5.7.x, 8.0.x 8.0.x
MySQL Super User Access Yes No
Replication Options Semisynchronous & Asynchronous Asynchronous
MySQL Configuration Management & Tuning Yes No
On-Demand Slow Query Analysis Yes No
24/7 Support Included Yes Business support only available for accounts over $500/month

These are just a few of the advanced MySQL management features. To compare the full list, check out the ScaleGrid vs. DigitalOcean MySQL page.

Top comments (0)