NoSQL RethinkDB Adds Automatic Failover to Feature Set

Along with including automatic failover, RethinkDB 2.1 now allows users to add and remove nodes without any interruption in service.

RethinkDB, a scalable NoSQL database that uses intelligence and automation to keep its data content up to date and available at all times, on Aug. 17 released a new version of its product that features automatic failover in case of a power failure or other unplanned outage.

RethinkDB 2.1, tested in beta by developers for months, enables server clusters to automatically select and deploy a substitute machine if one fails, thereby adding enterprise-class reliability to the content management system. This is a Godsend for developers building real-time apps, because the RethinkDB automation pushes new information to update query results in real time.

With RethinkDB, developers can get a scalable real-time Web app deployed in a much shorter time frame and with fewer engineering resources, thanks to the automation that comes with it.

The automatic failover takes away the need for human intervention and improves system reliability, relieving companies of the threat of downtime, which can be both costly and cumbersome.

The secret sauce in this feature is the Raft consensus protocol, which took 12 months to test and implement. Developed at Stanford University in 2013, Raft's influence is growing quickly in distributed computing and related fields.

In RethinkDB 2.1, Raft provides the underlying logic that enables replicas to elect an acting primary. It is one of the most popular and robust consensus protocols, providing a failsafe automatic failover mechanism, making it possible to eliminate downtime, RethinkDB co-founder Slava Akhmechet told eWEEK.

Databases generally have been labor-intensive tools, with mostly manual controls. That's changing here.

"What makes RethinkDB different from every other database is that we changed the way you access the database," Akhmechet said. "Traditionally, you access data in a database by pulling data. You send a query, you get a response, and if you want new data, you have to send a query again.

"What we do is we push data instead. When you send a query in RethinkDB, you'll get your answer, but when the data changes later, it will send you a notification to tell you the data is different, and in real time. If you're familiar with the functionality of Google spreadsheets, for example, you know that changes are made in real time. That kind of functionality hasn't been the case in databases, until now," Akhmechet said.

Along with including automatic failover, RethinkDB 2.1 now allows users to add and remove nodes without any interruption in service. This gives users the capability to elastically add and remove machines to the cluster without any downtime, Akhmechet said.

In addition to these features, RethinkDB 2.1's current administration APIs remain the same, which means users do not need to do anything to upgrade their systems other than downloading the newest version.

RethinkDB was founded in 2010 and is headquartered in Mountain View, Calif. It competes in the market with other NoSQL databases such as Couchbase, MongoDB and Cassandra.

An open source NoSQL (originally referring to "non SQL") database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases.

For more information, go here.

Chris Preimesberger

Chris J. Preimesberger

Chris J. Preimesberger is Editor-in-Chief of eWEEK and responsible for all the publication's coverage. In his 13 years and more than 4,000 articles at eWEEK, he has distinguished himself in reporting...