Projekt libSQL je začel razvijati razcep SQLite DBMS

Projekt libSQL je poskušal ustvariti razcep baze podatkov SQLite, osredotočen na odprtost za sodelovanje razvijalcev skupnosti in spodbujanje inovacij, ki presegajo prvotni namen SQLite. Razlog za fork je dokaj stroga politika SQLite o sprejemanju kode tretjih oseb od skupnosti, ko je treba pospešiti izboljšave. Koda za fork se distribuira pod licenco MIT (SQLite je v javni domeni).

Ustvarjalci forka nameravajo ohraniti združljivost z glavnim SQLiteom in ohraniti enako raven kakovosti, obdržati nabor testnih primerov in ga postopoma širiti z dodajanjem novih funkcij. Za razvoj nove funkcionalnosti je predlagano, da se zagotovi možnost uporabe jezika Rust, medtem ko se osnovni del ohrani v jeziku C. V primeru, da se spremeni politika glavnega projekta SQLite glede sprejemanja sprememb, nameravajo razvijalci libSQL akumulirane spremembe prenesti v glavni projekt in se vključiti v njegov razvoj.

Med idejami za morebitno razširitev funkcionalnosti SQLite so omenjeni:

  • Integracija orodij za gradnjo porazdeljenih baz podatkov, ki delujejo na ravni same knjižnice in ne prek replikacije sprememb v datotečnem sistemu (LiteFS) in brez razvoja ločenega izdelka (dqlite, rqlite, ChiselStore).
  • Optimizacija za uporabo asinhronih API-jev, kot je vmesnik io_uring, ki ga zagotavlja jedro Linuxa.
  • Možnost uporabe SQLite v jedru Linuxa, podobno podpori v jedru navideznega stroja eBPF, za situacije, ko morate shraniti nize podatkov iz jedra, ki ne ustrezajo RAM-u.
  • Podpora za uporabniško definirane funkcije, napisane v katerem koli programskem jeziku in prevedene v vmesno kodo WebAssembly.

Vir: opennet.ru

Dodaj komentar