Récemment le projet Dolt a été dévoilé, qui se développe un système de gestion de base de données qui combine la prise en charge de SQL avec le contrôle de version des données de style Git. La chose intéressante à propos de Dolt est qu'il permet à l'utilisateur de cloner des tables, de créer des branches, de fusionner des tables et d'effectuer des opérations push et pull similaires à celles d'un référentiel git.
En même temps, ce système de gestion de base de données prend en charge les requêtes SQL et est compatible avec MySQL au niveau de l'interface client. Les possibilités de versionnage des données permettent à l'utilisateur de retracer l'origine des données, ainsi que le lien vers les confirmations qui permet de corriger l'état pour obtenir des résultats identiques, qui, quel que soit l'état actuel, peuvent être répétés dans d'autres systèmes dans n'importe quel moment.
En plus de cela les utilisateurs ont la possibilité de parcourir l'historique, ainsi que de suivre les changements de table à l'aide de SQL sans avoir besoin de réconcilier les sauvegardes, d'auditer les modifications et de générer également des requêtes qui couvrent les données à un moment donné.
Sur la page du référentiel du projet, le créateur décrit Dolt comme suit:
Dolt est une base de données SQL que vous pouvez bifurquer, cloner, bifurquer, fusionner, pousser et extraire comme un référentiel git. Connectez-vous à Dolt comme n'importe quelle base de données MySQL pour exécuter des requêtes ou mettre à jour des données à l'aide de commandes SQL. Toutes les commandes que vous connaissez pour Git fonctionnent exactement de la même manière pour Dolt. Fichiers de version Git, tables de version Dolt. C'est comme si Git et MySQL avaient un bébé!
À propos de Dolt
Le SGBD pIl propose deux modes de fonctionnement: hors ligne et en ligne.
- En mode hors ligne après la déconnexion, le contenu de la base de données devient disponible en tant que référentiel, avec lequel vous pouvez effectuer des actions à l'aide d'un utilitaire de ligne de commande de type git.
- Dolt SQL Server est lancé en mode «en ligne», ce qui permet la manipulation des données à l'aide du langage SQL. L'interface fournie est proche de MySQL et peut être utilisée en connectant des clients compatibles MySQL ou en utilisant l'interface CLI.
Cela fonctionne très similaire à git et il diffère principalement en ce que les modifications ne sont pas suivies pour les fichiers, mais pour le contenu des tableaux. Grâce à la CLI proposée, vous pouvez importer des données à partir de fichiers CSV ou JSON, ajouter des validations avec des modifications, afficher les différences entre les versions, créer des versions, définir des balises, soumettre des demandes à des serveurs externes et combiner les modifications soumises par d'autres contributeurs.
Si l'utilisateur le souhaite, les données peuvent être placées dans le répertoire DoltHub, qui peut être considéré comme un analogique GitHub pour héberger des données et collaborer sur des données. Les utilisateurs peuvent créer des référentiels de données, proposer des modifications et fusionner avec leurs données.
Par exemple, sur DoltHub, vous pouvez trouver diverses bases de données avec des statistiques sur les coronavirus, des collections de données annotées pour les systèmes d'apprentissage automatique, des bases de données lexicales de langage, des collections d'images, des kits de classification d'objets et des informations de propriété d'adresse IP.
Cela dit, Dolt est plus un outil de manipulation de données qu'un système de traitement de requêtes. Par exemple, par défaut, le serveur SQL ne peut gérer qu'une seule connexion utilisateur active au référentiel situé dans le répertoire en cours (ce comportement peut être modifié via la configuration). Il est possible de mettre le serveur en lecture seule. De nombreuses actions liées au contrôle de version peuvent également être effectuées via SQL, telles que la validation ou le basculement entre les branches.
Enfin, si vous souhaitez en savoir plus de ce système de gestion de base de données, ils doivent savoir que le code du projet est sur GitHub, Il est écrit dans le langage Go et est distribué sous la licence Apache 2.0.
Comment installer Dolt sur Linux?
Pour ceux qui souhaitent pouvoir installer ce SGBD sur leur système, ils doivent savoir que Dolt est multiplateforme et dans le cas de ceux d'entre nous qui utilisent Linux, nous pouvons effectuer l'installation en ouvrant un terminal et en exécutant la commande suivante:
sudo bash -c 'curl -L https://github.com/dolthub/dolt/releases/latest/download/install.sh | bash'