Turbo-Charge MySQL

HGST Flash Pools for MySQL – A Blockbuster SQL, Part II

In my previous blog post, I had discussed the advantages of MySQL databases, as well as potential complications that might arise during deployment, namely hardware failures and data protection. I had mentioned that I would elaborate on our new hardware/software solution called HGST Flash Pools for MySQL and how it helps mitigate some of the problems. So without further ado…

Pooling in the Resources

dolphinThis month, we introduced a new hardware/software solution called HGST Flash Pools for MySQL. Flash Pools utilizes HGST FlashMAX SSDs and Virident Space software for clustering and volume management providing three distinct advantages for scaling out MySQL environments:

1. Acceleration of IO and reduction of latency using SSDs and software

2. Replication using synchronous mirroring for faster recovery times and more granular recovery points

3. Consolidation of servers by 38% or more, driving new levels of TCO

 

Advantage # 1 – Acceleration

Flash accelerates MySQL dramatically. Our testing shows that compared to the MySQL Reference Architecture cited by Dell, a single FlashMAX II 1.1TB SSD in each Master and Slave can deliver more than 40 times, the performance of the Dell reference architecture using a mysqlslap-type workload. The results are shown below.

 

Master/Slave Replication HDD vs. Master/Slave Replication on Flash Pool on identically configured servers.
Master/Slave Replication HDD vs. Master/Slave Replication on Flash Pool on identically configured servers.

 

Advantage # 2 – Replication

Remember that MySQL replication is asynchronous. It runs “on top” of the server operating system as a scheduled task every few minutes. HGST Virident Space and FlashMAX leverage our unique device affinity using synchronous replication between FlashMAX devices. We instantly mirror every write and are significantly faster than the traditional MySQL approach. To prove this point, we used the identical servers running MySQL replication with FlashMAX SSDs vs. the same servers running Flash Pools replication. The result, Flash Pool replication is 60% faster with 38% fewer servers as shown in the chart below. Perhaps more importantly, with synchronous replication, you recover from the exact point where the Master fails, with zero data loss.

 

Master/Slave Replication on Flash vs. HGST MySQL Flash Pool Replication
Master/Slave Replication on Flash vs. HGST MySQL Flash Pool Replication

 

Advantage #3 – Consolidation

Based on this, we proved that a single FlashMAX II 1.1TB SSD with its MAX Mixed 4K block 70/30 Read/Write performance of 245,000 IOPS can easily handle both read and write traffic. This means that you no longer need Slaves to offload read traffic. Instead, we designed a scale-out MySQL architecture with 4 Master servers using shared and mirrored Space volumes. We consolidate the Slaves into a single “Multi-Function Server” that can mount any of the Master volumes for recovery, and provide scripts to take snapshots of Master volumes for other purposes such as analytics or testing.

Here’s a simple diagram to illustrate the Flash Pools approach:

 

before_after

 

On the left, you can see the traditional Master/Slave sharding and replication. Like we talked about, you scale out in increments of 2 servers at a time. On the right, you see multiple Masters and a single “Multi-Function” server. Most notably, on the left we have 8 servers, and on the right, we have just 5 – a consolidation of 38%. We could go even more, up to 16:9 consolidation, but for this blog, we will keep it simple. (By the way, the Multi-Function Server does not require an SSD as Space provides a “Target Mode Driver” allowing up to 64 hosts access to the Flash Pool).

Now let’s do a little math for the CFOs out there.

Capex

From a capital expense perspective, we use the exact same servers, OS, and MySQL license fees. On top is the bill of materials for a traditional 8-node MySQL Master/Slave configuration. On the bottom is the HGST Flash Pools Bill of Materials. Fewer servers, fewer licenses, and a $60,000 savings.

Traditional Server Approach

Flash Pools Server Approach

Opex

For operating expenses, the traditional approach uses more servers and 8 HDDs/server, so overall, the traditional approach is almost $24,000 more expensive to operate over a 5-year period as you can see below:

 

Traditional vs. Flash Pools

And the answer is

Over a 5-year period, HGST Flash Pools can save more than $85,000 and delivers a 60% performance improvement compared to the traditional Master/Slave MySQL deployment. Now add a zero or two and take that to large-scale online retailers with thousands of servers…

Hopefully this blog has given you insight into how HGST can play a critical role in your holiday online shopping experience. If you like what you heard, tweet this for the holiday season:

#HGSTFlashPools. Accelerate, Replicate and Consolidate #MySQL databases.

 

About Walter Hinton

avatarWalter Hinton is Sr. Global Director for Marketing at Western Digital Corporation. He brings over 25 years of experience in storage, networking including roles in Product Management at McDATA, Chief Strategist for StorageTek and CTO of ManagedStorage International.

2 thoughts on “HGST Flash Pools for MySQL – A Blockbuster SQL, Part II”

  1. Hi Walter, interesting post. Can you provide any more details on the hardware setup for the storage piece of your consolidated infrastructure (“4 masters using shared and mirrored Space volumes”). Is the sync mechanism sort of like a drdb solution for the FlashMAX drives? Was any modification to mySQL’s setup required for this approach? Since the 5’th multi-purpose server didn’t have the FlashMAX drive, was the same sync software used to the R620s normal (spinning?) SSDs?

  2. Hi Steve, good question. Hardware setup was simply FlashMAX II (could be any capacity option) on Dell R620 per the reference architecture cited. Then we layer HGST Space Software onto each server. Space enables clustering of the FlashMAX devices at the LUN or namespace level, then sets up mirrors between the volumes. It is faster than DRBD, by about 50% and uses RDMA over Infiniband or a hybrid of RDMA over Ethernet. Fully synchronous mirroring, so copy on write. No modification to MySQL Masters required. This is not a Gallera Master/Master Cluster. This is a shared flash volume pool that reduces the number of slaves required. Our software also features a ‘target mode driver’ that allows the multi-purpose sever to access the flash pool with our listener software and mount the volume of a Master upon failure without requiring a FlashMAX or any SSD. Of course, you could also use the same server to access any other Master volume to do ETL, Backup, Analytics, etc.

Comments are closed.