I-Dqlite 1.0, inguqulo esabalalisiwe ye-SQLite evela kuCanonical, iyatholakala

Inkampani yeCanonical eshicilelwe ukukhishwa okukhulu kwephrojekthi I-Dqlite 1.0 (Distributed SQLite), ethuthukisa injini ye-SQLite eshumekiwe ehambisana ne-SQLite esekela ukuphindaphinda kwedatha, ukutakula okuzenzakalelayo kusukela ekuhlulekeni, kanye nokubekezelela amaphutha ngokusabalalisa izibambi kumanodi amaningi. I-DBMS isetshenziswa ngendlela yomtapo wolwazi C oxhunywe kwizicelo kanye isatshalaliswa ngu ngaphansi kwelayisensi ye-Apache 2.0 (i-SQLite yasekuqaleni inikezwa esizindeni somphakathi). Ukubophezela kolimi kuyatholakala Go.

Ilabhulali iyisengezo ku-codebase ekhona ye-SQLite enezela ukwesekwa kwephrothokholi yenethiwekhi yokuxhumanisa izimo eziningi zohlelo lokusebenza olusebenza kubasingathi abahlukahlukene. Uhlelo lokusebenza oluhlanganiswe ne-Dqlite lungasebenza njengeqoqo elikwazi ukubekezelela iphutha, elizimele kuma-DBMS angaphandle. Empeleni, i-Dqlite isetshenziswa yiCanonical ohlelweni lwayo lokuphatha iziqukathi I-LXD. Phakathi kwezindawo zokusetshenziswa komtapo wolwazi, ukudalwa kwamadivayisi abekezelela amaphutha e-inthanethi Yezinto namaphrosesa kumasistimu kuyashiwo.
I-Edge- izibalo.

Ukuqinisekisa ukuvumelana ekuphindaphindweni kwedatha, kusetshenziswa indlela yokuvumelana esekwe ku-algorithm Raft, esetshenziswa kumaphrojekthi afana nokunyed, RethinkDB, CockroachDB kanye ne-OpenDaylight. I-Dqlite isebenzisa ukuqaliswa kwayo kwe-asynchronous I-C-raft, ebhalwe ngolimi C. Imitapo yolwazi eyenziwe ngomumo isetshenziselwa ukucubungula uxhumano lwe-multiplex nokuhlela ukwethulwa kwama-coroutines libuv ΠΈ libco.

Uma kuqhathaniswa nephrojekthi efanayo rqlite,I-Dqlite inikeza ukwesekwa okugcwele kokwenziwe, ingakwazi ukuxhumana, nanoma iyiphi iphrojekthi ye-C, ivumela ukusetshenziswa komsebenzi wesikhathi(), futhi, isebenzisa ukuphindaphinda okusekelwe kuhlaka esikhundleni sokuphindaphinda okusekelwe ku-SQL.

Izici ze-Dqlite:

  • Yenza yonke imisebenzi yediski nenethiwekhi ngendlela esynchronously;
  • Ukutholakala kwesethi yokuhlola ukuze kuqinisekiswe ukunemba kwedatha;
  • Ukusetshenziswa kwememori okuphansi kanye nokushintshisana kwedatha okuphumelelayo kunethiwekhi;
  • Ukugcinwa unomphela kwe-database kanye nelogi yokuthengiselana kudiski (ngethuba lokugcinwa kwesikhashana kumemori);
  • Ukululama ngokushesha ekuhlulekeni;
  • Iklayenti le-CLI elizinzile ngolimi lwe-Go, elingasetshenziswa ukuqalisa isizindalwazi, ukulungisa ukuphindaphinda nokuxhuma/ukunqamula amanodi;
  • Isekela izakhiwo ze-ARM, X86, POWER kanye ne-IBM Z;
  • Ukuqaliswa kwe-algorithm ye-Raft kuthuthukiswe ukuze kuncishiswe ukubambezeleka lapho kwenziwa imisebenzi.

Source: opennet.ru

Engeza amazwana