A libSQL projekt megpróbálta létrehozni az SQLite DBMS forkját, amely a nyitottságra összpontosít a közösségi fejlesztők részvételéhez és az SQLite eredeti célját túllépő újítások előmozdításához. A fork létrehozásának okaként említik az SQLite meglehetősen szigorú politikáját a közösségtől származó külső kód befogadásával kapcsolatban, amely szükségessé vált a fejlesztések támogatásához. A fork kódja MIT licenc alatt terjed, míg az SQLite közkinccsé van nyilvánítva.
A fork készítői szándékoznak megőrizni a kompatibilitást az alap SQLite-tal és ugyanazt a minőségi szintet fenntartani, megtartva a tesztelési forgatókönyvek készletét, és fokozatosan bővíteni azt az újítások hozzáadásával. Az új funkciók fejlesztéséhez javasolják a Rust nyelv használatának lehetőségét, miközben a fő részt C nyelven tartják. Ha az SQLite alapprojekt politikája megváltozik a módosítások befogadásával kapcsolatban, a libSQL fejlesztői szándékoznak átkonvertálni a felhalmozott változtatásokat az alapprojekthez és csatlakozni annak fejlesztéséhez.
Az SQLite funkcionalitásának esetleges bővítésével kapcsolatos ötletek között említést nyert:
- Olyan eszközök integrálása, amelyek lehetővé teszik a megosztott adatbázisok létrehozását, amelyek működnek a könyvtáron belül, nem pedig a fájlrendszer változásainak replikálásával (LiteFS), és nem igényelnek külön termék fejlesztését (dqlite, rqlite, ChiselStore).
- Optimalizálás az aszinkron API-k, például a Linux kernel által biztosított io_uring interfész használatához.
- A SQLite Linux kernelben való használatának lehetősége, hasonlóan az eBPF virtuális gép kernel támogatásához, az olyan helyzetekben, amikor adatcsoportokat kell megőrizni a kernelből, amelyek nem férnek el a RAM-ban.
- Felhasználó által definiált funkciók támogatása, amelyek bármilyen programozási nyelven íródtak és WebAssembly közbenső kódra lettek lefordítva.
Forrás: opennet.ru
