What roles is flash used for, generally:
- Primary storage - when you always need blazing fast read performance. I think hadoop clusters and databases when I think flash primary storage.
- Caching - when you need a boost to traditional storage performance, especially when using SATA storage (although some use it against 10K RPM disk as well). This is very common for virtualization uses and is also to improve general performance of centralized storage.
Flash is used in 2 form factors:
- SSD (solid state disk) - replaces traditional disk in the form factor of a disk. This can be used locally or in a storage appliance separated from a a server.
- PCIe - bypassing SAS protocols and throughput limits, flash storage is accessible to your server's motherboard
There is one more dimension of flash storage use: where do you put it?
- Locally - put it right in a server
- Remotely - put it in a central storage appliance
Both form factors and roles can be involved with both locations of storage.
Flash is generally not so great at sequential writes. Dell is selling SSD storage and has a fascinating write up useful for thinking about flash in general, showing flash is generally not worth the money for sequential writes. As I think about databases and convergence, I think about database storage history. First we used to separate all different database uses for storage into separate physical disk. Then having a big pool of disk became more important. Now we're on the verge of separating out those uses again! But I digress...
- FusionIO - mostly used as caching PCIe local storage
- They did what every hardware startup wants to do - got past several hurdles to success! FusionIO lined up a first MAJOR customer (rumored to be Facebook) that helped them get to volume pricing, and then lined up an OEM agreement with a major manufacturer of servers (Dell). It clearly works quite well for many/most folks, but does NOT work well for some folks using it as primary storage for Oracle...
- Dell MD1220 with 8 SSD's - Local SSD primary storage
- Dell's write up mentioned above is interesting! 600GB usable storage with mirroring data protection.
- Tintri - A network appliance using non-PCIe storage as a cache
- this is via NFS, it is fast, low latency...
- Violin Memory - flash and RAM in an appliance hooked up via fiber channel or on the network via iSCSI
- Network Appliance - This appliance can use the PCIe-type approach as cache in Flashcache as well as the SSD approach.
- Pure Storage - Appliance using flash as primary storage over fiber channel