Dans cet article, nous allons analyser et discuter de RethinkDB, un sujet qui a suscité un grand intérêt et un grand débat dans la société d'aujourd'hui. À partir de différentes perspectives et approches, nous aborderons les aspects les plus pertinents et controversés liés à RethinkDB, dans le but de fournir une vue complète et détaillée sur ce sujet. Tout au long de cet article, nous explorerons son impact dans différents domaines, ainsi que les implications et conséquences qu’il entraîne. De même, nous examinerons les différentes opinions et positions sur la question, en proposant une analyse critique et objective. Grâce à cette analyse, nous visons à offrir une vue complète de RethinkDB et de sa pertinence aujourd'hui.
Première version | |
---|---|
Dernière version | 2.4.4 ()[1] |
Dépôt | RethinkDB sur GitHub |
État du projet | actif |
Écrit en | C++[2] |
Système d'exploitation | Type Unix |
Environnement | CentOS, Debian, OS X, Ubuntu |
Type | Système distribué de gestion de base de données (d) |
Licence | Apache License 2.0 |
Site web | Site officiel |
RethinkDB est un système de gestion de base de données orientée documents et distribuée. C'est un logiciel libre, sous licence Apache License 2.0.
RethinkDB est également le nom de l'entreprise qui développe le logiciel. Elle a été fondée le et son siège est situé à Mountain View, en Californie. Elle a été soutenue dès sa création par Y Combinator[3]. L'entreprise annonce sa fin en , en indiquant toutefois que le développement du produit doit se poursuivre par sa communauté[4]. L'équipe de développement rejoint alors Stripe.
Le développement de RethinkDB a débuté en 2009[5]. C'est au départ un outil basé sur MySQL et optimisé pour les disques SSD[6]. Une des idées de RethinkDB est alors de simplifier le travail du serveur en se débarrassant des caches de données[7]. Par exemple, le moteur de stockage InnoDB, présent dans MySQL, optimise ses accès aux disques durs en écrivant des séries de données, celles-ci étant physiquement proches les unes des autres sur le disque. Dans le cas d'un disque SSD, les données sont réparties sur tout le disque et il est donc inutile d'essayer de rassembler des données pour les écrire ensemble sur disque[8].
En , la version 1.0 de RethinkDB est publiée, avec d'importants changements par rapport au plan initial : le produit n'est plus basé sur MySQL et est adapté à tous les types de stockages (disques SSD, disques durs et cloud)[9].
En , RethinkDB est en position 67 du classement de popularité des bases de données établi par DB-Engines[10].
Il existe plusieurs groupes d'utilisateurs de RethinkDB se rencontrant régulièrement, notamment aux États-Unis, au Royaume-Uni et en Israël[11].
RethinkDB fait partie du mouvement NoSQL. Il permet de stocker des documents JSON[12].
RethinkDB dispose de son propre langage de requête : ReQL. C'est en fait une API qui permet d'interagir avec la base de données[13], pour toutes les opérations (CRUD, MapReduce[14], DDL, etc.). Un des points forts de ReQL est de permettre les jointures[15].