libSQL projekt püüab luua SQLite andmebaasi halduse süsteemi fork'i, mille fookus on avatus kogukonna arendajatele ning uuenduste edendamine, mis ületavad SQLite algse otstarbe. Fork'i loomise põhjuseks on piisavalt range SQLite poliitika väliste koodide vastuvõtmise osas kogukonnalt, olles ettepanekute edendamise osas.
Fork'i loojad soovivad säilitada ühilduvust põhiversiooniga SQLite ja hoida sama kvaliteeditaset, säilitades testimisstsenaariumide komplekti ja järk-järgult laiendades seda uute funktsioonide lisamisel. Uute funktsioonide arendamiseks soovitakse pakkuda võimalust kasutada Rust programmeerimiskeelt, hoides samal ajal põhiosas C keelt. Kui põhiprojekti SQLite poliitika muutub muudatuste vastuvõtmise osas, kavatseb libSQL arendajad edastada kogutud muudatused põhiprojekti ja liituda selle arendamisega.
SQLite funktsionaalsuse võimalikuks laiendamiseks mainitakse järgmisi ideid:
- Integreerimine tööriistadega jaotatud andmebaaside loomiseks, mis töötavad raamatukogu tasemel, mitte failisüsteemi muudatuste replikatsiooni kaudu (LiteFS), ning ilma eraldi toote arendamiseta (dqlite, rqlite, ChiselStore).
- Optimeerimine asünkroonsete API-de kasutamiseks, nagu Linuxi tuuma pakutav io_uring liides.
- SQLite kasutamine Linuxi tuumas, sarnanedes eBPF virtuaalmasina tuuma toetusega, olukordades, kus on vaja salvestada tuumast andmesetted, mis ei mahu mällu.
- Kasutaja määratletud funktsioonide tugi, kirjutatud mis tahes programmeerimiskeeltes ja kompileeritud WebAssembly vahefailiks.
Allikas: opennet.ru
