rqlite, puikus lengvas paskirstytas reliacinis DBVS

Si ieškote paskirstytos DBVS kuris naudoja SQLite kaip saugojimo variklį, leiskite man tai pasakyti rqlite yra vienas jums, nes tai leidžia organizuoti klasterio darbą iš tarpusavyje sinchronizuotų saugyklų.

Iš „rqlite“ funkcijų pabrėžiamas paprastas montavimas, įgyvendinimas ir priežiūra paskirstytos saugyklos atsparus gedimams, kuris yra šiek tiek panašus į „etcd“ ir „Consul“, bet jis naudoja reliacinių duomenų modelį vietoj rakto / vertės formato.

Apie rqlite

Plausto konsensuso algoritmas naudojamas visų mazgų sinchronizavimui. Rqlite naudokite originalią „SQLite“ biblioteką ir „go-sqlite3“ tvarkyklę, be to, jis vykdo sluoksnį, kuris apdoroja kliento užklausas, atkartoja save kituose mazguose ir stebi pasiektą sutarimą dėl pagrindinio mazgo pasirinkimo.

Duomenų bazės pakeitimus gali atlikti tik mazgas, pasirinktas kaip lyderis, tačiau ryšius su rašymo operacijomis galima nukreipti į kitus klasterio mazgus, kurie grąžins vadovo adresą, kad pakartotų užklausą (kitoje versijoje jie žada pridėti automatinį skambučio persiuntimą lyderiui).

Pagrindinis dėmesys skiriamas tolerancijai gedimams, taigi DBVS mastelis tik skaitymo operacijose, ir rašymo operacijos yra kliūtis. „Rqlite“ klasterį galima paleisti iš vieno mazgo ir tokį sprendimą galima naudoti norint suteikti prieigą prie „SQLite“ per HTTP, nenumatant klaidų tolerancijos.

SQLite duomenys kiekviename mazge jie saugomi ne faile, o atmintyje. Sluoksnio lygiu įgyvendinant „Raft“ protokolą, įrašomos visos SQLite komandos, dėl kurių pasikeičia duomenų bazė.

Šis įrašas naudojamas replikavimui (replikavimui užklausos atkūrimo lygiu į kitus mazgus), pradedant naują mazgą, arba norint atkurti praradus ryšį.

Norint sumažinti įrašo dydį, naudojama automatinė pakuotė, kuri prasideda atlikus nurodytą skaičių pakeitimų ir lemia momentinę nuotrauką, prieš kurią prasideda naujas įrašas (atminties duomenų bazės būsena yra identiška momentinei nuotraukai + sukauptas pokyčių žurnalas).

Iš „rqlite“ funkcijų:

  • Klasterių diegimo paprastumas, nereikalaujant atskiro SQLite diegimo.
  • Galimybė greitai gauti pakartotinę SQL saugyklą.
  • Paruošta naudoti gamybos projektuose.
  • Prieinamumas HTTP (S) API, kuris leidžia atnaujinti duomenis paketiniu režimu ir nustatyti pagrindinį sankaupos mazgą. Taip pat pateikiama komandų eilutės sąsaja ir kliento bibliotekos įvairioms programavimo kalboms.
  • Paslaugos buvimas kitiems mazgams apibrėžti, leidžiantis dinamiškai kurti grupes.
  • Parama keičiantis duomenimis tarp mazgų šifravimui.
  • Gebėjimas pritaikyti tikrinant duomenų tinkamumą ir nuoseklumą skaitant.
  • Galimybė prijungti tik skaitomus mazgus, kurie nedalyvauja nustatant sutarimą ir naudojami siekiant padidinti klasterio skaitymo operacijų mastelį.
  • Savosios operacijų formos, pagrįstos komandų sujungimu vienoje užklausoje, palaikymas (operacijos, pagrįstos BEGIN, COMMIT, ROLLBACK, SAVEPOINT ir RELEASE, nepalaikomos).

Apie „rqlite 6.0“

Nauja versija pristato reikšmingus architektūros pakeitimus, kuriais siekiama pagerinti klasterių patikimumą tobulindami skaitymo ir rašymo užklausų nukreipimo į teisingus sankaupos mazgus procesą.

Rqlite linkteli dabar gali dauginti kelis loginius ryšius tarp jų naudojant TCP ryšius, kuriuos tarp mazgų užmezgė „Raft“ protokolas. Jei užklausai reikalingas lyderio mazgo autoritetas, tačiau ji siunčiama į antrinį mazgą, antrinis mazgas gali nustatyti lyderio adresą ir perduoti jį klientui, neatlikdamas „Raft“ konsensuso skaičiavimo.

Atlikus pakeitimą taip pat pašalintas atskiras metaduomenų sinchronizavimo komponentas ir pašalintas atskiras „Raft“ statuso ir metaduomenų tvarkymas.

Antriniai mazgai dabar siunčia užklausas į pagrindinį mazgą tik prireikus, kai reikia sužinoti pagrindinio mazgo adresą. API suteikia galimybę gauti informacijos apie kitų sankaupos mazgų būseną. „Sysdump“ komanda pridėta prie CLI.

Pagaliau jei norite sužinoti daugiau apie tai arba perskaitykite diegimo instrukcijas ir vartotojo vadovą, galite tai padaryti iš žemiau pateiktos nuorodos.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.