Nedávno bol ohlásený projekt Dolt, ktorý vyvíja systém správy databáz, ktorý kombinuje podporu SQL s riadením verzií v štýle Git. Zaujímavé na Dolt je, že umožňuje používateľom klonovať tabuľky, rozvetviť a zlúčiť tabuľky a vykonávať operácie push a pull podobné tým v repozitári Git.
Zároveň tento systém správy databáz podporuje SQL dotazy a je kompatibilný s MySQL na úrovni klientskeho rozhrania. Funkcie verzovania umožňujú používateľom sledovať pôvod údajov a prepojenie commitov umožňuje opravy na dosiahnutie identických výsledkov, ktoré je možné bez ohľadu na aktuálny stav kedykoľvek replikovať v iných systémoch.
Okrem toho môžu používatelia jednoducho prechádzať históriou a sledovať zmeny v tabuľkách pomocou SQL bez nutnosti zosúlaďovania záloh, auditovania zmien a tiež generovania dotazov, ktoré pokrývajú údaje v konkrétnom bode.
Na stránke archívu projektu tvorca popisuje Dolta takto:
Dolt je SQL databáza, ktorá dokáže forkovať, klonovať, zlučovať, odosielať a vyťahovať dáta ako Git repozitár. Pripojte sa k Doltu rovnako ako ku akejkoľvek MySQL databáze a spúšťajte dotazy alebo aktualizujte dáta pomocou SQL príkazov. Všetky príkazy, ktoré poznáte pre Git, fungujú pre Dolt úplne rovnako. Súbory verzií Gitu, tabuľky verzií Doltu. Je to, akoby Git a MySQL mali dieťa!
O spoločnosti Dolt
Systém DBMS ponúka dva prevádzkové režimy: offline a online.
- V offline režime po odpojení sa obsah databázy stane dostupným ako úložisko, v ktorom môžete vykonávať akcie pomocou obslužného programu príkazového riadku podobného git.
- Dolt SQL Server sa spúšťa v „online“ režime, ktorý umožňuje manipuláciu s údajmi pomocou jazyka SQL. Poskytované rozhranie je blízke MySQL a je možné ho použiť pripojením klientov kompatibilných s MySQL alebo použitím rozhrania CLI.
Funguje veľmi podobne ako Git , líši sa hlavne tým, že zmeny sa nesledujú v súboroch, ale v obsahu tabuliek. Prostredníctvom navrhovaného rozhrania CLI môžete importovať dáta zo súborov CSV alebo JSON, pridávať commity so zmenami, zobrazovať rozdiely vo verziách, vytvárať verzie, nastavovať značky, odosielať požiadavky na externé servery a zlučovať zmeny odoslané inými prispievateľmi.
Ak si to používateľ želá, údaje môžu byť umiestnené v adresári DoltHub, ktorý je možné zobraziť ako analóg GitHub na hosťovanie údajov a spoluprácu na nich. Používatelia môžu rozširovať úložiská údajov, navrhovať zmeny a zlúčiť sa so svojimi údajmi.
Napríklad na DoltHub nájdete rôzne databázy so štatistikami koronavírusu, zbierkami anotovaných údajov pre systémy strojového učenia, jazykovými lexikálnymi databázami, zbierkami obrazov, súpravami klasifikácie objektov a vlastnosťami informácií o IP adrese.
Dolt je však skôr nástroj na manipuláciu s dátami ako systém na spracovanie dotazov . Napríklad SQL server dokáže štandardne spracovať iba jedno aktívne používateľské pripojenie k repozitáru nachádzajúcemu sa v aktuálnom adresári (toto správanie je možné zmeniť konfiguráciou). Server je možné prepnúť do režimu iba na čítanie. Mnoho akcií správy verzií je možné vykonávať aj prostredníctvom SQL, ako napríklad potvrdenie zmien alebo prepínanie medzi vetvami.
Nakoniec, ak máte záujem dozvedieť sa viac o tomto systéme správy databáz, mali by ste vedieť, že kód projektu je na GitHub, je napísaný v jazyku Go a je distribuovaný pod licenciou Apache 2.0.
Ako nainštalovať Dolt na Linuxe?
Pre tých, ktorí majú záujem o inštaláciu tohto DBMS do svojho systému, by mali vedieť, že Dolt je multiplatformový a v prípade tých z nás, ktorí používajú Linux, môžeme vykonať inštaláciu otvorením terminálu a vykonaním nasledujúceho príkazu:
sudo bash -c 'curl -L https://github.com/dolthub/dolt/releases/latest/download/install.sh | bash'