Nemrég jelentették be a Dolt projektet, amely egy olyan adatbázis-kezelő rendszert fejleszt , amely az SQL-támogatást Git-stílusú verziókövetéssel ötvözi. A Dolt érdekessége, hogy lehetővé teszi a felhasználók számára táblák klónozását, elágazását és egyesítését, valamint push és pull műveletek végrehajtását, hasonlóan a Git repositoryban végzett műveletekhez.
Ugyanakkor ez az adatbázis-kezelő rendszer támogatja az SQL lekérdezéseket, és kliensfelületen kompatibilis a MySQL-lel. A verziókövetési képességek lehetővé teszik a felhasználók számára az adatok eredetének nyomon követését, a commit linking pedig lehetővé teszi a javításokat az azonos eredmények elérése érdekében, amelyek az aktuális állapottól függetlenül bármikor replikálhatók más rendszereken.
Ezenkívül a felhasználók könnyedén navigálhatnak az előzményekben, valamint nyomon követhetik a táblázatok változásait SQL segítségével anélkül, hogy össze kellene hangolniuk a biztonsági mentéseket, auditálniuk kellene a változásokat, és olyan lekérdezéseket kellene generálniuk, amelyek egy adott ponton lefedik az adatokat.
A projekt lerakat oldalán az alkotó a következőképpen írja le Doltot:
A Dolt egy SQL adatbázis, amely képes elágazásra, klónozásra, egyesítésre, push-ra és pull-ra, mint egy Git adattár. Csatlakozz a Dolthoz, mint bármelyik MySQL adatbázishoz, lekérdezések futtatásához vagy adatok frissítéséhez SQL parancsokkal. Az összes Githez ismert parancs pontosan ugyanúgy működik a Doltban is. Git verziójú fájlok, Dolt verziójú táblázatok. Olyan, mintha Gitnek és MySQL-nek lett volna egy gyermeke!
Doltról
A DBMS kétféle működési módot kínál: offline és online.
- Offline módban a bontás után az adatbázis tartalma elérhetővé válik tárhelyként, amellyel egy gitszerű parancssori segédprogram segítségével végezhet műveleteket.
- A Dolt SQL Server "online" módban indul, amely lehetővé teszi az adatok manipulálását az SQL nyelv használatával. A mellékelt felület közel van a MySQL-hez, és használható MySQL-kompatibilis kliensek csatlakoztatásával vagy a CLI felület használatával.
Nagyon hasonlóan működik, mint a Git , főként abban különbözik, hogy a változásokat nem fájlok, hanem táblázatok tartalma alapján követi nyomon. A javasolt parancssori felületen keresztül importálhat adatokat CSV vagy JSON fájlokból, hozzáadhat commitokat a változásokkal, megjelenítheti a verziókülönbségeket, létrehozhat verziókat, címkéket állíthat be, kéréseket küldhet külső szerverekre, és egyesítheti a többi közreműködő által beküldött módosításokat.
Ha a felhasználó kívánja, az adatok elhelyezhetők a DoltHub könyvtárban, amely GitHub analógként tekinthető meg az adatok tárolására és az adatokon való együttműködésre. A felhasználók elágazhatnak az adattárakban, javasolhatnak változtatásokat és egyesülhetnek adataikkal.
Például a DoltHubon különféle adatbázisokat találhat koronavírus statisztikákkal, a gépi tanulási rendszerek kommentált adatgyűjteményeivel, nyelvi lexikális adatbázisokkal, képgyűjteményekkel, tárgyosztályozási készletekkel és IP-cím tulajdonságokkal kapcsolatos információkkal.
Ennek ellenére a Dolt inkább egy adatmanipulációs eszköz, mint egy lekérdezés-feldolgozó rendszer . Például alapértelmezés szerint az SQL szerver csak egy aktív felhasználói kapcsolatot tud kezelni az aktuális könyvtárban található adattárral (ez a viselkedés konfiguráción keresztül módosítható). A szervert írásvédett módba lehet állítani. Számos verziókövetési művelet is elvégezhető SQL-en keresztül, például commitolás vagy ágak közötti váltás.
Végül, ha többet szeretnél megtudni erről az adatbázis-kezelő rendszerről, tudnod kell, hogy a projekt kódja a GitHubon található, Go nyelven íródott és Apache 2.0 licenc alatt terjeszthető.
Hogyan lehet a Doltot Linuxra telepíteni?
Azok számára, akik szeretnék telepíteni ezt a DBMS-t a rendszerükbe, tudnia kell, hogy a Dolt többplatformos, és akik Linuxot használunk, a telepítést egy terminál megnyitásával és a következő parancs végrehajtásával hajthatjuk végre:
sudo bash -c 'curl -L https://github.com/dolthub/dolt/releases/latest/download/install.sh | bash'