Το έργο libSQL άρχισε να αναπτύσσει ένα fork του SQLite DBMS

Το έργο libSQL προσπάθησε να δημιουργήσει ένα fork του SQLite DBMS, εστιασμένο στο άνοιγμα στη συμμετοχή των προγραμματιστών της κοινότητας και στην προώθηση καινοτομιών πέρα ​​από τον αρχικό σκοπό του SQLite. Ο λόγος για τη δημιουργία του fork είναι η αρκετά αυστηρή πολιτική της SQLite σχετικά με την αποδοχή κώδικα τρίτων από την κοινότητα εάν υπάρχει ανάγκη προώθησης βελτιώσεων. Ο κωδικός πιρουνιού διανέμεται υπό την άδεια MIT (το SQLite κυκλοφορεί ως δημόσιος τομέας).

Οι δημιουργοί του πιρουνιού σκοπεύουν να διατηρήσουν τη συμβατότητα με το κύριο SQLite και να διατηρήσουν το ίδιο επίπεδο ποιότητας, διατηρώντας ένα σύνολο δοκιμαστικών περιπτώσεων και επεκτείνοντάς το σταδιακά καθώς προστίθενται καινοτομίες. Για την ανάπτυξη νέας λειτουργικότητας, προτείνεται να παρέχεται η δυνατότητα χρήσης της γλώσσας Rust, διατηρώντας παράλληλα το βασικό μέρος στη γλώσσα C. Εάν αλλάξει η πολιτική του κύριου έργου SQLite σχετικά με την αποδοχή αλλαγών, οι προγραμματιστές libSQL σκοπεύουν να μεταφέρουν τις συσσωρευμένες αλλαγές στο κύριο έργο και να συμμετάσχουν στην ανάπτυξή του.

Μεταξύ των ιδεών για πιθανή επέκταση της λειτουργικότητας του SQLite αναφέρονται:

  • Ενοποίηση εργαλείων για τη δημιουργία κατανεμημένων βάσεων δεδομένων που λειτουργούν στο επίπεδο της ίδιας της βιβλιοθήκης και όχι μέσω αναπαραγωγής αλλαγών στο σύστημα αρχείων (LiteFS) και χωρίς την ανάπτυξη ξεχωριστού προϊόντος (dqlite, rqlite, ChiselStore).
  • Βελτιστοποίηση για χρήση ασύγχρονων API, όπως η διεπαφή io_uring που παρέχεται από τον πυρήνα του Linux.
  • Η δυνατότητα χρήσης του SQLite στον πυρήνα του Linux, παρόμοια με την υποστήριξη πυρήνα εικονικής μηχανής eBPF, για περιπτώσεις όπου είναι απαραίτητο να αποθηκεύσετε σύνολα δεδομένων από τον πυρήνα που δεν χωρούν στη μνήμη RAM.
  • Υποστήριξη για συναρτήσεις που καθορίζονται από το χρήστη γραμμένες σε οποιαδήποτε γλώσσα προγραμματισμού και μεταγλωττισμένες σε ενδιάμεσο κώδικα WebAssembly.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο