What is RethinkDB?
RethinkDB is a scalable JSON database designed for the realtime web. According to the vendor, it offers a push architecture that continuously updates query results to applications in realtime, facilitating the development of scalable realtime apps. The product caters to startups, consulting studios, and Fortune 500 companies, and is popular among web developers, mobile app developers, game developers, data analysts, and IoT developers across various industries.
Key Features
Realtime Push Architecture: According to the vendor, RethinkDB's push architecture eliminates the need for polling by continuously pushing updated query results to applications in realtime, enabling the development of scalable realtime apps.
Flexible Query Language: The vendor claims that RethinkDB provides a flexible query language that supports table joins, subqueries, and massively parallelized distributed computation. They state that the query language is powerful, expressive, and easy to learn, allowing developers to run arbitrary queries, including geospatial queries, aggregation, and map-reduce.
Intuitive Operations and Monitoring API: RethinkDB offers an operations and monitoring API that seamlessly integrates with the query language, simplifying the scaling process. The vendor claims that developers can use the API to shard and replicate data with ease.
Robust Architecture: According to the vendor, RethinkDB has a modern distributed architecture, a highly optimized buffer cache, and a state-of-the-art storage engine. These components work together to create a robust, scalable, and high-performance database. The architecture supports express relationships using joins, facilitates the development of location-aware apps, and enables storage of multimedia and time-series data, as well as performing analytics with aggregation and map/reduce.
Scalability and Cluster Management: RethinkDB offers an intuitive web UI that allows for easy scaling of the app by shard and replicate data. The vendor claims that a simple API provides precise control over the cluster, enabling easy configuration of shards and replicas.