RethinkDB | |
RethinkDB | |
Released: | [1] |
Latest Release Version: | 2.4.4 |
Programming Language: | C++, Python, Java, JavaScript, Bash |
Operating System: | Unix, Linux, OS X, Windows, BSD |
Language: | English |
License: | Apache License 2.0https://github.com/rethinkdb/rethinkdb/commit/b0ec8bc5a874d5241d8af1166d664083edc5f750#diff-97d9303acdfc078a050e61dc5c1a9a76 |
RethinkDB is a free and open-source, distributed document-oriented database originally created by the company of the same name. The database stores JSON documents with dynamic schemas, and is designed to facilitate pushing real-time updates for query results to applications. Initially seed funded by Y Combinator in June 2009,[2] the company announced in October 2016 that it had been unable to build a sustainable business and its products would be entirely open-sourced without commercial support.[3]
The CNCF (Cloud Native Computing Foundation) then purchased the rights to the RethinkDB source code and contributed it to the Linux Foundation.[4]
RethinkDB was founded in 2009, and open-sourced at version 1.2 in 2012.[5] In 2015, RethinkDB released version 2.0, announcing that it was production-ready.[6] On October 5, 2016, the company announced it was shutting down, transitioning members of its engineering team to Stripe, and would no longer offer production support.[7] [8] On February 6, 2017, The Cloud Native Computing Foundation purchased the rights to the source code and relicensed it under the Apache License 2.0.[9] [10]
RethinkDB uses the ReQL query language, an internal (embedded) domain-specific language officially available for Ruby, Python, Java[11] and JavaScript (including Node.js).It has support for table joins, groupings, aggregations and functions.There are also unofficial, community-supported drivers for other languages, including C#, Clojure, Erlang, Go, Haskell, Lua, and PHP.
According to the DB-Engines ranking, as of February 2016, it was the 46th most popular database.[12]
A distinguishing feature of RethinkDB is the first class support for real-time change feeds. A change query returns a cursor which allows blocking or non-blocking requests to keep track of a potentially infinite stream of real-time changes.[13]
Due to seeming stagnation, RethinkDB was forked by members of the community on May 17, 2018.[14] The new project, called RebirthDB, is also hosted on GitHub. The project later merged back with the original repository.[15]