libSQL-projektet började utveckla en gaffel av SQLite DBMS

libSQL-projektet har försökt skapa en gaffel av SQLite DBMS, fokuserat på öppenhet för samhällsutvecklare och främja innovationer bortom det ursprungliga syftet med SQLite. Anledningen till att skapa gaffeln är SQLites ganska strikta policy när det gäller att acceptera tredjepartskod från gemenskapen om det finns ett behov av att främja förbättringar. Gaffelkoden distribueras under MIT-licensen (SQLite släpps som allmän egendom).

Skaparna av gaffeln avser att upprätthålla kompatibilitet med den huvudsakliga SQLite och behålla samma kvalitetsnivå, upprätthålla en uppsättning testfall och gradvis utöka den när innovationer läggs till. För att utveckla ny funktionalitet föreslås det att ge möjligheten att använda språket Rust, samtidigt som den grundläggande delen i C-språket bibehålls. Om SQLite-huvudprojektets policy för att acceptera ändringar ändras, avser libSQL-utvecklarna att överföra de ackumulerade ändringarna till huvudprojektet och gå med i dess utveckling.

Bland idéerna för eventuell expansion av SQLite-funktionalitet nämns:

  • Integration av verktyg för att bygga distribuerade databaser som fungerar på nivån för själva biblioteket, och inte genom replikering av ändringar i filsystemet (LiteFS), och utan utveckling av en separat produkt (dqlite, rqlite, ChiselStore).
  • Optimering för användning av asynkrona API:er, såsom io_uring-gränssnittet som tillhandahålls av Linux-kärnan.
  • Möjligheten att använda SQLite i Linux-kärnan, liknande stödet eBPF för virtuell maskinkärna, för situationer där det är nödvändigt att spara datamängder från kärnan som inte passar in i RAM-minnet.
  • Stöd för användardefinierade funktioner skrivna i valfritt programmeringsspråk och kompilerade till WebAssembly mellankod.

Källa: opennet.ru

Lägg en kommentar