SQLite verkefnahönnuðir hafa byrjað að prófa tilrauna HCtree bakenda sem styður læsingu á röðum og veitir mikla samhliða samsetningu þegar unnið er úr fyrirspurnum. Nýja bakendinn miðar að því að bæta skilvirkni þess að nota SQLite í biðlara-miðlara kerfum sem þurfa að vinna úr fjölda samtímis skrifabeiðna í gagnagrunninn.
B-tré mannvirkin sem notuð eru innfædd í SQLite til að geyma gögn eru ekki hönnuð fyrir þessa tegund af álagi, sem takmarkar SQLite til að skrifa aðeins á einn þráð. Sem tilraun byrjuðu verktaki að þróa aðra lausn sem notar HC-tré mannvirki til geymslu, sem henta betur til að samsíða skrifaðgerðum.
Til að leyfa mörgum aðgerðum að keyra samtímis notar HCtree skrár færsluskiptingarkerfi sem notar læsingu á síðustigi og er svipað og MVCC (Multi-Version Concurrency Control) en notar færsluathuganir byggðar á lyklum og lyklasviðum í stað blaðsíðusetta. Les- og skrifaaðgerðir eru gerðar í tengslum við skyndimynd gagnagrunns, breytingar sem verða sýnilegar í aðalgagnagrunninum fyrst eftir að viðskiptunum er lokið.
Viðskiptavinir geta notað þrjár opnar viðskiptaaðgerðir:
- „BYRJA“—viðskipti taka ekki tillit til aðgangsgagna annarra viðskiptavina. Ef skrifaðgerðir eru framkvæmdar innan færslu er aðeins hægt að framkvæma færsluna ef engar aðrar skrifaðgerðir voru í gagnagrunninum meðan þær voru framkvæmdar.
- "BYRJA SAMTÍÐA" - viðskipti safna upplýsingum um aðgang annarra viðskiptavina. Ef ritaðgerðir eru framkvæmdar innan færslu er hægt að framkvæma færsluna ef aðrar færslur hafa verið framkvæmdar í gagnagrunninum síðan skyndimyndin var búin til.
- „BYRJA EXCLUSIVE“ - eftir að viðskipti eru opnuð lokar það aðgerðum frá öðrum viðskiptum þar til henni er lokið.
HCtree styður afritun herra-þræla, sem gerir þér kleift að flytja viðskipti yfir í annan gagnagrunn og halda aukagagnagrunnum samstilltum við aðalgagnagrunninn. HCtree fjarlægir einnig takmörkun gagnagrunnsstærðar - í stað 32-bita gagnasíðuauðkenni notar HCtree 48-bita, sem eykur hámarks gagnagrunnsstærð úr 16 tebibyte í 1 exbibyte (milljón tebibyte). Gert er ráð fyrir að afköst SQLite með HCtree bakenda verði ekki lægri en klassíski einþráður bakendi. SQLite viðskiptavinir með HCtree stuðning munu geta nálgast bæði HC-tré byggða gagnagrunna og eldri SQLite gagnagrunna.
Heimild: opennet.ru