- Make the most of this open source, scalable database―RethinkDB ―to ease the construction of web applications
- Run powerful queries using ReQL, which is the most convenient language to manipulate JSON documents with
- Develop fully-fledged real-time web apps using Node.js and RethinkDB
RethinkDB is a high-performance document-oriented database with a unique set of features. This increasingly popular NoSQL database is used to develop real-time web applications and, together with Node.js, it can be used to easily deploy them to the cloud with very little difficulty.
Getting Started with RethinkDB is designed to get you working with RethinkDB as quickly as possible. Starting with the installation and configuration process, you will learn how to start importing data into the database and run simple queries using the intuitive ReQL query language.
After successfully running a few simple queries, you will be introduced to other topics such as clustering and sharding. You will get to know how to set up a cluster of RethinkDB nodes and spread database load across multiple machines. We will then move on to advanced queries and optimization techniques. You will discover how to work with RethinkDB from a Node.js environment and find out all about deployment techniques.
Finally, we'll finish by working on a fully-fledged example that uses the Node.js framework and advanced features such as Changefeeds to develop a real-time web application.
What you will learn
- Download and install the database on your system
- Configure RethinkDB's settings and start using the web interface
- Import data into RethinkDB
- Run queries using the ReQL language
- Create shards, replicas, and RethinkDB clusters
- Use an index to improve database performance
- Get to know all the RethinkDB deployment techniques
About the Author
Gianluca Tiepolo is an accomplished software engineering professional and entrepreneur with several years of experience in developing software and products on a variety of technologies, from consumer applications to revolutionary projects focused on computer vision, data engineering, and database programming. His software stack ranges from traditional platforms, such as Hadoop and OpenCV, to modern platforms, such as Node.js and Redis.
He is the founder of Defrogs, a start-up that is building a new-generation data engineering platform to handle big data called TrisDB. Bringing in innovative data process development approaches, this organization focuses on cutting-edge technologies designed to scale small to large distributed data clusters. To date, TrisDB is used by more than 3 million developers around the world. He previously co-founded Sixth Sense Solutions, a start-up that develops interactive solutions for the retail and fashion industries. In 2013, he helped produce the largest touch-enabled surface in the world. Currently, he's working on a fashion platform called Stylobag and maintains several open source projects on his GitHub account.
In 2015, he reviewed the book called Building Web Applications with Python and Neo4j published by Packt Publishing.
Table of Contents
Chapter 1. Introducing RethinkDB
Chapter 2. The ReQL Query Language
Chapter 3. Clustering, Sharding, and Replication
Chapter 4. Performance Tuning and Advanced Queries
Chapter 5. Programming RethinkDB in Node.js
Chapter 6. RethinkDB Administration and Deployment
Chapter 7. Developing Real-Time Web Applications