Programmā SQLite viņi jau strādā ar HCTree aizmugursistēmu ar paralēlās rakstīšanas atbalstu

SQLite

ir ar ACID saderīga relāciju datu bāzes pārvaldības sistēma, kas atrodas salīdzinoši nelielā bibliotēkā, kas rakstīta C valodā

Projekta izstrādātāji SQLite ir sākuši eksperimentālas HCtree aizmugursistēmas testēšanu kas atbalsta rindu līmeņa bloķēšanu un nodrošina augstu paralēlisma līmeni vaicājumu apstrādē.

Attiecībā uz jauno aizmuguri, kurā viņi strādā, tiek minēts, ka šis mērķis ir uzlabot SQLite izmantošanas efektivitāti klienta-servera sistēmās Viņiem ir jāapstrādā liels skaits vienlaicīgu rakstīšanas pieprasījumu datu bāzē.

the sākotnēji izmantotās b-koka konstrukcijas SQLite, lai saglabātu datus Tie nav paredzēti šāda veida slodzei., kas ierobežo SQLite rakstīšanu tikai vienā straumē. Eksperimenta veidā izstrādātāji sāka izstrādāt alternatīvu risinājumu, kas glabāšanai izmanto HCtree struktūras, kas vairāk piemērotas rakstīšanas darbību paralēlināšanai.

HC-tree (hctree) projekts ir mēģinājums izstrādāt jaunu datu bāzes aizmugursistēmu, kas uzlabo parasto SQLite šādi:

Uzlabota vienlaicība: Izmantojot paplašinājumu Sākt-vienlaicīgi, tas tiek mainīts tā, lai to varētu izpildīt vienlaikus, izmantojot optimistisku bloķēšanu lapas līmenī. Tas nedaudz uzlabo vienlaicību, bet lapas līmeņa bloķēšana var atklāt konfliktus starp loģiski neatkarīgiem darījumiem, un COMMIT darbības joprojām ir jāserializē.

Replikācijas atbalsts: Stock SQLite atbalsta sesijas paplašinājums, kas ļauj serializēt veiktā darījuma saturu pārsūtīšanai un lietošanai otrajā datu bāzē. Hctree integrē to datu bāzes aizmugursistēmā un pievieno atbalstu šādu transakciju lietošanai sekotāju datu bāzēm līderu-sekotāju konfigurācijās. Šajā gadījumā transakcijas, kas saņemtas no vadošās datu bāzes, var tikt pielietotas ātrāk un ar lielāku vienlaicību nekā tās, kuras sākotnēji tika lietotas vadošajai datubāzei, jo darījuma apstiprināšana.

Datu bāzes lieluma ierobežojumu novēršana: Stock SQLite izmanto 32 bitu lappušu numurus. Izmantojot noklusējuma lapas izmēru 4 KiB, tiek nodrošināts maksimālais datu bāzes lielums 2^44 baiti jeb 16 TiB.

Lai vienlaikus veiktu vairākas darbības, HCtree žurnālos tiek izmantots darījumu atdalīšanas mehānisms kas izmanto lappuses līmeņa slēdzenes, līdzīgi kā MVCC (vairāku versiju saturēšanas kontrole), bet izmanto darījumu vadīklas, kuru pamatā ir atslēgu diapazoni un atslēgu diapazoni, nevis lapu kopas.

Lasīšanas un rakstīšanas darbības tiek veiktas attiecībā pret datu bāzes momentuzņēmumu, kura izmaiņas galvenajā datu bāzē kļūst redzamas tikai pēc darījuma pabeigšanas.

Lai atvērtu darījumus, klienti var izmantot trīs darbības:

  • «BEGIN«: Darījumos netiek ņemti vērā citu klientu piekļuves dati. Ja darījuma ietvaros tiek veiktas rakstīšanas darbības, transakciju var veikt tikai tad, ja tās izpildes laikā datu bāzē nav bijušas citas rakstīšanas darbības.
    «SĀKT VIENLAIDĪGI«: Darījumos tiek apkopota informācija par citu klientu piekļuvi. Ja darījuma ietvaros tiek veiktas rakstīšanas darbības, transakciju var veikt, ja kopš momentuzņēmuma izveides datu bāzē ir iekļautas citas transakcijas.
    «SĀC EKSKLUZĪVI«: pēc darījuma atvēršanas bloķē citu darījumu operācijas līdz to pabeigšanai.

HCtree atbalsta galvenā-slave replikāciju, kas ļauj pārsūtīt transakcijas uz citu datu bāzi un sinhronizēt sekundārās datu bāzes ar primāro datu bāzi.

HCtree arī noņem datu bāzes izmēra ierobežojumu: 32 bitu datu lapu identifikatoru vietā HCtree izmanto 48 bitu identifikatorus, kas palielina datu bāzes maksimālo lielumu no 16 tebibaitiem līdz 1 eksbibaitam (miljons tebibaitu).

Paredzams, ka SQLite veiktspēja ar HCtree aizmugursistēmu būs vismaz tikpat laba kā klasiskajai viena pavediena aizmugursistēmai. SQLite klienti ar HCtree atbalstu varēs piekļūt gan HC-tree datu bāzēm, gan mantotajām SQLite datu bāzēm.

Fuente: https://sqlite.org/


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.