rqlite, vynikajúci distribuovaný a ľahký relačný DBMS

Si hľadáte distribuovaný DBMS ktorý používa SQLite ako úložný modul, poviem vám to rqlite je ten pre vás, pretože umožňuje organizovať prácu klastra z úložných priestorov navzájom synchronizovaných.

Z funkcií rqlite, zdôrazňuje sa ľahká inštalácia, implementácia a údržba distribuovaného úložiska odolný voči chybám, ktorý je trochu podobný programom etcd a Consul, ale namiesto formátu kľúč / hodnota používa relačný dátový model.

O rqlite

Na zaistenie synchronizácie všetkých uzlov sa používa algoritmus Raft konsenzus. Rqlite použite originálnu knižnicu SQLite a ovládač go-sqlite3, okrem toho vykoná vrstvu, ktorá spracováva požiadavky klientov, replikuje sa v ďalších uzloch a sleduje dosiahnutý konsenzus pri výbere hlavného uzla.

Zmeny v databáze môže vykonať iba uzol vybraný ako vedúci, ale spojenia s operáciami zápisu je možné smerovať do ďalších uzlov v klastri, ktoré vrátia adresu vedúceho, aby požiadavku zopakoval (v ďalšej verzii sľubujú pridanie automatického preposlania hovoru vedúcemu).

Hlavné zameranie je na odolnosť proti chybám, teda DBMS mierka iba pri operáciách čítania, a úzkym miestom sú operácie zápisu. Je možné spustiť klaster rqlite z jedného uzla a takéto riešenie je možné použiť na zabezpečenie prístupu k SQLite cez HTTP bez poskytovania odolnosti proti chybám.

Údaje SQLite v každom uzle nie sú uložené v súbore, ale v pamäti. Na úrovni vrstiev s implementáciou protokolu Raft sa vedie záznam o všetkých príkazoch SQLite, ktoré vedú k zmene v databáze.

Tento záznam sa používa na replikáciu (replikáciu na úrovni prehrávania dotazu do iných uzlov), pri spustení nového uzla alebo na zotavenie po strate konektivity.

Na zmenšenie veľkosti záznamu sa používa automatické zabalenie, ktoré sa spustí po stanovenom počte zmien a vedie k potvrdeniu snímky, proti ktorej sa začne nový záznam (stav databázy v pamäti je totožný so snímkou ​​+ akumulovaný protokol zmien).

Z funkcií rqlite:

  • Jednoduché nasadenie klastra bez potreby samostatnej inštalácie SQLite.
  • Schopnosť rýchlo získať replikované úložisko SQL.
  • Pripravené na použitie vo výrobných projektoch.
  • Dostupnosť rozhrania HTTP (S) API, ktoré umožňuje aktualizáciu údajov v dávkovom režime a určenie vedúceho uzla klastra. K dispozícii je tiež rozhranie príkazového riadku a klientske knižnice pre rôzne programovacie jazyky.
  • Prítomnosť služby definujúcej ďalšie uzly, ktorá umožňuje dynamicky vytvárať klastre.
  • Podpora šifrovania výmeny údajov medzi uzlami.
  • Schopnosť prispôsobiť úroveň kontroly relevantnosti a konzistencie údajov pri čítaní.
  • Voliteľná možnosť pripojenia uzlov iba na čítanie, ktoré sa nezúčastňujú na určovaní konsenzu a používajú sa na zvýšenie škálovateľnosti klastra pre operácie čítania.
  • Podpora natívnej formy transakcií na základe kombinovania príkazov v jednej požiadavke (transakcie založené na BEGIN, COMMIT, ROLLBACK, SAVEPOINT a RELEASE nie sú podporované).

Informácie o rqlite 6.0

Nová verzia zavádza významné architektonické zmeny zamerané na zlepšenie spoľahlivosti klastra vylepšením procesu smerovania požiadaviek na čítanie a zápis do správnych uzlov klastra.

Uzly Rqlite teraz môže multiplexovať viac logických spojení medzi nimi pomocou TCP spojení vytvorených medzi uzlami protokolom Raft. Ak požiadavka vyžaduje oprávnenie vedúceho uzla, ale je odoslaná do sekundárneho uzla, sekundárny uzol môže určiť adresu vedúceho a odoslať ju klientovi bez vykonania výpočtu konsenzu Raft.

Zmena tiež odstránila samostatný komponent na synchronizáciu metadát a odstránila samostatnú správu stavu a metadát od spoločnosti Raft.

Sekundárne uzly teraz odosielajú požiadavky do vedúceho uzla iba v prípade potreby, keď je potrebné zistiť adresu vedúceho uzla. API poskytuje schopnosť získavať informácie o stave ostatných uzlov v klastri. Do CLI bol pridaný príkaz Sysdump.

Konečne ak máte záujem dozvedieť sa o tom viac alebo si pozrite inštalačné pokyny a užívateľskú príručku, môžete to urobiť z odkazu nižšie.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.