Some Thoughts on Why We Want To Run Databases on Flash

There is a nice article by Ashminder Ubhi, a Database Specialist at Violin Memory, about Three Real Reasons to Run Database Applications on Flash Storage.  Very good reading and shows why the flash array and PCIe card markets find databases as one of the big beneficiaries of flash. A long while back, I posted this little cartoon to highlight the benefits :

You can see the battle lines drawn over who runs your Oracle databases –

HDS

A while back I wrote a post on the topic – aimed at highlighting storage features over simply IOPS  :

digitdb

Today, from both a cost, performance and reliability there are a number of good choices for running your database on.   One is Nimbus Data Gemini series.

You can see the new memory architecture with parallelism built into the design (such as that from Nimbus Data) :

pma

In addition, Gemini has a distributed cache architecture which actually places the write cache in the drives thereby eliminating the need for high speed interconnects and cache mirroring.

Another aspect is hardware-offloaded flash management.  Each Enterprise Flash Drive features up to 32 NAND chips managed by a dedicated flash processor. Flash management is offloaded to the embedded processor.

dca

The array can easily be serviced from the front and back (no sliding it all the way out of the rack and taking off the top creating increasing risks associated with servicing), non-disruptive upgrades are a feature, replication, dedup, NFS and host of other features.  So as we look at a smaller, generic  Exadata alternative which we can grow – I would aim at something like this :

exanimbus

This isn’t the only alternative, in my previous post I used Pure Storage which has a number of excellent enterprise features. A very good case can also be made for other flash arrays like Hitachi’s.  However, the new Gemini array really offers some excellent modern design aspects that represent best-of-breed of the new flash storage arrays.

protocolsFor starters, the new Gemini arrays offer a smaller physical footprint with extremely high network performance – 16 Gbps Fiber Channel and for those that like Infiniband – it offers 56 Gbps Infiniband. It also offers 10 and 40 Gbps Ethernet. Gemini arrays offer software-programmable ports, allowing customers to switch between multiple storage protocols without changing the system controller itself. They are available in both SFP+ (Gemini F400) and QSFP+ (Gemini F600) versions.  It is possible to toggle between Ethernet and Fibre Channel connectivity, as well as Ethernet and Infiniband connectivity, via software. Also allowing simultaneous use of two protocols. This  design extends the value of the systems and and allows seamless repurposing of systems as networking requirements change.  In addition, CIFS/SMB and storageservicesNFS are both offered.  For some very large companies that use NFS  in conjunction with their Oracle databases – it is available natively.  Storage features are integral part of all this.  Gemini offers a full data reduction suite, from compression, thin provisioning, deduplication and  encryption as well as high availability, snapshots, cloning and replication. This is a modern array operating environment that offers the suite of feature desired by storage administrators.  Included in this is non-disruptive upgrades that allow storage administrators to perform a software upgrade of  a live, in-production system.  In addition, the array provides full hot-swap-everything philosophy.  There is complete redundancy of components that allow administrators to work on the system and change a failed component while it is running.

Finally, Gemini offers two million IOPS in a small array. This provides the IOPS needed by both storage features like de-duplication, NFS, replication, etc. There is a nice balance in both hardware and software to create a unified architecture.

All of these features represent a modern design needed to run a database – whether it’s Oracle, SQL Server, Sybase or MySQL to name a few.  In a future post we will discuss database performance running on flash – how to leverage deduplication, compression and replication in various use-cases.


gotostorageGo to more posts on storage and flash storage at http://digitalcld.com/cld/category/storage.


One thought on “Some Thoughts on Why We Want To Run Databases on Flash

  1. Pingback: Recommended Viewing : The Netflix Cloud and Cassandra | Architecting Beyond Twenty Fourteen

Comments are closed.