Dqlite 1.0, toleo lililosambazwa la SQLite kutoka Canonical, linapatikana

Ya kisheria ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° kutolewa kwa mradi muhimu Dqlite 1.0 (Splited SQLite), ambayo hutengeneza SQLite iliyopachikwa injini inayooana na SQLite ambayo inasaidia urudufishaji wa data, urejeshaji kiotomatiki kutokana na kushindwa, na ustahimilivu wa hitilafu kwa kusambaza vidhibiti kwenye nodi nyingi. DBMS inatekelezwa kwa njia ya maktaba ya C iliyoambatanishwa na programu na kusambazwa na chini ya leseni ya Apache 2.0 (SQLite asili imetolewa katika kikoa cha umma). Vifungo vya lugha vinapatikana Go.

Maktaba ni nyongeza kwa msingi wa msimbo wa SQLite uliopo ambao huongeza usaidizi wa itifaki ya mtandao kwa kuunganisha matukio mengi ya programu inayoendeshwa kwenye wapangishaji tofauti. Programu iliyokusanywa na Dqlite inaweza kufanya kazi kama nguzo inayojitosheleza ya kustahimili makosa, isiyotegemea DBMS za nje. Kwa mazoezi, Dqlite inatumiwa na Canonical katika mfumo wake wa usimamizi wa kontena Lxd. Miongoni mwa maeneo ya utumiaji wa maktaba, uundaji wa vifaa na vichakataji vya mtandao vinavyostahimili makosa katika mifumo pia vimetajwa.
Makali- mahesabu.

Ili kuhakikisha uthabiti katika urudufishaji wa data, mbinu ya makubaliano ya msingi ya algorithm hutumiwa Raft, ambayo hutumika katika miradi kama vile etcd, RethinkDB, CockroachDB na OpenDaylight. Dqlite hutumia utekelezaji wake wa asynchronous C-raft, iliyoandikwa kwa lugha ya C. Maktaba zilizotengenezwa tayari hutumiwa kuchakata miunganisho ya kuzidisha na kupanga uzinduzi wa coroutines libuv ΠΈ libco.

Ikilinganishwa na mradi sawa rqlite,Dqlite hutoa usaidizi kamili wa shughuli, inaweza kuwasiliana, na mradi wowote wa C, inaruhusu matumizi ya kitendakazi cha time(), na ,hutumia urudufishaji kulingana na fremu badala ya utafsiri, urudufishaji wa SQL.

Vipengele vya Dqlite:

  • Fanya shughuli zote za diski na mtandao kwa usawa;
  • Uwepo wa seti ya jaribio ili kudhibitisha usahihi wa data;
  • Matumizi ya chini ya kumbukumbu na kubadilishana data kwa ufanisi kwenye mtandao;
  • Hifadhi ya kudumu ya database na logi ya shughuli kwenye diski (pamoja na uwezekano wa caching katika kumbukumbu);
  • kupona haraka kutokana na kushindwa;
  • Mteja thabiti wa CLI katika lugha ya Go, ambayo inaweza kutumika kuanzisha hifadhidata, kusanidi urudufishaji na kuunganisha/kuondoa nodi;
  • Inasaidia usanifu wa ARM, X86, POWER na IBM Z;
  • Utekelezaji wa algoriti ya Raft umeboreshwa ili kupunguza ucheleweshaji wakati wa kufanya miamala.

Chanzo: opennet.ru

Kuongeza maoni