Build real-time Web apps with RethinkDB

The RethinkDB JSON database simplifies the development of applications that rely on real-time updates

1 2 Page 2
Page 2 of 2

RethinkDB also supports a ReQL-based approach to cluster configuration, which is ideal for fine-grained control and automation. ReQL includes a simple reconfigure function that you can chain to a table to set sharding and replication settings. The cluster also exposes much of its internal configuration state through a set of special RethinkDB tables. You can perform queries against the system tables to tweak the configuration or retrieve statistics for monitoring purposes. Virtually all of the functionality provided by the browser-based administrative console is implemented on top of the ReQL-based configuration and monitoring APIs.

You can even use RethinkDB changefeeds in conjunction with the ReQL monitoring APIs to retrieve a stream of live data. For example, you could build your own cluster monitoring tool that attaches a changefeed to the stats system table and uses the real-time updates to display a live graph of the read/write load.

RethinkDB 2.1, released earlier this month, introduces built-in support for automatic failover. The new feature enables high-availability clustering, reducing the risk of downtime. When a server with a primary replica experiences failure, the database servers with remaining replicas elect a new acting primary to takes its place until the original primary comes back online or is permanently removed from the cluster. Hardware failures or partial network outages will no longer compromise data availability as long as a majority of replicas remain online.

Install RethinkDB

RethinkDB runs on Linux and Mac OS X. A native Windows port is under active development, but is not yet available for download. You can visit the RethinkDB documentation for details about how to install the database. We provide APT and Yum repositories for Linux users and a pkg installer for OS X. You can also install RethinkDB with Docker or compile the source code from GitHub. To learn how to build an application, check out the 10-minute guide in our documentation.

Slava Akhmechet is the founder of RethinkDB, a database company dedicated to helping developers build real-time Web applications. Prior to RethinkDB he was a systems engineer in the financial industry, working on scaling custom database systems. Slava is also a frequent speaker and a blogger. He is currently on leave from a doctoral program in computational neuroscience at Stony Brook University.

New Tech Forum provides a venue to explore and discuss emerging enterprise technology in unprecedented depth and breadth. The selection is subjective, based on our pick of the technologies we believe to be important and of greatest interest to InfoWorld readers. InfoWorld does not accept marketing collateral for publication and reserves the right to edit all contributed content. Send all inquiries to newtechforum@infoworld.com.

1 2 Page 2
Page 2 of 2