Welcome!

SDN Journal Authors: Elizabeth White, Yeshim Deniz, Liz McMillan, Pat Romanski, TJ Randall

Related Topics: @CloudExpo, Microservices Expo, Containers Expo Blog, Agile Computing, @DXWorldExpo, SDN Journal

@CloudExpo: Article

Replication & Erasure Coding Is the Future for Cloud Storage & Big Data

Organizations are increasingly turning to cloud storage infrastructures to manage their data

In the course of IT history, many schemes have been devised and deployed to protect data against storage system failure, especially disk drive hardware. These protection mechanisms have nearly always been variants on two themes: duplication of files or objects (backup, archiving, synchronization, remote replication come to mind); or parity-based schemes at disk level (RAID) or at object level (erasure coding, often also referred to as Reed-Solomon coding). Regardless of implementation details, the latter always consists of the computation and storage of "parity" information over a number of data entities (whether disks, blocks or objects). Many different parity schemes exist, offering a wide range of protection trade-offs between capacity overhead and protection level - hence their interest.

Erasure Coding
As of late, erasure coding has received a lot of attention in the object storage field as a ‘one-size-fits-all' approach to content protection. This is a stretch. Erasure coding is a solid approach to storage footprint reduction for an interesting but bounded field of use cases, involving both large streams and large clusters, but at the cost of sacrificing the numerous use cases that involve small streams, small clusters, or a combination of the two.

Most readers will be familiar with the concept of RAID content protection on hard disk drives. For example, the contents of a set of five drives is used to compute the contents of what is called a parity drive adding one more drive to the RAID set for a total of six drives. Of the total set of sox, if any single drive fails, the content that is lost can be rebuilt from the five remaining drives. Aside such a 5+1 scheme, many others are possible, where even multiple drives can fail simultaneously and yet the full content can be rebuilt: there is a continuum in the trade-off between footprint and robustness.

More recently, the same class of algorithms that is used for RAID has been applied to the world of object storage: they are commonly called Erasure Codes. The concept is similar: imagine an object to be stored in a cluster. Now, rather than storing and replicating it wholly we will cut the incoming stream into (say) six segments in a 5:1 scheme each with parity information. Similar to the RAID mechanism above, any missing segment out of the six can be rebuilt from the five remaining ones, hence the one. This provides a mechanism to survive a failed disk drive without making a full replica: the footprint overhead is just 20% here rather than 100% with comparable data durability.

Beyond this "5+1" scheme, many more Erasure Coding (EC) schemes are possible. They can survive as many disk failures as their number of parity segments: a 10+6 scheme can survive six simultaneous segment failures without data loss, for instance. Here the overhead will be 60% ((10+6)/10).

Erasure Coding Comes with Trade-offs
The underlying objective is clear: provide protection against failure at a lower footprint cost. However, as usual, there is no such thing as a ‘free lunch.' There are trade-offs to be considered when compared to replication. The key is to have the freedom to choose the best protection for each particular use case.

When chopping up objects to store the resulting segments across a number  of nodes, the "physical" object count of the underlying storage system is multiplied (e.g., for a 10:6 scheme, it's multiplied by 16). Not all competing object storage systems handle high object count well. It is also clear that the granularity (i.e., minimum file size) of the underlying file system or object storage system will play a role in suggesting how small an object can be to be economically stored using erasure coding. It doesn't really make sense from an efficiency perspective to store, say, a 50K object using a 10:6 erasure coding scheme if there is a file system at the core of a storage system. This is because file systems still segment files into blocks with minimum block sizes. A common threshold for this block size for a Linux file system is 32K so the resulting storage needed for a 50K file using a 10:6 erasure coding scheme would be would be 512K (32K * 16 segments) or a 10X increase in footprint. As we will see replication is a much better approach for small files.

Replication
The simplest form of protective data redundancy is replication, with one or more additional copies of an "original" object being created and maintained to be available if that original somehow gets damaged or lost. In spite of the recent hype around erasure coding, we will see that there still are substantial use case areas where replication clearly is the superior option. For the sake of the example, imagine a cluster of a 100 CPUs with one disk drive each, and 50 million objects with two replicas each, 100 million objects grand total. When we speak of replicas in this context, we mean an instance - any instance - of an object; there is no notion of "original" or "copy." Two replicas equal a grand total of two instances of a given object, somewhere in the cluster, on two randomly different nodes. When an object loss is detected, a recovery cycle begins. Data loss only occurs if both replicas are lost, which is why it is important to store replicas on different nodes and if possible different locations. It is also important to have efficient and rapid recovery cycles; you want to ensure that your objects are quickly replicated in case of an overlapping recovery cycle, which may lead to data loss. If there are three replicas per object, three overlapping recovery cycles (a very low probability event) will be required to cause any data loss.

Replication and Erasure Combined Is the Answer
As so often in IT, there is no single perfect solution to a wide array of use cases. In object storage applications, cluster sizes run the gamut between just a few nodes built into a medical imaging modality to thousands of nodes spanning multiple data centers, with object sizes ranging between just a few Kilobytes for an email message and hundreds of Gigabytes for seismic activity data sets. If we want to fulfill the economic and manageability promises of the single unified storage, we need technology that is fully capable of seamlessly adapting between those use cases.

To deal with the velocity and variability of unstructured information, organizations are increasingly turning to cloud storage infrastructures to manage their data in a cost-effective, just-in-time manner, while others may need the robustness of Big Data repositories to handle the volume that today's boundless storage requires. A combination of both replication and erasure coding, combined into a singular object storage solution, will provide the best option to access and analyze data regardless of object size, object count or storage amount while ensuring data integrity aligned with business value. Traditional file systems simply cannot provide the ease of management and accessibility required for cloud storage, nor will they provide the massive scalability and footprint efficiency required for Big Data repositories. The future of both cloud storage and Big Data remain firmly entrenched in an object storage solution that incorporates both replication and erasure coding into its architecture to overcome the limitations of either one technology.

To see an in depth paper on "Replication and Erasure Coding Explained" please visit http://www.caringo.com/

More Stories By Paul Carpentier

Paul Carpentier is CTO and Founder of Caringo. Known as the father of the Content Addressing concept, He invented the patent pending scalable and upgradeable security that is at the heart of Caringo. He was the architect of SequeLink — the first client/server middleware product to connect heterogeneous front ends running over multiple networks to multiple databases on the server side.

Paul founded Wave Research and conceived FileWave, the first fully automated, model-driven software distribution and management system. At FilePool, he invented the technology that created the Content Addressed Storage industry. FilePool, was sold to EMC who turned CAS into a multi-billion dollar marketplace. Caringo CAStor, based on two of Mr. Carpentier's six patents promises to revolutionize the data storage business in much the same manner that CAS created a whole new marketplace.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


CloudEXPO Stories
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to advisory roles at startups. He has worked extensively on monetization, SAAS, IoT, ecosystems, partnerships and accelerating growth in new business initiatives.
Whenever a new technology hits the high points of hype, everyone starts talking about it like it will solve all their business problems. Blockchain is one of those technologies. According to Gartner's latest report on the hype cycle of emerging technologies, blockchain has just passed the peak of their hype cycle curve. If you read the news articles about it, one would think it has taken over the technology world. No disruptive technology is without its challenges and potential impediments that frequently get lost in the hype. The panel will discuss their perspective on what they see as they key challenges and/or impediments to adoption, and how they see those issues could be resolved or mitigated.
Lori MacVittie is a subject matter expert on emerging technology responsible for outbound evangelism across F5's entire product suite. MacVittie has extensive development and technical architecture experience in both high-tech and enterprise organizations, in addition to network and systems administration expertise. Prior to joining F5, MacVittie was an award-winning technology editor at Network Computing Magazine where she evaluated and tested application-focused technologies including app security and encryption-related solutions. She holds a B.S. in Information and Computing Science from the University of Wisconsin at Green Bay, and an M.S. in Computer Science from Nova Southeastern University, and is an O'Reilly author.
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more business becomes digital the more stakeholders are interested in this data including how it relates to business. Some of these people have never used a monitoring tool before. They have a question on their mind like "How is my application doing" but no idea how to get a proper answer.
Having been in the web hosting industry since 2002, dhosting has gained a great deal of experience while working on a wide range of projects. This experience has enabled the company to develop our amazing new product, which they are now excited to present! Among dHosting's greatest achievements, they can include the development of their own hosting panel, the building of their fully redundant server system, and the creation of dhHosting's unique product, Dynamic Edge.