„Canonical“ skelbia „SQL“ C bibliotekos „Dqlite“ 1.0 versiją

Kanoniškas

Praėjusią savaitę „Canonical“ paskelbė išleidusi pagrindinę „Dqlite 1.0“ projekto versiją, kuriate SQL variklį Įtaisytasis „SQLite“ suderinamas, palaikantis duomenų atkūrimą, automatinį atkūrimą po avarijos ir gedimų toleravimą, apimant kelis mazgus.

„Dqlite“ yra C biblioteka Jis diegia atkartotą ir SQL duomenų bazės variklį su dideliu prieinamumu ir automatiniu perjungimu. Akronimas „dqlite“ reiškia „Distributed SQLite“, tai reiškia, kad „dqlite“ išplečia SQLite tinklo protokolu, kuris gali sujungti kelis jūsų programos egzempliorius ir priversti juos veikti kaip labai prieinamą grupę, nepriklausomai nuo išorinių duomenų bazių.

Kaip minėta DBVS yra įdiegta C bibliotekos forma, pritvirtinta prie programų ir platinamas pagal „Apache 2.0“ licenciją (originalus „SQLite“ teikiamas viešai). Biblioteka yra papildinys pagal esamą SQLite kodą, kuris prideda tinklo protokolo palaikymą, kad susietų kelis programos, veikiančios skirtinguose pagrindiniuose kompiuteriuose, egzempliorius.

Programa, sukurta naudojant „Dqlite“, gali veikti kaip perjungimo sankaupos dėl autonominės klaidosnepriklausoma nuo išorinės DBVS.

Praktikoje, „Canonical“ naudoja „Dqlite“ LXD konteinerių valdymo sistemoje. Tarp bibliotekos taikymo sričių taip pat minimas atsparių gedimams daiktų interneto įrenginių ir procesorių sukūrimas „Edge“ kompiuterinėse sistemose.

Siekiant užtikrinti duomenų replikacijos nuoseklumą, naudojamas „Raft“ algoritmu pagrįstas sutarimo metodas, kuris naudojamas tokiuose projektuose kaip etcd, RethinkDB, CockroachDB ir OpenDaylight. „Dqlite“ naudoja savo asinchroninį „C-raft“ diegimą, parašytą C kalba.

Norėdami multipleksuoti ryšio apdorojimą ir organizuoti korutinų paleidimą, naudojamos parengtos bibliotekos libuv ir libco.

Palyginti su panašiu „rqlite“ projektu, „Dqlite“ teikia visišką operacijų palaikymą, jis gali bendrauti su bet kuriuo C projektu, leidžia naudoti laiko () funkciją ir vietoj SQL išraiškos vertimo pagrįstos replikacijos naudoja rėmelinį replikavimą.

Iš funkcijų, kurias galima pabrėžti „Dqlite“, yra šios:

  • Atlikite visas disko ir tinklo operacijas asinchroniniu režimu
  • Bandymų rinkinio buvimas duomenų tikslumui patvirtinti
  • Mažas atminties suvartojimas ir efektyvus duomenų mainai tinkle
  • Nuolatinė duomenų bazės disko saugykla ir operacijų žurnalas (su atminties talpyklos galimybe)
  • Greitas atsigavimas po nesėkmių
  • Stabilus CLI klientas „Go“ kalba, kurį galima naudoti inicijuojant duomenų bazę, konfigūruojant replikaciją ir prijungiant / atjungiant mazgus
  • ARM, X86, POWER ir IBM Z architektūrų palaikymas
  • „Raft“ algoritmo įgyvendinimas yra optimizuotas, siekiant sumažinti operacijų vėlavimą.
  • Asinchroninis vienos gijos diegimas naudojant „libuv“ kaip įvykio kilpą.
  • Tinkintas laidinis protokolas, optimizuotas SQLite primityvams ir duomenų tipams.
  • Duomenų replikavimas remiantis „Raft“ algoritmu ir efektyvus jo įgyvendinimas „C-raft“.

Kaip įdiegti „Dqlite“ „Ubuntu“ ir jo dariniuose?

„Canonical“ teikia informaciją, kaip sukurti klientą sąveikai su „Dqlite“, galite tai sužinoti Šioje nuorodoje.

Kalbant apie bibliotekos diegimą sistemoje, Tai galima įdiegti dviem būdais tiems, kurie naudojasi „Ubuntu“ ar bet kuris kitas jo darinys. „Canonical“ pateikia APS iš kur ją galima gauti gana paprastu būdu.

Šį PPA galima pridėti iš terminalo ir jame vykdyti šias komandas:

sudo add-apt-repository ppa:dqlite/v1
sudo apt-get update
sudo apt-get install libdqlite-dev

Kitas būdas įdiegti šią biblioteką yra kompiliavimas iš to sistemoje, taigi tai yra bendresnis metodas tiek „Ubuntu“, tiek kitiems „Linux“ paskirstymams.

Norėdami tai padaryti, jie turi atidaryti tik terminalą ir vykdyti šias komandas:

git clone --depth 100 https://github.com/canonical/sqlite.git
cd sqlite
./configure --enable-replication
make
sudo make install
cd ..
git clone https://github.com/canonical/libco.git
cd libco
make
sudo make install
cd ..
git clone https://github.com/canonical/raft.git
cd raft
autoreconf -i
./configure
make
sudo make install
cd ..

Įdiegę visas būtinas bibliotekas, kad sukurtumėte „dqlite“ bendrąją biblioteką, galite paleisti:

autoreconf -i
./configure
make
sudo make install

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ą.