СКБД Dolt, якая дазваляе маніпуляваць дадзенымі ў стылі Git

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

Магчымасці па версіяванні дадзеных у БД дазваляюць адсочваць паходжанне дадзеных - прывязка да комітов дае магчымасць фіксаваць стан для атрымання ідэнтычных вынікаў, якія незалежна ад бягучага стану ў любы час могуць быць паўтораны на іншых сістэмах. Акрамя таго, карыстачы могуць перамяшчацца па гісторыі, адсочваць змены ў табліцах пры дапамозе SQL без неабходнасці зверкі рэзервовых дзід, праводзіць аўдыт змен, а таксама фармаваць запыты, якія ахопліваюць дадзеныя ў вызначаны момант.

СКБД Dolt, якая дазваляе маніпуляваць дадзенымі ў стылі Git

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

Пры жаданні дадзеныя могуць размяшчацца ў каталогу DoltHub, які можна разглядаць як аналаг GitHub для размяшчэння дадзеных і сумеснай працы з дадзенымі. Карыстальнікі могуць ствараць форкі рэпазітараў дадзенымі, прапаноўваць свае змены і ажыццяўляць зліцця са сваімі дадзенымі. Напрыклад, у DoltHub можна знайсці розныя БД са статыстыкай аб каранавірусе, калекцыямі анатаваных дадзеных для сістэм машыннага навучання, моўнымі лексічнымі базамі, калекцыямі малюнкаў, наборамі для класіфікацыі аб'ектаў і інфармацыяй аб прыналежнасці IP-адрасоў.

У рэжыме "online" запускаецца Dolt SQL Server, які дазваляе маніпуляваць з дадзенымі пры дапамозе мовы SQL. Які прадстаўляецца інтэрфейс блізкі да MySQL і можа выкарыстоўвацца праз падлучэнне сумяшчальных з MySQL кліентаў або пры дапамозе CLI-інтэрфейсу. Пры гэтым Dolt хутчэй з'яўляецца прыладай для маніпулявання дадзенымі, чым сістэмай апрацоўкі запытаў. Напрыклад, па змаўчанні SQL-сервер можа апрацоўваць толькі адно актыўнае злучэнне карыстача да рэпазітара, змешчанага ў бягучай дырэкторыі (праз налады дадзеныя паводзіны можна змяніць). Магчымы перавод сервера ў рэжым толькі для чытання. Многія дзеянні, звязаныя з кіраваннем версіямі, таксама можна выконваць праз SQL, напрыклад, здзяйсняць коміты ці перамыкацца паміж галінкамі.

Крыніца: opennet.ru

Дадаць каментар