I can see the temptation in combining two good things. But the devil is in the details. Its always easy to see the isolated benefits of two given products, but when combining them, in a zeal of synthesis, often something is lost. Perhaps what once was a prime benefit has been tempered in such a way to make the unsee deficiencies glaring in relief. Maybe it simply stands as a pale imitation of its inspiration, mocking its creator in a diminished existence. Perhaps not overtly awful in a conventional sense, but cobbled like Frankenstein’s monster into the grotesque. I have created a diagram to illustrate the complete spectrum of possible outcomes when combining two good things:
In the upper left, we have the worst case scenario: the Subaru Baja. In the noble attempt to combine the everyday commuting practicality of a sedan with the cargo capacity and off roading capabilities of a truck, Subaru engineered what can only be described as a Croc on wheels. In the lower left, we see a partially diminished product. The classic Tootsie Pop tarnishes the chocolatey simplicity of the Tootsie Roll with shards of overly saccharine lollipop. Essentially the Tootsie Pop is a good product until there is more Tootsie than Pop, at which point it becomes a compromised Tootsie Roll. Similarly macaroni and cheese elevates the rather banal pasta experience of the former, but in doing so diminishes the inherent delectability of the latter. I would much rather have macaroni and cheese than simply macaroni, but the inverse cannot always be said. Finally in the lower right, we have the pinnacle of the combined approach, with a flawless meld of shampoo and conditioner in Head & Shoulders.
So why this digression into convoluted nature of design synthesis? I saw a storage solution from Igneous Systems, and they are attempting just such a process.
I saw Igneous Systems present at Tech Field Day earlier this month. Their offering is a bit of an odd mix at first. They want to offer the benefits of Infrastructure as a Service (IaaS) for data that cannot be stored in the cloud. This seemed counter intuitive, after all, what else would you use the cloud for? But Igneous has a clever solution.
So who is this for? Well Igneous proposes it for anyone that wants the pay as you go model of the public cloud, but cannot or will not put their data there. They are particularly thinking of financial firms, who have either legal or liability restrictions about keeping data off-site. They’re also interested in targeting connected vehicle vendors, who will be dealing with ever increasing amounts of machine generated data, much of which could be proprietary, or at least require extensive analysis to leverage properly. It’s an interesting strategy. I don’t know what the market size is for those two sectors, but they will almost certainly require large scale deployments.
Where Igneous makes this pitch really interesting is their implementation. There are a number of solutions out there that could be used to roll this “local IaaS” model they’re selling, DriveScale’s disaggregated storage solution comes to mind for example. But what differentiates Igneous is they’ve developed an end-to-end solution from the ground up specifically for this purpose. Their presentation showed this wasn’t something they thought up on a whim, or a good idea waiting on fully realized execution. They’ve done all the architectural legwork to provide a robust product.
Hardware has always been my gateway into understanding technology. I’ll probably never be able to code (unless you count “Hello World” in Python), so maybe it’s simply that I understand hardware a little better. Whatever the reason, Igneous led their product deep dive with how the developed their hardware, so it roped me right in. They wanted to remove I/O bottlenecks that compute puts on storage, as well as lessen the inherently high fault domain in a typical array. After a couple prototypes, they came upon a novel solution: put compute on all the drives! They call this a RatioPerfect Architecture, and while my perfect ratio might include a space between my buzzwords, I really like the approach. Instead of two SAS cards feeding into an extremely powerful Xeon processor, each drive in the Igneous array is equipped with a 32-bit ARM board with full gigabit Ethernet access. This inverses the fault domain setup of a traditional array, any drive or CPU failure will only effect a single drive. Igneous designed their own custom data path to account for this, so that the impact on performance and data retention upon failure should be minimal.
The one downside to this local storage IaaS seems to be lag on expandability. If you’re using S3 or Azure, you’ve basically got instantly expandable storage, depending on your budget. With Igneous, you get their 212TB storage in a block. If you run out, you wait….one to two weeks. At first blush, this seems a little steep. But again, consider their target market. If your company can’t move data directly to the cloud, the benefits of S3 storage are academic. Igneous also showed off some robust provisioning resources to make sure you know when you need to order more storage as well, so I don’t think the lag should be a major issues, but one to certainly be noted.
So what exactly is the cloud component of Igneous? For starters, the entire appliance is managed, from the cloud, by Igneous. This is meant to be a set it and forget it situation, plug in the networking and Igneous takes it from there. With a straight face they told us it should take all of ten minutes to get up and running. All updates are handled directly by them. This may be anathema to a lot of admins, but as with everything else they presented, Igneous took great pains to show they did their homework. All updates are rolled out granularly, progressively, and are non-destructive. They designed the system to quickly roll out new features and not to break your existing setup.
This is topped off by their move away from viewing their solution as system management, but using the cloud to emphasize their devices as a cloud managed fleet. With that in mind, they are using the analytics gathered from their entire fleet of devices to improve performance and reliability across their entire service. They particularly emphasized the benefits this could have for future product configurations, as well as monitor for potential systemic problems, like issues with a particular set of drives from an OEM.
So going back to my original point, does Igneous succeed at their synthesis? Conceptually it seems like they did. A lot of their cloud approach does depend on growing their install base, which for a company newly out of stealth is not exactly considerable at this point. But I love when a company pulls back the curtain on their process, and Igneous Systems showed their work. Whether the market they’re targeting wants an end-to-end solution like Igneous is offering is another question. Still, Igneous is a lot closer to Head & Shoulders than a Baja.