For businesses to remain competitive in today’s landscape, application performance matters. Data needs to be instantly accessible for real-time processing, analytics and insights. To address this need, enterprise customers are actively looking to add flash into their storage infrastructure. Driven by accelerated demand and backed by customer endorsements, CIOs are quickly realising Flash is well-suited for performance-intensive applications including databases, data warehouse and big data analytics.
While there is much talk about All-Flash and Hybrid-Flash Storage Arrays, Server-Side Flash, PCIe in particular, is taking off. Gartner Group projects that more than 1 million of these units will be shipped in 2015. And as PCIe prices move toward $1/GB, Gartner expects that nearly 50% of all SSD unit shipments to data centers will be PCIe by 2018.
Initially adopted by HyperScale customers leveraging horizontal scale-out architectures and NoSQL databases, the price/performance advantages of PCIe Flash have now become mainstream. Added to this, new Software-Defined Storage capabilities are enabling enterprise use cases that previously required external, higher-latency and higher-cost SAN-based approaches.
Caching out; what’s at stake
The most popular use of PCIe Flash is in caching configurations in front of an existing SAN. This approach is completely transparent to the existing SAN and drives latencies down to tens of microseconds from milliseconds. It can also add many thousands of IOPs to an existing infrastructure.
This use case is widely deployed for databases like Microsoft SQL Server where a single PCIe device and caching software can be purchased for less than $10,000. This delivers dramatic performance improvements to a SAN that might require five times as much expense to achieve the same IOPs, but will never be able to achieve the same latency characteristics.
In database environments, latency means wait times, which equates to user response times or fewer transactions per second. Where time is money, PCIe Flash with caching software is a quick and easy fix.
Sharing the wealth
Many enterprise databases require shared storage access. Good examples of this are single instance Oracle Databases and Oracle Real Application Clusters (RAC). RAC uses Oracle’s Automatic Storage Management (ASM) as the volume manager for the database. ASM uses disk groups to store datafiles and enables flexible server-based mirroring options.
To date, the only way that Oracle ASM could use Flash was inside of a SAN array. Again, latency and cost can make an Oracle database on a SAN very expensive, especially as the environment grows and more IOPs are required for workload headroom.
Software-Defined Storage can provide the ability for PCIe Flash to be accessed and managed as ASM disk groups directly within the database server. ASM can aggregate as much PCIe Flash as is required for the datastore. Since the storage is directly on the Server bus, microsecond latency (immeasurable by Oracle’s Calibrate_IO tool) can be achieved with an All-Flash tier for the database.
Since ASM is aware of all storage, it can also migrate data to capacity storage on the SAN to optimise price/performance. A side benefit of the Shared Flash Access is that it improves server core utilisation, which can reduce Oracle license fees or extend the life of exiting licenses.
Clustering and server consolidation
For databases like MySQL, the traditional approach is to deploy servers in Master/Slave pairs. The Master is part of a larger cluster where database rows are horizontally ‘sharded’ across multiple masters to enable scale-out. Slaves are used for off-load of read traffic and act as fail-over nodes in the event that a Master server crashes or data gets corrupted.
PCIe Flash is so fast and so low in latency that a single device can handle both write and read traffic on the Master Server. Since database corruption and Server crashes are rare, many Slaves sit idle burning power, taking up space and requiring cooling. This ‘server sprawl’ can be easily addressed with PCIe Flash devices and Server-Side Flash Clustering Software.
> See also: The top three myths about flash storage debunked
Clustering Software allows for multiple Masters to aggregate all of their Flash resources into a single pool, then for each Master to be assigned a volume from that pool. A single Slave or ‘Multi-Function Server’ equipped with a small amount of open source software acts as a ‘listener’. When a Master fails, the Multi-Function Server mounts the volume and continues to operate with no downtime and since all Masters are replicating to the pool synchronously, there is no loss of data when the fail-over occurs.
This is especially important as native MySQL replication is asynchronous, so some number of transactions will be lost. The result of this simple, yet elegant change to physical MySQL deployments is a reduction in server count that can range from 38% to 70% depending upon the size of the cluster.
Future gazing; what’s next
In these mission-critical enterprise environments, latency means wait times, which equates to user response times or fewer transactions per second. Where time is money, Flash is an increasingly attractive proposition. This means the standard for efficiency, performance and scalability will be under close scrutiny. Businesses that want to succeed will need to extract greater value from the data they own.
Hardware and software solutions must help CIOs strike that balance among performance, complexity and cost. This means focusing on peak application acceleration with an all-SSD environment, improving lagging performance by tiering or using caching to leverage combined HDD and flash environments.
Sourced from Walter Hinton, HGST