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.
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.
New on Cloud Academy: AWS Solution Architect Lab Challenge, Azure Hands-on Labs, Foundation Certificate in Cyber Security, and Much More
Now that Thanksgiving is over and the craziness of Black Friday has died down, it's now time for the busiest season of the year. Whether you're a last-minute shopper or you already have your shopping done, the holidays bring so much more excitement than any other time of year. Since our...
Understanding Enterprise Cloud Migration
What is enterprise cloud migration? Cloud migration is about moving your data, applications, and even infrastructure from your on-premises computers or infrastructure to a virtual pool of on-demand, shared resources that offer compute, storage, and network services at scale. Why d...
6 Reasons Why You Should Get an AWS Certification This Year
In the past decade, the rise of cloud computing has been undeniable. Businesses of all sizes are moving their infrastructure and applications to the cloud. This is partly because the cloud allows businesses and their employees to access important information from just about anywhere. ...
AWS Regions and Availability Zones: The Simplest Explanation You Will Ever Find Around
The basics of AWS Regions and Availability Zones We’re going to treat this article as a sort of AWS 101 — it’ll be a quick primer on AWS Regions and Availability Zones that will be useful for understanding the basics of how AWS infrastructure is organized. We’ll define each section,...
Application Load Balancer vs. Classic Load Balancer
What is an Elastic Load Balancer? This post covers basics of what an Elastic Load Balancer is, and two of its examples: Application Load Balancers and Classic Load Balancers. For additional information — including a comparison that explains Network Load Balancers — check out our post o...
Advantages and Disadvantages of Microservices Architecture
What are microservices? Let's start our discussion by setting a foundation of what microservices are. Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs). ...
Kubernetes Services: AWS vs. Azure vs. Google Cloud
Kubernetes is a popular open-source container orchestration platform that allows us to deploy and manage multi-container applications at scale. Businesses are rapidly adopting this revolutionary technology to modernize their applications. Cloud service providers — such as Amazon Web Ser...
AWS Internet of Things (IoT): The 3 Services You Need to Know
The Internet of Things (IoT) embeds technology into any physical thing to enable never-before-seen levels of connectivity. IoT is revolutionizing industries and creating many new market opportunities. Cloud services play an important role in enabling deployment of IoT solutions that min...
Which Certifications Should I Get?
As we mentioned in an earlier post, the old AWS slogan, “Cloud is the new normal” is indeed a reality today. Really, cloud has been the new normal for a while now and getting credentials has become an increasingly effective way to quickly showcase your abilities to recruiters and compan...
How to Go Serverless Like a Pro
So, no servers? Yeah, I checked and there are definitely no servers. Well...the cloud service providers do need servers to host and run the code, but we don’t have to worry about it. Which operating system to use, how and when to run the instances, the scalability, and all the arch...
AWS Security: Bastion Hosts, NAT instances and VPC Peering
Effective security requires close control over your data and resources. Bastion hosts, NAT instances, and VPC peering can help you secure your AWS infrastructure. Welcome to part four of my AWS Security overview. In part three, we looked at network security at the subnet level. This ti...
Top 13 Amazon Virtual Private Cloud (VPC) Best Practices
Amazon Virtual Private Cloud (VPC) brings a host of advantages to the table, including static private IP addresses, Elastic Network Interfaces, secure bastion host setup, DHCP options, Advanced Network Access Control, predictable internal IP ranges, VPN connectivity, movement of interna...