V SQLite že delajo na ozadju HCTree s podporo za vzporedno pisanje

SQLite

je ACID-združljiv sistem za upravljanje relacijskih baz podatkov, vsebovan v relativno majhni knjižnici, napisani v C

Razvijalci projekta SQLite je začel testirati eksperimentalno zaledje HCtree ki podpira zaklepanje na ravni vrstic in zagotavlja visoko raven vzporednosti pri obdelavi poizvedb.

Glede novega ozadja, v katerem delajo, je omenjeno, da je to želi izboljšati učinkovitost uporabe SQLite v sistemih odjemalec-strežnik Obdelati morajo veliko število sočasnih zahtev za pisanje v bazo podatkov.

The prvotno uporabljene b-drevesne strukture v SQLite za shranjevanje podatkov Niso zasnovani za to vrsto obremenitve., ki omejuje SQLite na pisanje samo v en tok. Kot eksperiment so razvijalci začeli razvijati alternativno rešitev, ki za shranjevanje uporablja strukture HCtree, ki so primernejše za vzporedne operacije pisanja.

Projekt HC-tree (hctree) je poskus razvoja novega ozadja baze podatkov, ki izboljšuje običajni SQLite na naslednji način:

Izboljšana sočasnost: Uporaba razširitve begin-concurrent to spremeni tako, da se lahko izvaja sočasno z uporabo optimističnega zaklepanja na ravni strani. To nekoliko izboljša sočasnost, vendar lahko zaklepanje na ravni strani zazna konflikte med logično neodvisnimi transakcijami, operacije COMMIT pa je še vedno treba serializirati.

Podpora replikacije: Stock SQLite podpira podaljšanje seje, ki omogoča, da se vsebina odobrene transakcije serializira za prenos in aplikacijo v drugo bazo podatkov. Hctree to integrira v zaledje baze podatkov in dodaja podporo za uporabo takih transakcij v bazah podatkov sledilcev v konfiguracijah vodilni sledilec. V tem primeru je mogoče transakcije, prejete iz vodilne baze podatkov, uporabiti hitreje in z večjo sočasnostjo kot tiste, ki so bile prvotno uporabljene za vodilno bazo podatkov, ker ni potrditev transakcije.

Odprava omejitev velikosti baze podatkov: Stock SQLite uporablja 32-bitne številke strani. Če uporabite privzeto velikost strani 4 KiB, to vodi do največje velikosti baze podatkov 2^44 bajtov ali 16 TiB.

Za upravljanje več operacij hkrati, Dnevniki HCtree uporabljajo mehanizem za ločevanje transakcij ki uporablja zaklepe na ravni strani, podobno kot MVCC (nadzor zadrževanja več različic), vendar uporablja kontrole transakcij na podlagi obsegov ključev in obsegov ključev namesto naborov strani.

Operaciji branja in pisanja se izvajata glede na posnetek baze podatkov, katere spremembe postanejo vidne glavni bazi podatkov šele po zaključku transakcije.

Stranke lahko za odpiranje transakcij uporabljajo tri operacije:

  • «ZAČETI«: Transakcije ne upoštevajo dostopnih podatkov drugih strank. Če se operacije pisanja izvajajo znotraj transakcije, je transakcijo mogoče potrditi samo, če v času njenega izvajanja ni bilo nobenih drugih operacij pisanja v bazo podatkov.
    «ZAČNI SOČASNO«: Transakcije zbirajo informacije o dostopu drugih strank. Če se operacije pisanja izvajajo znotraj transakcije, je transakcijo mogoče potrditi, če so bile druge transakcije odobrene bazi podatkov, odkar je bil ustvarjen posnetek.
    «ZAČNI EKSKLUZIVNO«: po odprtju transakcije blokira delovanje drugih transakcij, dokler ni zaključena.

HCtree podpira replikacijo master-slave, ki vam omogoča prenos transakcij v drugo bazo podatkov in ohranjanje sinhronizacije sekundarnih baz podatkov s primarno bazo podatkov.

HCtree prav tako odstrani omejitev velikosti baze podatkov: namesto 32-bitnih identifikatorjev podatkovne strani HCtree uporablja 48-bitne identifikatorje, kar poveča največjo velikost baze podatkov s 16 tebibajtov na 1 eksbibajt (milijon tebibajtov).

Zmogljivost SQLite z zaledjem HCtree naj bi bila vsaj tako dobra kot klasično zaledje z eno nitjo. Odjemalci SQLite s podporo za HCtree bodo lahko dostopali do baz podatkov HC-tree in podedovanih baz podatkov SQLite.

vir: https://sqlite.org/


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.