At the request of one of our readers, we ran a few benchmarks with the Intel Optane Memory 16GB and 32GB drives as WordPress and vBulletin database drives. The reason was simple. If you are building a dedicated server for web hosting, since your current VPS/ cloud provider is not giving you the IOPS you need, then inexpensive Optane Memory SSDs may provide a low-cost alternative. The new Optane memory SSDs are big enough for the databases (and VMs housing them) behind 99%+ of WordPress installations and forums. While write endurance is rated at 100GB/ day, when you have a sub-1GB database, you are not going to hit 100GB/ day of database drive writes.
The particular reader sent us a top 30,000 worldwide WordPress database dump and a vBulletin forum database (user profile data sanitized) for testing. If we see solid performance, this can be a game changer with two sub $80 drives mirrored. If you can save money on the drives, you can spend more on RAM or an additional system. Indeed, if you were using a Xeon E3-1200 V6 platform or Xeon D-1521 for your database server, the difference between spending $150 on storage versus $1200 can very well be the second server.
For these tests, we are using an Intel Xeon D-1541 based systems, the Supermicro X10SDV-F. Each machine is outfitted with 4x 16GB DDR4-2133MHz RDIMMs. Each machine also had a Mellanox ConnectX-3 Pro EN 40GbE card. All NAND NVMe drives were tested using an m.2 adapter. Here were the drives we had in our test sample including their form factor:
- Intel DC S3610 480GB
- Kingston E100 400GB
- Samsung PM863 960GB
- NAND NVMe
- Intel 750 800GB
- Intel DC P3700 400GB
- Samsung XS1715 800GB
- Optane NVMe
- Intel Optane Memory 16GB
- Intel Optane Memory 32GB
For this test, we are using Debian Stretch as our base OS, KVM as the hypervisor, and each zpool is version 28. Our MariaDB version is 10.1. We are also using thin provisioning to see the impact each drive will have during out tests. With a base VM image, we can quickly copy the prepared VM image for each test repetition and let it expand. Thin provisioning is common in WordPress and vBulletin stacks since the performance penalty is minor and the ability to quickly migrate VMs is enhanced by smaller disk footprints.
Our test database dump is 760MB DB .sql file that combines a ~100,000 post vBulletin message board DB and a ~2000 post/ page WordPress DB into a single database. We see a number of dedicated hardware solutions where forums and WordPress databases are housed on dedicated VMs/ server hardware, then the front ends are separate. Normally they would be separate databases even if running on the same server, however, we combined them for a longer import/ export execution. This is real-world data, not ultra-clean test data. We are using a single Ubuntu 17.04 VM to house the database server image to conserve space. We designed this test specifically with the 16GB Optane SSD in mind.
The drives themselves vary quite a bit. We are using the Kingston E100 as it utilized the Sandforce controller with excessive overprovisioning (800GB NAND on the 400GB drive). This is a workload where the compression will help. The other drives we are using generally can be found for $400-700. The Optane drives run $40-80. This is essentially DB hosting on drives that are 10% of what we would be accustomed to.
We did not use any PLP enabled M.2 drives because we have only found 22110 form factor PLP M.2 NVMe drives. Our test platform, and many others, only support 2280 which is a major selling point for the drives.
WordPress and vBulletin Database Import/ Export
For this test, we are doing an extremely common function. We are using mysqldump to dump a database. If you want the most common way to backup a WordPress or vBulletin database, this is it. Most scripts that webmasters use to backup their databases use this function. We also timed the import times of the same database just to see if there was an impact on storage. We are also showing thin provisioned performance alongside performance when the ZFS storage already has the required capacity from previous runs.
WordPress and vBulletin Database Export (Backup) Performance
Scripts that do this automatically will often run hourly or even every 15 minutes. The Operation is generally quick and the faster the storage you have, the less of an impact on overall performance the operation is.
As you can see, using mysqldump all of the drives completed the tasks relatively quickly. We were intrigued by the fact that the Optane drives had the largest impact with the thin provisioned VM disk on ZFS.
WordPress and vBulletin Database Import (Restore) Performance
What happens when you want to migrate, or in the worst case, when you need to restore a database? If you are restoring from backups, every second can feel like an eternity. We tested the drives in this scenario as well:
This is a much more expensive operation. You can clearly see the impact of thin provision versus running the tests again with the disk space already provisioned. That 32GB Intel Optane drive is keeping pace with $600+ NVMe SSDs that are using 25W, albeit with much more capacity.
WordPress and vBulletin Database Full Backup Performance
We are going to cover two common ways to backup a database VM server. First, we are going to use a common mysqldump script which exports the database then pushes it over the network. Second, we are going to do a raw copy of the VM drive over the network to a second server. We are not covering ZFS send/ receive of incremental snapshots since that tends to be a fairly inexpensive operation.
WordPress and vBulletin Database Full Backup Script Performance
Here we are doing a two-step script, and perhaps one of the most common. We are dumping the database and then copying the resulting 750MB file to a remote machine. We are using the lab’s 40GbE network and a RAM disk target to limit the network and target impacts on performance.
The two Optane drives performed very well here. This was slightly surprising as we expected them to be well below the speed of the higher cost NVMe drives. One of the major factors here was that the Intel Optane drives were able to move the dump file over the network very quickly compared to SATA SSDs.
WordPress and vBulletin Database Server Disk Copy Performance
In this test, we are simply pushing bits from the drive over the network to a target server. This is an operation that many people do regularly when they clone machines for development servers. We know some folks have plenty of storage so we just wanted to see the impact of this method. Our total disk snapshot that we used was under 10GB.
When we move to a longer transfer, the throughput of the NVMe SSDs is on display and you can see that the high-end Intel and Samsung NVMe drives simply dominate. On the other hand, SATA drives are under load for almost twice what that Optane drives are. During these copy operations, writes to the database will be very slow due to the above.
What About DB Application Performance?
Astute readers will notice we are not publishing application performance here. When it comes to WordPress and forum performance the Intel Optane Memory performs surprisingly well for reads and fairly well for writes compared to SATA SSDs. This will be a topic for another day.
One item to keep in mind is that using less expensive drives also means you can use more RAM which will have a larger impact on performance. Looking at a similarly priced drive, (e.g. a DC S3520) that has PLP and the Optane drive will crush the low-cost SATA NAND device. Low capacity NVMe SSDs with PLP, and that fit in 2280 drive slots are not generally available.
We will have these benchmarks at a later date, but our forum benchmarks are going to take some time to develop, and WordPress is so well cached these days that database performance has very little real-world impact aside from heavy uses e.g. mysqldump scripts.
The Ugly Spec: Reliability
If you did want to try using these low-cost drives for database servers reliability should be a concern. The UBER rate of the Optane Memory drives is 1 in 10^15. The Intel 750 is 1 in 10^16. The other Intel SSDs are all 1 in 10^17 rated. That is an enormous delta. Beyond this, while the typical enterprise SSD will have 2M+ hour MTBF ratings, Intel Optane Memory m.2 consumer cards are only at 1.6M hour.
Our advice, if you are using these for database storage, use them liberally, at minimum mirrored. You can run benchmarks but if they fail in the field and you have to replace them, that is not a good solution.
If you are looking for a single mirrored set of Optane SSDs for a high-value database server, get the Intel DC P4800X. At the same time, with a $1500+ entry price, that makes little sense for web hosting and we know we have readers interested in lower-cost alternatives.
Also, if you do decide to try this, get the 32GB drives. Having the second Optane package present improves performance. In terms of capacity, our VM disk ballooned to 9-10GB from all of the database copies, which gets very close to leaving only the recommended reserved space for ZFS.
This test was specifically targeting WordPress and lower volume vBulletin servers. While most fio, sysbench, and Iometer database testing is largely synthetic, we are using real-world databases and commonly used tools.