СУБД Dolt, позволяющая манипулировать данными в стиле Git

7 марта 2021 года

Проект Dolt развивает СУБД, сочетающую поддержку SQL со средствами версионирования данных в стиле Git. Dolt позволяет клонировать таблицы, создавать форки и выполнять слияния таблиц, а также выполнять операции push и pull по аналогии с действиями в git-репозитории. При этом СУБД поддерживает SQL-запросы и совместима с MySQL на уровне клиентских интерфейсов. Код проекта написан на языке Go и распространяется под лицензией Apache 2.0.

Возможности по версионированию данных в БД позволяют отслеживать происхождение данных (Архивная копия от 23 июня 2021 на Wayback Machine) - привязка к коммитам даёт возможность фиксировать состояние для получения идентичных результатов, которые независимо от текущего состояния в любое время могут быть повторены на других системах. Кроме того, пользователи могут перемещаться по истории, отслеживать изменения в таблицах при помощи SQL без необходимости сверки резервных копий, проводить аудит изменений, а также формировать запросы, охватывающие данные в определённый момент.

СУБД предоставляет два режима работы - Offline и Online. После перевода в offline содержимое БД становится доступно как репозиторий, с которым можно выполнять действия с использованием git-подобной утилиты командной строки. Работа во многом напоминает git и отличается главным образом тем, что изменения отслеживаются не для файлов, а для содержимого таблиц. Через предлагаемый CLI-интерфейс можно импортировать данные из файлов в формате CSV или JSON, добавлять коммиты с изменениями, выводить различия между версиями, создавать ветки, устанавливать теги, выполнять push-запросы к внешним серверам и выполнять слияния изменений, предложенных другими участниками.

При желании данные могут размещаться в каталоге DoltHub (Архивная копия от 10 марта 2021 на Wayback Machine), который можно рассматривать как аналог GitHub для размещения данных и совместной работы с данными. Пользователи могут создавать форки репозиториев данными, предлагать свои изменения и осуществлять слияния со своими данными. Например, в DoltHub можно найти различные БД со статистикой о коронавирусе, коллекциями аннотированных данных для систем машинного обучения, языковыми лексическими базами, коллекциями изображений, наборами для классификации объектов и информацией о принадлежности IP-адресов.

В режиме "online" запускается Dolt SQL Server, который позволяет манипулировать с данными при помощи языка SQL. Предоставляемый интерфейс близок к MySQL и может использоваться через подключение совместимых с MySQL клиентов или при помощи CLI-интерфейса (Архивная копия от 10 марта 2021 на Wayback Machine). При этом Dolt скорее является инструментом для манипулирования данными, чем системой обработки запросов. Например, по умолчанию (Архивная копия от 10 марта 2021 на Wayback Machine) SQL-сервер может обрабатывать только одно активное соединение пользователя к репозиторию, размещённому в текущей директории (через настройки данное поведение можно изменить). Возможен перевод сервера в режим только для чтения. Многие действия, связанные с управлением версиями, также можно выполнять через SQL, например, совершать коммиты или переключаться между ветками.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «СУБД Dolt, позволяющая манипулировать данными в стиле Git», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.