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.

Avatar

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

Avatar
Michael Sheehy
— August 19, 2019

What Exactly Is a Cloud Architect and How Do You Become One?

One of the buzzwords surrounding the cloud that I'm sure you've heard is "Cloud Architect." In this article, I will outline my understanding of what a cloud architect does and I'll analyze the skills and certifications necessary to become one. I will also list some of the types of jobs ...

Read more
  • AWS
  • Cloud Computing
Avatar
Andrew Larkin
— August 13, 2019

Content Roadmap: AZ-500, ITIL 4, MS-100, Google Cloud Associate Engineer, and More

Last month, Cloud Academy joined forces with QA, the UK’s largest B2B skills provider, and it put us in an excellent position to solve a massive skills gap problem. As a result of this collaboration, you will see our training library grow with additions from QA’s massive catalog of 500+...

Read more
  • AWS
  • Azure
  • content roadmap
  • Google Cloud Platform
Avatar
Adam Hawkins
— August 9, 2019

DevSecOps: How to Secure DevOps Environments

Security has been a friction point when discussing DevOps. This stems from the assumption that DevOps teams move too fast to handle security concerns. This makes sense if Information Security (InfoSec) is separate from the DevOps value stream, or if development velocity exceeds the band...

Read more
  • AWS
  • cloud security
  • DevOps
  • DevSecOps
  • Security
Avatar
Stefano Giacone
— August 8, 2019

Test Your Cloud Knowledge on AWS, Azure, or Google Cloud Platform

Cloud skills are in demand | In today's digital era, employers are constantly seeking skilled professionals with working knowledge of AWS, Azure, and Google Cloud Platform. According to the 2019 Trends in Cloud Transformation report by 451 Research: Business and IT transformations re...

Read more
  • AWS
  • Cloud skills
  • Google Cloud
  • Microsoft Azure
Avatar
Andrew Larkin
— August 7, 2019

Disadvantages of Cloud Computing

If you want to deliver digital services of any kind, you’ll need to estimate all types of resources, not the least of which are CPU, memory, storage, and network connectivity. Which resources you choose for your delivery —  cloud-based or local — is up to you. But you’ll definitely want...

Read more
  • AWS
  • Azure
  • Cloud Computing
  • Google Cloud Platform
Joe Nemer
Joe Nemer
— August 6, 2019

Google Cloud vs AWS: A Comparison (or can they be compared?)

The "Google Cloud vs AWS" argument used to be a common discussion among our members, but is this still really a thing? You may already know that there are three major players in the public cloud platforms arena: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP)...

Read more
  • AWS
  • Google Cloud Platform
  • Kubernetes
Avatar
Stuart Scott
— July 29, 2019

Deployment Orchestration with AWS Elastic Beanstalk

If you're responsible for the development and deployment of web applications within your AWS environment for your organization, then it's likely you've heard of AWS Elastic Beanstalk. If you are new to this service, or simply need to know a bit more about the service and the benefits th...

Read more
  • AWS
  • elastic beanstalk
Avatar
Stuart Scott
— July 26, 2019

How to Use & Install the AWS CLI

What is the AWS CLI? | The AWS Command Line Interface (CLI) is for managing your AWS services from a terminal session on your own client, allowing you to control and configure multiple AWS services and implement a level of automation. If you’ve been using AWS for some time and feel...

Read more
  • AWS
  • AWS CLI
  • Command line interface
Alisha Reyes
Alisha Reyes
— July 22, 2019

Cloud Academy’s Blog Digest: July 2019

July has been a very exciting month for us at Cloud Academy. On July 10, we officially joined forces with QA, the UK’s largest B2B skills provider (read the announcement). Over the coming weeks, you will see additions from QA’s massive catalog of 500+ certification courses and 1500+ ins...

Read more
  • AWS
  • Azure
  • Cloud Academy
  • Cybersecurity
  • DevOps
  • Kubernetes
Avatar
Stuart Scott
— July 18, 2019

AWS Fundamentals: Understanding Compute, Storage, Database, Networking & Security

If you are just starting out on your journey toward mastering AWS cloud computing, then your first stop should be to understand the AWS fundamentals. This will enable you to get a solid foundation to then expand your knowledge across the entire AWS service catalog.   It can be both d...

Read more
  • AWS
  • Compute
  • Database
  • fundamentals
  • networking
  • Security
  • Storage
Avatar
Adam Hawkins
— July 17, 2019

How to Become a DevOps Engineer

The DevOps Handbook introduces DevOps as a framework for improving the process for converting a business hypothesis into a technology-enabled service that delivers value to the customer. This process is called the value stream. Accelerate finds that applying DevOps principles of flow, f...

Read more
  • AWS
  • AWS Certifications
  • DevOps
  • DevOps Foundation Certification
  • Engineer
  • Kubernetes
Avatar
Vineet Badola
— July 15, 2019

AWS AMI Virtualization Types: HVM vs PV (Paravirtual VS Hardware VM)

Amazon Machine Images (AWS AMI) offers two types of virtualization: Paravirtual (PV) and Hardware Virtual Machine (HVM). Each solution offers its own advantages. When we’re using AWS, it’s easy for someone — almost without thinking —  to choose which AMI flavor seems best when spinning...

Read more
  • AWS
  • Hardware Virtual Machine
  • Paravirtual
  • Virtualization