Skip to main content

Riak CS: a Cloud Storage Solution Compatible with Amazon S3

Riak CS is an open source cloud storage technology compatible with Amazon S3 and Openstack Swift. Discover why more and more companies are using it.

Riak CS may not be the best-known cloud storage technology right now, but it’s definitely worthy of our attention. This post isn’t meant to provide an end-to-end installation and configuration guide, but to familiarize you with its function and features and to explain why you might want to use it, rather than various alternatives.

What is Riak CS?

Riak CS (“CS” stands for Cloud Storage) is object storage management software that’s built on top of Riak, Basho’s distributed database. It can be used to store any type of data like images, video, documents, and database backups. Riak CS stores key/value pairs in namespaces called Buckets. It’s open source and can be easily downloaded.

Why use Riak CS?

With the increasing adoption of cloud technologies, storage must not only exist in ever increasing capacity, but must also be reliable, easy to maintain, distributed, scalable, and cheap. But Riak isn’t the only storage option available for handling large volumes of data. Why not, for instance, stick with local solutions like SAN or NAS?

The traditional approaches to storage were designed for structured data, but today the major sources of data are machines (like sensors and smartphones). These data are unstructured and require a more robust storage solution to handle the greater variety. Earlier storage designs, on the other hand, were not very fault tolerant and would need greater effort to maintain their reliability.

Besides being better at handling unstructured data, Riak CS tries to address all the major drawbacks of traditional storage solutions by avoiding the single point of failure architectures, and by introducing greater fault tolerance, more robust management, scaling, and lower costs.

But what about other cloud solutions, and especially AWS’s dominant Simple Storage Service? What can Riak CS possibly offer that we can’t already get from S3?

This one is a bit more tricky.

Amazon S3 is a pay-as-you-go service that’s as reliable as just about anything else out there, and it’s cost effective. But, as it’s provided by a public provider, you lose some control over uptime (even though AWS’s record is very good). Moreover, there will be cases where you are simply reluctant to store secured data outside your data center.

Riak CS gives you the flexibility to configure the entire setup within your datacenter – behind your organization’s firewall. If done right, this can provide better security and more control over your storage operations. Therefore, Riak CS can be a preferred choice even over AWS S3 for customers looking for…

  • Complete control over storage design and configuration.
  • Storage protected behind the organization’s firewall.
  • Control over uptime and quality of service.
  • Customized solutions implemented in ways similar to cloud drives (like Dropbox).
  • Huge unstructured data stores that can dynamically (and economically) scale.
  • Low Latency.
  • High read/write availability.
Riak CS architecture
How Riak CS works

Ok. So given that there are going to be use cases where Riak CS can outperform other solutions in its class, we should still ask ourselves: Why Riak CS and not Riak? Both are built for storage, both are highly available and scalable. Why not Riak?

Here we will need to understand some key structural differences between Riak & Riak CS.

  • Riak CS is used to store very large objects – into the terabyte size range. But Riak excels at quickly storing and retrieving smaller objects.
  • Riak is a database, and it’s never recommended to directly expose a database to a network without authentication or authorization – something Riak currently lacks. Riak CS, on the other hand, is designed for web users, and hence supports both authentication and authorization.
  • Compatibility with major players in the storage market is critically important for full integration. Riak CS’s APIs are compatible with AWS S3, but that’s not possible with Riak. Riak uses native HTTP or Protocol Buffers APIs, but Riak CS is compatible with Amazon’s S3 and OpenStack’s Swift APIs
  • Data consistency is vital for cloud storage solutions even though writes are being requested in parallel from all ends of a cluster, it’s very important that the data remain consistent – especially if you’re relying on user level authentication. Riak, compared to Riak CS, doesn’t provide a particularly high level of consistency.

Riak CS Features

Now that we’re a bit more familiar with some of Riak CS’s ideal use cases, let’s focus briefly on some specific features to help inform your enterprise deployment decision.

  • The Riak CS API is compatible with the Amazon S3 API.
  • Riak CS doesn’t work with a master-slave model, hence all nodes are responsible for all kind of requests.
  • With its Per Tenant Visibility capability, it’s easier to track per-tenant usage.
  • Riak CS cluster nodes can scale dynamically without any downtime.
  • With Riak CS’s enterprise edition, the data can be replicated across different data centers for greater reliability.
  • You can store individual images, text, video, documents, database backups, software binaries and other content up to 5GB as a single, easily retrievable object.
  • Cost effective.
  • Easy setup.
  • Easy maintenance.

Riak CS is making noise in its market and has been adopted by some serious customers. Perhaps its time for a closer look.

To learn more about the storage services provided by AWS, Cloud Academy’s AWS Storage Fundamentals is your go-to training course to get an in-depth understanding of AWS storage features, when and why you might use the service within your own environment.

Written by

Vineet Badola

Working as a cloud professional for last 6 years in various organizations, I have experience in three of the most popular cloud platforms, AWS IaaS, Microsoft Azure and Pivotal Cloud Foundry PaaS platform.Having around 10 years of IT experience in various roles and I take great interest in learning and sharing my knowledge on newer technologies. Wore many hats as developer, lead, architect in cloud technologies implementation. During Leisure time I enjoy good soothing music, playing TT and sweating out in Gym. I believe sharing knowledge is my way to make this world a better place.

Related Posts

Stuart Scott
— November 26, 2018

New Amazon S3 Features Announced at re:Invent

In true AWS style, a number of new features and services were announced yesterday, the day before the official start of re:Invent.Three of these announcements were related to Amazon S3 which included: S3 Intelligent Tiering (A new storage class) Batch Operations for Object M...

Read more
  • Amazon S3
  • Amazon Web Services
  • re:Invent 2018
  • S3
Jeremy Cook
— November 10, 2018

S3 FTP: Build a Reliable and Inexpensive FTP Server Using Amazon’s S3

Is it possible to create an S3 FTP file backup/transfer solution, minimizing associated file storage and capacity planning administration headache?FTP (File Transfer Protocol) is a fast and convenient way to transfer large files over the Internet. You might, at some point, have conf...

Read more
  • Amazon S3
  • AWS
Stuart Scott
— September 26, 2018

How to Optimize Amazon S3 Performance

Amazon S3 is the most common storage options for many organizations, being object storage it is used for a wide variety of data types, from the smallest objects to huge datasets. All in all, Amazon S3 is a great service to store a wide scope of data types in a highly available and resil...

Read more
  • Amazon S3
  • AWS
Stuart Scott
— February 13, 2018

Cloud Academy Sketches: Encryption in S3

Some of 2017’s largest data breaches involved unprotected Amazon Simple Storage (S3) buckets that left millions of customer data records exposed to the public. The problem wasn’t the technology, but administrators who improperly configured the security settings.For cloud teams in ch...

Read more
  • Amazon S3
  • AWS
Logan Rakai
— January 3, 2018

How to Diagnose Cancer with Amazon Machine Learning

A common question in the medical field is:Is it possible to distinguish one class of samples from another, based on some set of measurements?Research investigating this and related medical questions have spurred innovation in medicine and the application of statistical methods and m...

Read more
  • Amazon S3
  • AWS
  • Machine Learning
Andrew Larkin
— November 30, 2017

AWS re:Invent 2017 Day 3. Amazon Rekognition Video Enables Object and Face Recognition

From the 22 new features released by AWS today at re:invent 2017, Amazon Rekognition Video stood out to me as the interesting “quiet achiever” I want to tell you about.Amazon Rekognition Video brings object and facial recognition to live and on-demand video content. With this innova...

Read more
  • Amazon S3
  • AWS
  • reInvent17
Greg DeRenne
— August 10, 2017

Using Amazon Athena to query S3 data for CloudTrail logs

Who is Athena again? Athena is the Greek goddess of wisdom, craft, and war. (But at least she had a calm temperament, and only fought for a just cause!) This post is about Amazon Athena and about using Amazon Athena to query S3 data for CloudTrail logs, however, and I trust it will brin...

Read more
  • Amazon Athena
  • Amazon S3
  • AWS
  • CloudTrail
Chandan Patra
— April 7, 2016

A Crash Course in Amazon Serverless Architecture: Discover the Power of Amazon API Gateway, Lambda, CloudFront, and S3

New expanded content showing all three AWS Serverless posts in one article. This is a detailed look at the components of AWS Serverless Architecture and how anyone can make the most of it. Because of the complexity of the subject, this post has been subdivided into 3 sections, each with...

Read more
  • Amazon S3
  • AWS
Stuart Scott
— February 2, 2016

Amazon S3 Security: master S3 bucket polices and ACLs

Learn about Bucket Policies and ways of  implementing Access Control Lists (ACLs) to restrict/open your Amazon S3 buckets and objects to the Public and other AWS users.Follow along and learn ways of ensuring the public only access for your S3 Bucket Origin via a valid CloudFront reque...

Read more
  • Amazon S3
  • AWS
Michael Sheehy
— June 10, 2015

VPC Endpoint for Amazon S3: Simple Connectivity From AWS

Let's discuss VPC Endpoint's value, common use cases, and how to get it up and running with the AWS CLI.Last month Amazon Web Services introduced VPC Endpoint for Amazon S3. In this article, I am going to explain exactly what this means, how it will change - and improve - the way AWS ...

Read more
  • Amazon S3
  • AWS
Christian Petters
— February 17, 2015

Amazon S3 vs Amazon Glacier: A Simple Backup Strategy In The Cloud

Amazon S3 vs Amazon Glacier: which AWS storage tool should you use?When you set out to design your first AWS (Amazon Web Services) hosted application, you will need to consider the possibility of data loss.While you may have designed a highly resilient and durable solution, this w...

Read more
  • Amazon S3
  • AWS
Sanket Dangi
— December 18, 2014

How to Deploy Application Code From S3 Using AWS CodeDeploy

In a previous post, we discussed the top 5 deployment tools for AWS. Out of them, AWS CodeDeploy is a tool which is especially designed for AWS. It is a new service by Amazon Web Services which was launched during the Re:Invent 2014 conference held in Las Vegas last November. The primar...

Read more
  • Amazon S3
  • AWS