libSQL 項目開始開發 SQLite DBMS 的分支

libSQL 項目試圖創建一個 SQLite 數據庫的分支,專注於開放社區開發人員參與並促進創新,超越 SQLite 的初衷。 給出 fork 的原因是 SQLite 在需要促進改進時接受來自社區的第三方代碼的相當嚴格的政策。 fork 的代碼是在 MIT 許可下分發的(SQLite 屬於公共領域)。

分支的創建者打算保持與主要 SQLite 的兼容性並保持相同的質量水平,維護一組測試用例並隨著新功能的添加逐漸擴展它。 為了開發新功能,建議提供使用 Rust 語言的能力,同時保持 C 語言中的基礎部分。 如果主 SQLite 項目關於接受更改的政策發生變化,libSQL 開發人員打算將累積的更改轉移到主項目並加入其開發。

提到了可能擴展 SQLite 功能的想法:

  • 集成用於構建在庫本身級別工作的分佈式數據庫的工具,而不是通過複製文件系統 (LiteFS) 中的更改,並且無需開發單獨的產品(dqlite、rqlite、ChiselStore)。
  • 優化使用異步API,例如Linux內核提供的io_uring接口。
  • 在 Linux 內核中使用 SQLite 的能力,類似於 eBPF 虛擬機內核中的支持,用於需要從內核中保存不適合 RAM 的數據集的情況。
  • 支持用任何編程語言編寫並編譯成 WebAssembly 中間代碼的用戶定義函數。

來源: opennet.ru

添加評論