The Complete Magazine on Open Source

An Introduction to Riak S

SHARE
and / 840 0

Dat Storage

Riak S2, also known as Riak CS, provides powerful storage for large volumes of data. The important features of Riak are high availability, fault tolerance, security, as well as easy accessibility and installation.

Cloud storage is storage of data in digital form. Its structure consists of multiple servers that are located at different locations. This physical structure of storage is governed by the hosting company that provides the cloud services. Organisations have to access their data stored in the cloud, through the Internet, independent of where they are located.

An overview of Riak S2
Riak is a NoSQL database which is designed to deliver the maximum amount of data by distributing it across multiple users. It is also known as a distributed database because of its capability to deliver across distributed networks. It offers various features such as fault tolerance, high availability, scalability and simplicity. It is available in open source, enterprise and cloud storage versions.
Riak S2, also known as Riak Cloud Storage (Riak CS), is built on top of Riak. It is an object storage system, which stores objects in Riak and provides compatibility for an S3 interface.
In this era of ubiquitous social media and multiple sources of data, we now have to manage unstructured data along with structured data. Thus, to manage such a huge volume of data, we need to have scalability, high availability, fault tolerance, easy access, cost benefits, and robustness in order to utilise the data to gain business advantages. RiaK CS is one such solution. We can access the Riak S2 admin interface via HTTP.
RiaK CS is compatible with any client or library that implements the S3 API such as s3cmd, s3curl, boto, erlcloud, the AWS Java SDK, the AWS Ruby SDK, and Fog.

Fig 1

Figure 1: Benefits of cloud storage

Fig 2

Figure 2: Riak S2, open source

Features of Riak S2
Riak S2 or Riak CS provides the flexibility to install and configure the entire set-up on premise and, hence, it is secured based on an organisation’s defined policy. Figure 3 shows a few important features of Riak CS.

Use cases of Riak S2
The use cases of Riak S2 are illustrated in Figure 4.

Fig 3

Figure 3: Features of Riak S2

Fig 4

Figure 4: Use cases of Riak S2

How Riak S2 works
1. Riak S2 is built on the Riak NoSQL database.
2. Try to upload a database to Riak S2. This is what happens:
a. Riak S2 breaks the object into smaller chunks or blocks so they can be streamed, stored and replicated in the underlying Riak cluster.
b. Each block has meta data associated with it.
c. Meta data is used for retrieval purposes.
d. Data is replicated across nodes.
e. Nodes automatically take over the responsibilities of nodes that go offline.
f. Hence, data remains available even in failure.
3. Any node is capable of responding to client requests.
4. There’s no master node architecture here, and each node has the same responsibilities.
5. Three replicas per object (data) are created, by default.
6. For failed or non-communicative nodes, other nodes automatically take over the responsibility to make data available and, hence, high availability and fault tolerance is achieved.

Fig 5

Figure 5: Installation of Riak S2

Fig 6

Figure 6: Architecture

Installation of Riak S2
Riak S2 or Riak CS is not supported on Microsoft Windows operating systems. However, it can be installed on operating systems such as CentOS, Ubuntu, FreeBSD, Fedora, SmartOS, Solaris and OS X. It can be installed on a single node for environment development purposes.

References
[1] https://github.com/basho/riak_cs
[2] http://docs.basho.com/riakcs/latest/tutorials/fast-track/
[3] http://docs.basho.com/riakcs/latest/
[4] http://basho.com/products/
[5] http://basho.com/products/riak-s2/
[6] http://searchcloudstorage.techtarget.com/definition/cloud-storage
[7] http://docs.basho.com/riakcs/latest/cookbooks/installing/Installing-Riak-CS/