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

Kuburitswa kweiyo yakagoverwa DBMS rqlite 6.0 inoratidzwa, iyo inoshandisa SQLite sejini yekuchengetedza uye inobvumidza iwe kuronga basa resumbu rezvicherwa zvakawiriraniswa. 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 yakajairwa go-sqlite3 mutyairi, pamusoro payo panotangwa dhizaini iyo inogadzirisa zvikumbiro zvevatengi, inodzokorora 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 pakushivirira kukanganisa, 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 SQLite data pane imwe neimwe node haina kuchengetwa mufaira, asi mundangariro. Payero yedhizaini nekuitwa kweiyo Raft protocol, logi yeese SQLite mirairo inotungamira kune shanduko mudhatabhesi inochengetwa. Iri logi rinoshandiswa panguva yekudzokorora (kudzokorora padanho rekuburitsa zvikumbiro pane dzimwe node), kutanga node nyowani, kana kupora kubva mukurasikirwa kwekubatana. Kuti uderedze saizi yegiyo, kurongedza otomatiki kunoshandiswa, kunotanga mushure mehuwandu hwakatarwa hwekuchinja uye kunotungamira kune snapshot inogadziriswa pa diski, maererano neiyo giyo nyowani inotanga kuchengetwa (iyo mamiriro eiyo database mundangariro. 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 ekushanda (Kugadzirwa-giredhi).
  • Kuvapo kweHTTP(S) API iyo inokutendera kuti uvandudze data mubatch modhi uye uone inotungamira node yesumbu. Inopawo mutsara wekuraira uye kugona kushandisa akasiyana evatengi maraibhurari akavakirwa SQLite.
  • 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.

Kuburitswa kutsva kunounza shanduko dzakakosha dzekuvaka dzine chinangwa chekuwedzera kuvimbika kweboka nekuvandudza maitiro ekufambisa kuverenga nekunyora zvikumbiro kune chaiyo cluster node. rqlite nodes ikozvino inogona kuwanda yakawanda inonzwisisika yekubatanidza pakati pavo vachishandisa TCP yekubatanidza yakasimbiswa pakati penodhi neRaft protocol. Kana chikumbiro chichida chiremera chemutungamiri asi chikatumirwa kune yechipiri node, yechipiri node inogona kuona kero yemutungamiri uye kuipfuudza kumutengi pasina kuita Raft kubvumirana kuverenga.

Shanduko iyi yakabvisawo kudiwa kweimwe metadata yekubatanidza chikamu uye yakabvisa yakaparadzana kubata kweRaft state uye metadata. Sekondari node ikozvino inotumira zvikumbiro kune mutungamiri node chete kana zvichidikanwa, pavanenge vachida kutsvaga kero yemutungamiri node. Iyo API inopa kugona kuwana ruzivo nezve mamiriro emamwe ma node musumbu. Murairo we ".sysdump" wawedzerwa kune yekuraira mutsara interface.

Source: opennet.ru

Voeg