Kuburitswa kwe rqlite 7.0, yakagoverwa kukanganisa-inoshivirira DBMS yakavakirwa paSQLite

Kuburitswa kweiyo yakagoverwa DBMS rqlite 7.0 kwakaitika, iyo inoshandisa SQLite sejini yekuchengetedza uye inobvumidza iwe kuronga basa resumbu kubva kune storages yakawiriraniswa nemumwe. Chimwe chezvinhu zve rqlite ndiko kureruka kwekugadzika, kutumirwa uye kuchengetedza kwekuchengetedza kwakagoverwa-kushivirira, kwakangofanana neetcd uye Consul, asi uchishandisa relational data model pachinzvimbo chekiyi / kukosha fomati. Iyo kodhi yeprojekiti yakanyorwa muGo uye yakagoverwa pasi peMIT rezenisi.

Kuchengeta node dzese dziri muyakawiriraniswa mamiriro, iyo Raft consensus algorithm inoshandiswa. Rqlite inoshandisa iyo yekutanga SQLite raibhurari uye go-sqlite3 mutyairi, pamusoro payo pakatangwa chigadziko chinogadzirisa zvikumbiro zvevatengi, chinodzokorora kune dzimwe node, uye inotarisisa kubudirira kwekubvumirana pakusarudza kweinotungamira node.

Shanduko kune dhatabhesi inogona chete kuitwa neiyo node inosarudzwa semutungamiri, asi kubatana nekunyora mashandiro kunogona zvakare kutumirwa kune dzimwe node musumbu, iyo inodzosera kero yemutungamiri kudzokorora chikumbiro (mune vhezheni inotevera ivo. vimbisa kuwedzera otomatiki kutumira zvikumbiro kumutungamiri). Chinonyanya kukoshesa chiri pakutadza kushivirira, saka DBMS inoyera chete nekuverenga mashandiro, uye kunyora mashandiro ndiwo bhodhoro. Zvinokwanisika kumhanyisa rqlite cluster kubva kune imwechete node uye iyi mhinduro inogona kushandiswa kupa mukana kune SQLite pamusoro peHTTP pasina kupa kukanganisa kushivirira.

Iyo data yeSQLite pane imwe neimwe node haina kuchengetwa mufaira, asi mundangariro. Payero yedhizaini nekuitwa kweiyo Raft protocol, danda remirairo yese yeSQLite inotungamira shanduko kune dhatabhesi inochengetwa. Iri regi rinoshandiswa panguva yekudzokorora (kudzokorora padanho rekuburitsa zvikumbiro pane dzimwe node), kana uchitanga node nyowani, kana kupora kubva pakurasikirwa kwekubatana. Kuti uderedze saizi yegiyo, otomatiki kurongedza kunoshandiswa, iyo inotanga mushure mehuwandu hwakatarwa hwekuchinja uye inotungamira kune kugadzirisa kweiyo snapshot, maererano neiyo gigi nyowani inotanga kuchengetedzwa (iyo mamiriro eiyo database mundangariro ndeye. yakafanana neiyo snapshot + iyo yakaunganidzwa shanduko yelogi).

Zvinoumba rqlite:

  • Zviri nyore kuendesa sumbu, pasina kudiwa kwekumisikidzwa kweSQLite kwakasiyana.
  • Kugona kukurumidza kuwana yakadzokororwa SQL kuchengetedza.
  • Yakagadzirira kushandiswa mumapurojekiti ekugadzira (yekugadzira-giredhi).
  • Kuvapo kweHTTP(S) API iyo inokutendera kuti uvandudze data mubatch modhi uye uone inotungamira node yesumbu. Mutsara wekuraira mutsara uye maraibhurari evatengi emitauro yakasiyana-siyana yekuronga anopihwa zvakare.
  • Kuvepo kwesevhisi yekuzivisa mamwe ma node, zvichikubvumidza kuti ugadzire masumbu zvine simba.
  • Tsigiro ye encrypting data exchange pakati node.
  • Kugona kugadzirisa chiyero chekutarisa kukosha uye kuenderana kwedata paunenge uchiverenga.
  • Sarudzo kugona kubatanidza node mukuverenga-chete modhi, iyo isingabatanidzi mukuona kubvumirana uye inoshandiswa kuwedzera scalability yeboka rekuverenga mashandiro.
  • Tsigiro yemhando yako yekutengeserana yakavakirwa pakubatanidza mirairo muchikumbiro chimwe (kutengeserana kunobva pa BEGIN, COMMIT, ROLLBACK, SAVEPOINT uye RELEASE hazvitsigirwe).
  • Tsigiro yekugadzira inopisa backups.

Mukuburitswa kutsva:

  • Yakawedzerwa rutsigiro rweotomatiki rqlite clustering uchishandisa itsva node yekuona sevhisi inogona kushanda pahwaro hweConsul uye etcd yakagoverwa kuchengetedza. Iyo sevhisi inobvumira rqlite node kuti iwane otomatiki - maneja anongoda kuburitsa akati wandei pamasevha akasiyana, achitsanangura iyo yakajairwa Consul kana etcd cluster kero (semuenzaniso, "example.com:8500"), uye node dzinozongoitika. zvakabatanidzwa kuita sumbu. Iyo inotungamira node nguva nenguva inogadziridza ruzivo nezvekero yayo muConsul kana etcd kuchengetedza, izvo zvinokutendera iwe kuti uchinje mutungamiriri pasina chikonzero chekugadzirisa dzimwe node, pamwe nekuwedzera nodhi nyowani kunyangwe mushure mekuchinja mutungamiri. Iyo legacy Discovery mode sevhisi inoshanda paAWS Lambda yakamiswa.
  • Iyo CLI interface inobvumira kutsanangura akati wandei kamwechete - kana yekutanga node isingawanikwe, anotevera mauto anozobatwa.
  • Akagadzirisazve kodhi yekuisa rqlited mutsara wemirairo nharo.
  • Iyo protobuf package yakaregedzwa yakamiswa.
  • Iyo BoltDB yekuchengetedza inoshandiswa mukuitwa kweRaft protocol yakatsiviwa nebbolt, forogo kubva kune etcd purojekiti.

Source: opennet.ru

Voeg