rqlite, lielisks viegls sadalīts relāciju DBVS

Si jūs meklējat izplatītu DBVS kas izmanto SQLite kā krātuves motoru, ļaujiet man to jums pateikt rqlite ir viens jums, jo tas ļauj organizēt klastera darbu no sinhronizētām krātuvēm savā starpā.

No rqlite funkcijām tiek uzsvērta uzstādīšanas, ieviešanas un apkopes vienkāršība sadalītās krātuves izturīgs pret kļūdām, kas ir nedaudz līdzīgs uttd un konsulam, bet atslēgas / vērtības formāta vietā tas izmanto relāciju datu modeli.

Par rqlite

Raft konsensa algoritms tiek izmantots, lai visi mezgli būtu sinhronizēti. Rqlite izmantojiet oriģinālo SQLite bibliotēku un go-sqlite3 draiveri, papildus tam izpilda slāni, kas apstrādā klienta pieprasījumus, atkārtojas citos mezglos un uzrauga panākto vienprātību par galvenā mezgla izvēli.

Izmaiņas datu bāzē var veikt tikai mezgls, kas izvēlēts kā vadītājs, bet savienojumus ar rakstīšanas operācijām var novirzīt uz citiem klastera mezgliem, kas atgriezīs vadītāja adresi, lai atkārtotu pieprasījumu (nākamajā versijā viņi sola pievienot automātisku zvana pāradresāciju vadītājam).

Galvenā uzmanība tiek pievērsta kļūdu tolerancei, tātad DBVS mērogs tikai lasīšanas operācijās, un rakstīšanas operācijas ir sašaurinājums. Ir iespējams palaist rqlite kopu no viena mezgla, un šādu risinājumu var izmantot, lai nodrošinātu piekļuvi SQLite, izmantojot HTTP, nenodrošinot kļūdu toleranci.

SQLite dati katrā mezglā tie netiek glabāti failā, bet gan atmiņā. Slāņa līmenī, izmantojot Raft protokolu, tiek reģistrētas visas SQLite komandas, kas noved pie izmaiņām datu bāzē.

Šis ieraksts tiek izmantots replikācijai (replikācijai vaicājuma atkārtojuma līmenī uz citiem mezgliem), startējot jaunu mezglu, vai atkopšanai pēc savienojuma zuduma.

Lai samazinātu ieraksta lielumu, tiek izmantots automātiskais iepakojums, kas sākas pēc noteikta izmaiņu skaita un noved pie momentuzņēmuma apstiprināšanas, pret kuru sākas jauns ieraksts (datu bāzes stāvoklis atmiņā ir identisks momentuzņēmumam + uzkrāto izmaiņu žurnāls).

No rqlite funkcijām:

  • Vienkārša klasteru izvietošana bez nepieciešamības pēc atsevišķas SQLite instalēšanas.
  • Spēja ātri iegūt atkārtotu SQL krātuvi.
  • Gatavs lietošanai ražošanas projektos.
  • Pieejamība HTTP (S) API, kas ļauj atjaunināt datus pakešrežīmā un noteikt kopas vadošo mezglu. Tiek nodrošināts arī komandrindas interfeiss un klienta bibliotēkas dažādām programmēšanas valodām.
  • Pakalpojuma klātbūtne citu mezglu noteikšanai, kas ļauj dinamiski izveidot kopas.
  • Atbalsts datu apmaiņas starp mezgliem šifrēšanai.
  • Spēja pielāgot datu atbilstības un konsekvences pārbaudes līmeni lasīšanas laikā.
  • Pēc izvēles iespēja savienot tikai lasāmus mezglus, kas nepiedalās vienprātības noteikšanā un tiek izmantoti, lai palielinātu klastera mērogojamību lasīšanas operācijām.
  • Atbalsts vietējai darījumu formai, kas balstīta uz komandu apvienošanu vienā pieprasījumā (netiek atbalstīti darījumi, kuru pamatā ir BEGIN, COMMIT, ROLLBACK, SAVEPOINT un RELEASE).

Par rqlite 6.0

Jaunā versija ievieš būtiskas arhitektūras izmaiņas, kuru mērķis ir uzlabot kopu uzticamību uzlabojot lasīšanas un rakstīšanas pieprasījumu novirzīšanas procesu pareizajos klastera mezglos.

Rqlite tagad pamāj var multipleksēt vairākus loģiskus savienojumus izmantojot TCP savienojumus, kas starp mezgliem izveidoti ar Raft protokolu. Ja pieprasījumam ir nepieciešama vadītāja mezgla autoritāte, bet tas tiek nosūtīts uz sekundāro mezglu, sekundārais mezgls var noteikt vadītāja adresi un nosūtīt to klientam, neveicot plosta konsensa aprēķinu.

Izmaiņas arī noņēma atsevišķu komponentu metadatu sinhronizēšanai un Raft atsevišķo statusu un metadatu apstrādi.

Sekundārie mezgli tagad nosūta pieprasījumus svina mezglam tikai nepieciešamības gadījumā, kad ir nepieciešams uzzināt svina mezgla adresi. API nodrošina iespēju iegūt informāciju par citu klastera mezglu statusu. Sysdump komanda ir pievienota CLI.

Beidzot ja jūs interesē uzzināt vairāk par to vai skatiet instalēšanas instrukcijas un lietotāja rokasgrāmatu, to varat izdarīt no saites zemāk.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.