At SNW Europe this week I took some time to talk to Emulex about their OneCommand product. It’s been upgraded to version 2.0, which will be the subject of a post for another day, once I’ve had a chance to install and review it.
I also discussed the core of Emulex’s business, namely HBAs (Host Bus Adaptors) and it’s time for a little speculation.
We’re all familiar with the way HBAs work; they bridge the internal bus to external devices, the most obvious example being Fibre Channel. Most recently companies such as Fusion-IO have moved storage closer to the CPU by putting flash storage directly onto the PCIe bus. However there are issues with using PCIe flash cards, most obviously the fact that the data is tied to the server in which the card is stored. If the server fails then data recovery becomes a protracted issue involving physical intervention within the hardware. So, although PCIe flash cards are good for handling write data, they present a consistency problem in ensuring writes are stored elsewhere in case of hardware failure.
With a long history in developing HBAs, Emulex are well placed to exploit this weakness and create a new type of device, a hybrid between the HBA and the flash card.
Imagine a device that looks and functions like a traditional HBA, but also has flash storage. It would be possible to accelerate I/O destined for spinning disks by using the flash as both a read and write cache. Now I/O performance improves to the benefit of flash speeds, yet can be destaged to external storage for additional security and replication elsewhere. All this gets handled by the HBA, independently of the host and with processing offload.
There would be obvious issues with the synchronicity of data writes, especially with shared LUNs (although that could be overcome with clever use of SCSI reserves) and multipathing. However, there are other possibilities; random I/O could be staged on flash and written to physical disk to reduce the randomness and improve throughput. I/O packets could be analysed for data traffic management (to improve the way OneCommand works). The HBA could also be used as a physical data splitter, to enable CDP without the delay penalty of implementation in the O/S or with latency.
All these ideas are pure speculation and Emulex may or may not be working on this technology. My bet is that they are working on something, as probably are Qlogic and Brocade.
The most interesting thing is what we’ll see with PCIe flash cards. This market only had one main contender – Fusion-IO. However as we saw with STEC, who owned the enterprise SSD market, things change. There will very quickly be many competitors to Fusion-IO and there will need to be some advancement of the technology to keep ahead of others in the market. Hybrid cards may offer just that leap forward.