SQLite jie jau dirba su HCTree backend su lygiagretaus rašymo palaikymu

SQLite

yra su ACID suderinama reliacinė duomenų bazių valdymo sistema, esanti santykinai mažoje bibliotekoje, parašyta C

Projekto rengėjai „SQLite“ pradėjo bandyti eksperimentinę „HCtree“ programinę įrangą kuri palaiko užrakinimą eilutės lygiu ir užtikrina aukštą užklausų apdorojimo lygiagretumą.

Kalbant apie naują backend, kurioje jie dirba, minima, kad tai siekiama pagerinti SQLite naudojimo kliento-serverio sistemose efektyvumą Jie turi apdoroti daug vienu metu pateikiamų duomenų bazės rašymo užklausų.

The iš pradžių naudotos b-medžio konstrukcijos SQLite duomenims saugoti Jie nėra skirti tokio tipo apkrovoms., kuris apriboja SQLite įrašymą tik į vieną srautą. Kaip eksperimentą kūrėjai pradėjo kurti alternatyvų sprendimą, kuriame saugojimui naudojamos HCtree struktūros, labiau tinkančios rašymo operacijoms lygiagretinti.

HC-tree (hctree) projektas yra bandymas sukurti naują duomenų bazės vidinę sistemą, kuri patobulintų įprastą SQLite:

Patobulintas lygiagretumas: Naudojant plėtinį pradėti vienu metu, tai pakeičiama taip, kad jį būtų galima vykdyti vienu metu naudojant optimistinį užrakinimą puslapio lygiu. Tai šiek tiek pagerina lygiagretumą, tačiau puslapio lygio užrakinimas gali aptikti logiškai nepriklausomų operacijų konfliktus, o COMMIT operacijas vis tiek reikia atlikti nuosekliai.

Replikacijos palaikymas: Stock SQLite palaiko seanso pratęsimas, kuri leidžia įvykdytos operacijos turinį serijiniu būdu perduoti ir pritaikyti antrai duomenų bazei. „Hctree“ integruoja tai į duomenų bazės užpakalinę programą ir prideda palaikymą tokių operacijų taikymui sekėjų duomenų bazėms lyderio ir sekėjo konfigūracijomis. Tokiu atveju operacijos, gautos iš pirmaujančios duomenų bazės, gali būti taikomos greičiau ir greičiau, nei iš pradžių taikytos pirmaujančiai duomenų bazei, nes sandorio patvirtinimas.

Duomenų bazės dydžio apribojimų panaikinimas: Stock SQLite naudoja 32 bitų puslapių numerius. Naudojant numatytąjį 4 KiB puslapio dydį, didžiausias duomenų bazės dydis yra 2^44 baitai arba 16 TiB.

Norėdami atlikti kelias operacijas vienu metu, HCtree žurnaluose naudojamas operacijų atskyrimo mechanizmas kuri naudoja puslapio lygio užraktus, panašius į MVCC (kelių versijų talpinimo valdymą), bet naudoja operacijų valdiklius, pagrįstus raktų diapazonais ir raktų diapazonais, o ne puslapių rinkiniais.

Skaitymo ir rašymo operacijos atliekamos atsižvelgiant į duomenų bazės momentinį vaizdą, kurio pakeitimai pagrindinei duomenų bazei tampa matomi tik pasibaigus operacijai.

Norėdami atidaryti sandorius, klientai gali naudoti tris operacijas:

  • «BEGIN«: Operacijose neatsižvelgiama į kitų klientų prieigos duomenis. Jei operacijos metu atliekamos rašymo operacijos, operacija gali būti įvykdyta tik tuo atveju, jei jos vykdymo metu duomenų bazėje nebuvo kitų įrašymo operacijų.
    «PRADĖKITE TUO pat metu«: Operacijose renkama informacija apie kitų klientų prieigą. Jei operacijos metu atliekamos rašymo operacijos, operacija gali būti atlikta, jei nuo momentinės nuotraukos sukūrimo duomenų bazėje buvo įtrauktos kitos operacijos.
    «PRADĖKITE IŠSKIRTINĮ«: atidarius operaciją, blokuoja kitų operacijų operacijas, kol ji bus baigta.

HCtree palaiko pagrindinio ir pavaldaus replikaciją, leidžiančią perkelti operacijas į kitą duomenų bazę ir sinchronizuoti antrines duomenų bazes su pagrindine duomenų baze.

HCtree taip pat pašalina duomenų bazės dydžio apribojimą: vietoj 32 bitų duomenų puslapių identifikatorių, HCtree naudoja 48 bitų identifikatorius, o tai padidina maksimalų duomenų bazės dydį nuo 16 tebibaitų iki 1 eksbibaitų (milijonų tebibaitų).

Tikimasi, kad SQLite našumas su HCtree backend bus bent toks pat geras kaip klasikinės vienos gijos vidinės programos. SQLite klientai su HCtree palaikymu galės pasiekti ir HC-tree duomenų bazes, ir senąsias SQLite duomenų bazes.

Fuente: https://sqlite.org/


Palikite komentarą

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

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  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ą.