Avalikustatud on NoSQL-sĂŒsteemide klassi kuuluv andmebaasi Redis 8.2. Redis pakub funktsioone andmete talletamiseks vĂ”tme/vÀÀrtuse vormingus, laienenud struktureeritudandmete vormingute, nĂ€iteks loendite, ridade ja kogude toestamisega, samuti vĂ”imalusega serveripoolse skriptimise teostamiseks Lua keeles. Projekti kood on kirjutatud C keeles ja levitatakse AGPLv3 litsentsi alusel.
Redis andmebaas toetab tehinguid, mis vĂ”imaldavad ĂŒhes etapis tĂ€ita rĂŒhma kĂ€ske, tagades ĂŒhetaolisuse ja jĂ€rjestikuse tĂ€itmise (teised pĂ€ringud ei saa sekkuda) mÀÀratud kĂ€su kogumi tĂ€itmisel ning probleemide korral muudatuste tagasivĂ”tmise. KĂ”ik andmed vahemĂ€lustatakse tĂ€ielikult mĂ€llu. Klientraamatukogud on saadaval enamikele populaarsetele keeltele, sealhulgas Perl, Python, PHP, Java, Ruby ja Tcl.
Andmete haldamiseks on saadaval sellised kĂ€sud nagu inkrement/dekrement, standardoperatsioonid loendite ja hulkade (ĂŒhendamine, ristumine), vĂ”tmete ĂŒmbernimetamine, mitme valiku tegemine ja sorteerimisfunktsioonid. Toetatakse kahte salvestusreĆŸiimi: andmete perioodiline sĂŒnkroonimine kettale ja muutuste logi sĂ€ilitamine kettal. Teises reĆŸiimis tagatakse kĂ”igi muudatuste tĂ€ielik sĂ€ilimine. On vĂ”imalik korraldada master-slave andmete replikatsiooni mitmele serverid, mis toimub mitteblokeerivas reĆŸiimis. Samuti on saadaval sĂ”numite vahetamise reĆŸiim "publish/subscribe", mille korral luuakse kanal, mille sĂ”numid levivad klientidele tellimuse alusel.
Redis 8.2 peamised muudatused:
- Ăle 70 kĂ€su on optimeeritud, mis hakkasid toimima kiiremini kui Redis 8.0. NĂ€iteks kĂ€sk BITCOUNT töötab 35% kiiremini ning loendite kĂ€skude LINSERT, LREM ja LPOS töökiirus on paranenud 25%. 17 optimeeritud kĂ€sku töötavad vĂ€hemalt 5% kiiremini ja 52 vĂ€hemalt 2% kiiremini.

- Samaaegsete operatsioonide ja mitme niidi sisendi/vĂ€ljundi kĂ€itamise koodi optimeerimine on vĂ”imaldanud suurendada teste 8 sisendi/vĂ€ljundi niidiga 49% vĂ”rra, kui koormus jaguneb 20% kirjutamis- ja 80% lugemisrequests. serveris Ăhel juhul suudeti ĂŒletada 1 miljoni operatsiooni töötlemise piiri sekundis.

- VĂ”tme/vÀÀrtuse vormingu andmete talletamise meetod on pĂ”hjalikult muudetud â nĂŒĂŒd kasutatakse talletamiseks ĂŒhtset struktuuri kvobj, mis vĂ”imaldab pakendada vĂ”tme nime, lĂŒhikese vÀÀrtuse ja kehtivuse aja ĂŒhte mĂ€luplokki ning kasutada ainule viitet sellele struktuurile ridade tabelites, mitte eraldi viiteid vĂ”tmetele, andmetele ja TTL-ile. LĂŒhikeste stringivÀÀrtuste talletamisel on uus meetod vĂ”imaldanud vĂ€hendada mĂ€lu tarbimist 25-37%.

- JSON-vormingus andmete talletamine on optimeeritud, vÀhendades mÀlu tarbimist 25-67% tÀisarvude ja ujuvkomaga arvude talletamisel.
- SĂŒsteemide Streams, mida kasutatakse sĂ”numivoogude töötlemiseks ja talletamiseks, on lisatud uued kĂ€sud XACKDEL ja XDELEX, mis lihtsustavad töövoogudega, kuhu on ĂŒhendatud mitu saajat (tarbijagrupp). Need kĂ€sud lahendavad sĂ”numi eemaldamise probleemi alles pĂ€rast selle kĂ€ttesaamise kinnitamist kĂ”igi töötlejate poolt.
- KÀsku BITOP, mis on ette nÀhtud bititegevuste tegemiseks, on lisatud uued loogilised operaatorid DIFF, DIFF1, ANDOR ja ONE.
- Lisatud uus vektori indeksi tĂŒĂŒp SVS-VAMANA, mis toetab vektori tihendamist.
- Uued mÔÔdikud on lisatud: koormus eraldi slotide lÔikes ja vÔtmete suuruste jaotumine pÔhiliikide jaoks.
Allikas: opennet.ru



