DBMS Dolt, allowing you to manipulate data in the style of Git

The Dolt project develops a DBMS that combines SQL support with Git-style data versioning tools. Dolt allows you to clone tables, fork and merge tables, and perform push and pull operations similar to what you would do in a git repository. At the same time, the DBMS supports SQL queries and is compatible with MySQL at the level of client interfaces. The project code is written in Go and distributed under the Apache 2.0 license.

Data versioning capabilities in the database allow you to track the origin of data - binding to commits makes it possible to fix the state to obtain identical results, which, regardless of the current state, can be repeated on other systems at any time. In addition, users can navigate through history, track changes to tables using SQL without the need to verify backups, audit changes, and create queries that cover data at a certain point in time.

DBMS Dolt, allowing you to manipulate data in the style of Git

The DBMS provides two modes of operation - Offline and Online. Once taken offline, the contents of the database become available as a repository that can be manipulated using a git-like command line utility. The work is very similar to git and differs mainly in that changes are tracked not for files, but for the contents of tables. Through the provided CLI interface, you can import data from CSV or JSON files, add commits with changes, display differences between versions, create branches, set tags, push requests to external servers, and merge changes proposed by other contributors.

If desired, data can be hosted in the DoltHub directory, which can be thought of as a GitHub equivalent for data hosting and data collaboration. Users can fork data repositories, propose changes, and merge with their data. For example, in DoltHub you can find various databases with coronavirus statistics, annotated data collections for machine learning systems, language lexical bases, image collections, object classification sets, and IP address ownership information.

In the "online" mode, Dolt SQL Server is launched, which allows you to manipulate data using the SQL language. The provided interface is close to MySQL and can be used by connecting MySQL-compatible clients or using the CLI interface. At the same time, Dolt is more of a tool for manipulating data than a query processing system. For example, by default, the SQL server can handle only one active user connection to the repository located in the current directory (this behavior can be changed through the settings). It is possible to set the server to read-only mode. Many versioning related actions can also be performed via SQL, such as making commits or switching between branches.

Source: opennet.ru

Add a comment