Briefing Update

Taking Storage Optimization to the Next Level With Enmotus

This is part of a continuing series of briefing reports with solution providers. It is not intended to be a comprehensive product review, but rather an overview of what the vendor brings to the market, and a snapshot of their value proposition at the time ActualTech Media was briefed.

Consider the series of questions that many storage admins ask themselves on a regular basis:

  • What’s my workload breakdown?
  • What’s my workload mix?
  • What are the peak IOPS being driven by those workloads?
  • How much flash do I really need to support all of these needs?
  • Is there a non-disruptive way that I can ensure that I have the performance I need when I need it?

Of course, an easy answer to the last question is to respond with, “Just go all flash!” but that can become expensive for many companies. Making best use of storage is a never-ending challenge for enterprises. Perhaps the biggest hurdles to perfecting storage utilization are a lack of insight into workloads and a lack of understanding of the real needs of those workloads.  The answers to those questions has a significant bottom-line effect for a business, since an important part of running an efficient infrastructure involves proper usage of storage.

One company that hopes to provide those answers is Enmotus.  Enmotus was founded in 2010 and is based in Aliso Viejo, CA.  The company got its start by embedding its product into the solutions of other companies, such as Western Digital and Dell.  A few years ago, Enmotus transitioned from a hardware+software play to a solution that is software only in nature.

The company seeks to provide a solution that answers the following question: “What can we do at the lower level guts of an operating system stack to intelligently manipulate storage?”  In other words, what can be done to make existing storage assets better overall.  You don’t necessarily need to buy new storage to get better performance; you just need a way that you can accelerate what you have and find ways to strategically augment that storage where and when it makes sense.

I had a briefing with Enmotus CEO and co-founder Andy Mills recently, and came away impressed with its optimization technology and how it can help companies better use their existing storage.  Right up front, Mills made a point during the briefing to say that he doesn’t see Enmotus as another software-defined storage (SDS) play. He says the product is more akin to a software-based machine intelligence tool. He says their key differentiator is the ability to do real-time, dynamic storage provisioning for performance.

Enmotus does that, Mills says, “wherever the piece of hardware intersects with the operating system, several SSDs, a bunch of hard drives and our software. Whoever is putting that together and layering use of the application on top of it, that’s our target customer.”

In Mills’ estimation, software defined storage as a core solution is slow and taxing on the storage. Enmotus, on the other hand, is built to be simple: just drop it into an existing operating system, such as a Linux or Windows physical server or a virtual machine, and it optimizes the existing storage, including both SSDs and HDDs, without adding a lot of overhead.  Enmotus installs as a local driver on Windows and Linux systems and inserts itself into the storage stack where it keeps watch over all of the server’s block-based storage resources, which can include NVDIMMs, NVMe devices, SSDs, local hard drives, iSCSI arrays, and Fibre Channel arrays.

Virtualizing Storage - Available Options
Enmotus can use a variety of back end storage devices, as long as they’re block-based.  Devices can include:

  • PCIe SSDs
  • NVMe block devices
  • NVM devices over a fabric
  • SAS/SATA/JBOD devices that are locally attached
  • iSCSI targets
  • Fibre Channel storage systems

As devices are added, they are categorized and measured for their performance characteristics.  Enmotus then creates a virtual SSD that spans these available devices.  This virtual block device appears to the file system as an ordinary SSD and the operating system can then layer any file system it wants over this device.

Although Enmotus can work with vSphere, it’s not a kernel-level integration; it installs in its own virtual machine and becomes a storage gatekeeper for that host.  Besides that key differentiator, Enmotus still interoperates with all of the block-based storage that the virtual machine can see.

With all of this storage assets essentially virtualized and monitored, Enmotus creates what the company refers to as a Virtual SSD.  As data is written to this virtual SSD, Enmotus, behind the scenes, makes sure it’s directed to media types that make the most sense.  Local devices are often preferred due to reduced latency, but the device mix can include attached or remote storage arrays, too.

With storage virtualized into this Virtual SSD, Enmotus also allows users to pin files to fast storage so that they are forced to reside on fast media.  This can be helpful for mission-critical workloads that need constant acceleration.  Moreover, the company keeps a watchful eye over the whole stack with comprehensive analytics and visualization capabilities.

The resulting solution is both a cache and a tier, depending on how you want to use it.  A three-minute installation makes the whole thing work.  Within minutes, Enmotus analyzes the storage capacity and capability and tells you exactly how much storage is active, and where. Then the optimization engine fires up and, in real time, moves the storage blocks to maximize performance.

The performance gains can be huge: Mills says Enmotus achieved nearly 2 million IOPS out of a Dell server, for example.  of course, actual real-world customer results are highly dependent on the kinds of workloads being operated and on the underlying storage devices in use.

We will continue to monitor Enmotus’ ongoing efforts and let you know as the company continues to bring new features to its product.