Madivelopa a SQLite amapanga HC-tree backend mothandizidwa ndi zolemba zofanana

Opanga pulojekiti ya SQLite ayamba kuyesa kuyesa kwa HCtree backend komwe kumathandizira kutseka kwa mizere ndikupereka kufanana kwakukulu pokonza mafunso. The backend yatsopano cholinga chake ndi kukonza bwino kugwiritsa ntchito SQLite mu makina a kasitomala-ma seva omwe amayenera kukonza zopempha zambiri zolembera nthawi imodzi ku database.

Zomangamanga zamtundu wa b-tree zomwe zimagwiritsidwa ntchito mu SQLite kusunga deta sizinapangidwe kuti zikhale zolemetsa, zomwe zimalepheretsa SQLite kulemba ulusi umodzi wokha. Monga kuyesa, opanga mapulogalamuwo adayamba kupanga njira ina yomwe imagwiritsa ntchito mitengo ya HC-mtengo posungira, yomwe ili yoyenera kwambiri polemba ntchito zofanana.

Kulola kuti ntchito zambiri zizigwira ntchito nthawi imodzi, HCtree mbiri imagwiritsa ntchito njira yogawanitsa ntchito yomwe imagwiritsa ntchito kutseka kwa tsamba ndipo ili yofanana ndi MVCC (Multi-Version Concurrency Control) koma imagwiritsa ntchito macheke kutengera makiyi ndi mafungulo ofunikira m'malo mwa seti zamasamba. Ntchito zowerengera ndi kulemba zimachitika molumikizana ndi chithunzi cha database, zosintha zomwe zimawonekera munkhokwe yayikulu pokhapokha ntchitoyo ikamalizidwa.

Makasitomala amatha kugwiritsa ntchito njira zitatu zotseguka:

  • "YAMBA" -kugulitsa sikutengera chidziwitso cha makasitomala ena. Ngati ntchito zolembera zikuchitidwa mkati mwamalonda, kugulitsako kutha kuchitika pokhapokha ngati pakukwaniritsidwa kwake kunalibe ntchito zina zolembera mu database.
  • "YAMBANI CONCURRENT" - zochitika zimasonkhanitsa zambiri zokhudzana ndi mwayi wamakasitomala ena. Ngati ntchito zolembera zichitidwa mkati mwamalonda, ntchitoyo ikhoza kuchitidwa ngati zochitika zina zachitika mu database kuyambira pomwe chithunzicho chidapangidwa.
  • "YAMBANI EXCLUSIVE" - mutatsegula malonda, amalepheretsa zochitika zina mpaka zitatha.

HCtree imathandizira kubwereza-bwereza kwa kapolo, komwe kumakupatsani mwayi wosamukira ku nkhokwe ina ndikusunga ma database achiwiri mogwirizana ndi nkhokwe yoyamba. HCtree imachotsanso malire pa kukula kwa database - m'malo mwa zozindikiritsa masamba a 32-bit, HCtree imagwiritsa ntchito 48-bit, zomwe zimawonjezera kukula kwa database kuchokera pa 16 tebibytes mpaka 1 exbibyte (miliyoni tebibytes). Zikuyembekezeka kuti magwiridwe antchito a SQLite okhala ndi HCtree backend sakhala otsika kuposa ma classic single-threaded backend. Makasitomala a SQLite omwe ali ndi chithandizo cha HCtree azitha kupeza ma database onse a HC-tree komanso nkhokwe za SQLite za mbiri yakale.

Source: opennet.ru

Kuwonjezera ndemanga