Bill Roth, Ulitzer Editor-at-Large

Bill Roth

Subscribe to Bill Roth: eMailAlertsEmail Alerts
Get Bill Roth via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Whether we are in the 20th century (mindset) or the 21st, there is always a CLIENT and a SERVICE provided to the CLIENT. These two abstracted macro-tiers have always been there in some shape and form, and will remain in the foreseeable future. They are changing though, and fast, in front of our eyes.

Just a few years ago, enterprise IT CLIENT would be by and large stationary and static, in terms of storage access and storage utilization. The CLIENT did not require SLA for itself, for the application it was running and the user behind. Instead, the CLIENT would use what's (best-effort) available - which of course immediately implies one of the following two choices for IT managers:

  1. over-provisioning for the worst possible case, or

  2. purchasing and maintaining a product, out of existing and often confusing panoply of many similar storage products that advertize themselves for the corresponding CLIENT's usage profile and SLA (read: application), including: latency, throughput, price, MTTF and MTBF, etc.

Storage SERVICE, on the other hand, for a good couple decades to date was, and largely remains: conventional statically-provisioned shared NAS and/or SAN accessed via a handful well-established protocols over Ether or (for SAN) FC, and less frequently, IB.

The picture below illustrates these two omnipresent macro-tiers, CLIENT and SERVICE, with conventional state of the art on the left and the future - on the right. This future is happening fast though, in part because:

  • IT inevitably moving to Cloud, compute and storage-wise

  • The amount of stored raw data exponentially growing with no deceleration in sight, further exposing, amplifying and exacerbating the "network bottleneck", the need for intelligent and on-demand tiering

  • Mobility becomes a MUST for more enterprise applications

  • Flash prices and quality continue to improve

  • and finally, hypervisors are getting better at managing hardware resources while running increasing numbers of virtual machines and their vApps

Software-defined Storage

All of the above are the telltale signs that the original model (on the left) will continue to break in a variety of interesting ways, to be replaced by the model on the right, with Unified Storage providing quality services out of heterogeneous pools of highly virtualized resources in the tiers of Clouds, from more local/primary/fast to remote/archiving.

Software-defined Storage (SDS) would be another way to state the same (but shorter). Wikipedia (http://en.wikipedia.org/wiki/Software_Defined_Storage) defines SDS as follows:

  • key concept #1: policy-driven storage provisioning - SLA's replace technology details

  • key concept #2: virtual volumes - separating the physical hardware from its presentation

SDS challenge and the corresponding CLIENT<=>STORAGE model (picture on the right) require higher degree of virtualization of the storage service itself. The previous blog on SDS calls the corresponding technology a 3rd generation of storage virtualization, whereby the storage Server (or Target) is:

  • virtualized

  • mobile, along with the vApps and their "container" VMs

  • highly available

  • providing QoS on a per vClient/vApp

Closed-source SDS?

As a side, there is one other SDS "key point" that I believe is missed by Wikipedia at the time of this writing (Sept 2012): openness of storage software.

Closed software stacks for the most part come preinstalled and packaged on top of proprietary hardware, which immediatley undermines the idea of virtualization of the storage service itself, based on end-user selected hardware resources, including platforms and disks, other peripherals.

And one more reason, often cited in different contexts. Every existing closed software stack has a certain life-term limit that, depending of course on vendor and multiple other factors, may count months, years or even decades, and still will always remain - a limit, with a certain attached probability to terminate. It is therefore difficult for end-users, from Fortune 100 down to small businesses and home offices, to fully embrace a paradigm shift while being aware of the "term limit" and the fact that there effectively will be no continuity of support. Which in the worst and still plausible case would mean: losing access to your data...

Remote is a new Local

Supporting SDS and the new model (picture above, on the right), with its 21st century requirements - is a tall order. Storage must become more consolidated and simultaneously more localized, so that the clients do not lose benefits of local secure access, while the "move" to Cloud remains transparent as far as existing applications.

Remote professionally managed (backed up, serviced) consolidated storage, along with local access - doesn't that sound like a contradiction?

Well, it may, and it definitely will - as far as the legacy closed-hardware based approach.

NexentaStor VSA: the leverage

Let's recap. I strongly believe that Virtual Storage Appliance (VSA) is a key and a strategy to approach, approximate, incrementally improve, and ultimately achieve the goal and the promise of SDS. The one very concrete step in this direction is NexentaVSA for View - the product that effectively defines the storage for VDI.

Further, quoting the previous blog SDS and SDN:

  • First, a dedicated VSA can do block and file and object storage much better than the hypervisor itself simply because it packs 20+ years of storage stacks development and, in many cases including Nexenta, many years of commercial deployment.

  • Second, VSA can hide the fact of local/remote storage from the VMs, thus providing an additional (and higher!) degree of virtualization. The hypervisors do virtualize local storage hardware. VSAs on the other hand do virtualize the entire storage, local and remote.

  • Thirdly, VSA being a VM is mobile itself, and it therefore can follow (or rather, be followed by) migrating VMs using it for storage - to their (the VMs) new destination. This in turn creates a design and implementation opportunity to make VM migration a truly self-contained transaction, independent of the location of physical storage hardware.

There is an extra point though. On top and in addition to its existing 2nd-gen hybrid storage pools and thin provisioned virtual volumes (see Wikipedia SDS), the upcoming Version 5 of the NexentaStor VSAs will be capable to:

  • Approximate per application SLA - via SLA CoS mapping that is shown on the picture above and remains TBD, with the subsequent handling of the latter out of heterogeneous unified storage pools - the corresponding set of works is currently underway and is largely titled ZFS++ and, separately, CCOW.


One of our current efforts,  is code-named 'ZFS meta'. Quoting 'ZFS meta' PRD:

Heterogeneous data volume combines ZFS vdevs of different types (classes) and provides the capability to classify, route and manage user data and/or associated metadata on a per type of this data (metadata) basis.

Presence of different classes of disks within the same heterogeneous ZFS pool is further combined with a new ZFS capability, to route and manage the data based on associated Class of Storage, which is:

  1. A descriptor that combines user and system defined properties to control ZFS IO pipeline stages and, effectively, propagate user data and/or associated metadata to/from stable storage differently – on a per CoS basis
  2. A mechanism to match user data with a specific class (or classes) of disks within the heterogeneous storage volume when placing the data

Consolidated heterogeneous backend "multiplied" by storage intelligence to process CoS descriptors - this H-squared combination will allow applications to define how the data is stored, accessed, retained, migrated, backed up, and overall managed - on a per application/user basis.

The remaining SDS ingredient - SLA to CoS mapper - will first be addressed by custom management systems, later - by industry standard APIs. That is an easy prediction to make.

Storage consolidation in and of itself is a great value, in terms of ease of management, ability to apply a set of consistent policies, to conserve power, to backup, snapshot, and otherwise control from a single IT perspective. This has played tremendous role as far as shared NAS/SAN propagation and success in the market in 1990s and 2000s, and will not be lost with the move to Software Defined Storage, to H-squared.

To be continued.

Read the original blog entry...

More Stories By Bill Roth

Bill Roth is a Silicon Valley veteran with over 20 years in the industry. He has played numerous product marketing, product management and engineering roles at companies like BEA, Sun, Morgan Stanley, and EBay Enterprise. He was recently named one of the World's 30 Most Influential Cloud Bloggers.