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]
Initial release | 24 July 2009[1] |
---|---|
Stable release | 2.4.4
/ December 10, 2023 |
Repository | |
Written in | C++, Python, Java, JavaScript, Bash |
Operating system | Unix, Linux, OS X, Windows, BSD |
Available in | English |
License | Apache License 2.0[1] |
Website | rethinkdb |
The CNCF (Cloud Native Computing Foundation) then purchased the rights to the RethinkDB source code and contributed it to the Linux Foundation.[4]
History
editRethinkDB 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]
ReQL
editRethinkDB 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.
Popularity
editAccording to the DB-Engines ranking, as of February 2016, it was the 46th most popular database.[12]
Comparison with other document databases
editA 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]
Fork
editDue 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]
See also
editReferences
edit- ^ Jeremy Zawodny, RethinkDB: Rethinking the Database using Modern Assumptions[usurped], Linux Magazine, August 24, 2009
- ^ Jason Kincaid (July 28, 2009). "YC-Funded RethinkDB, A MySQL Storage Engine Built From The Ground Up For Solid State Drives". TechCrunch.
- ^ "Stripe hires engineering team behind failed database startup". FinTech Global. October 6, 2016.
- ^ "RethinkDB joins the Linux Foundation". Rethinkdb.com.
- ^ "RethinkDB is out: an open-source distributed database". Rethinkdb.com. Retrieved 2018-04-29.
- ^ "RethinkDB releases first production version of its real-time database". Siliconangle.com. 14 April 2015. Retrieved 2016-02-09.
- ^ Akhmechet, Slava (2016-10-05). "RethinkDB is shutting down - RethinkDB". Rethinkdb.com. Archived from the original on 2016-10-06.
- ^ Mewes, Daniel (2016-10-05). "Removed production support link from README :(". Github.com. Retrieved 2016-10-06.
- ^ "RethinkDB joins The Linux Foundation - RethinkDB". Rethinkdb.com. Retrieved 2017-02-06.
- ^ "CNCF Purchases RethinkDB Source Code and Contributes It to The Linux Foundation Under the Apache License - Cloud Native Computing Foundation". Cloud Native Computing Foundation. 2017-02-06. Retrieved 2017-02-06.
- ^ "Introducing the official RethinkDB Java client driver - RethinkDB". Rethinkdb.com. Retrieved 29 December 2018.
- ^ "DB-Engines Ranking". db-engines.com. Retrieved 26 December 2015.
- ^ "Changefeeds in RethinkDB". Retrieved 2 Dec 2016.
- ^ "GitHub discussion to fork RethinkDB". GitHub. Retrieved 24 May 2018.
- ^ "RebirthDB will merge to RethinkDB · RethinkDB". Spectrum. 2018-09-05. Archived from the original on 2018-11-09. Retrieved 2018-11-09.