ĂshtĂ« publikuar lĂ«shimi i DBMS Redis 7.4, e cila i pĂ«rket klasĂ«s sĂ« sistemeve NoSQL. Redis ofron funksione pĂ«r ruajtjen e tĂ« dhĂ«nave nĂ« format çelĂ«s/vlerĂ«, tĂ« zgjeruara me mbĂ«shtetje pĂ«r formate tĂ« dhĂ«nash tĂ« strukturuara si lista, hash dhe grupe, si dhe mundĂ«sinĂ« pĂ«r tĂ« ekzekutuar skriptet pĂ«rpunuese nĂ« gjuhĂ«n Lua nĂ« anĂ«n e serverit. Ndryshe nga sistemet e ruajtjes nĂ« memorie, si Memcached, Redis ruan DB-nĂ« jo vetĂ«m nĂ« memorie, por edhe nĂ« disk, çka garanton ruajtjen e DB-sĂ« nĂ« rast tĂ« mbylljes sĂ« papritur.
Redis 7.4 Ă«shtĂ« shpallur si versioni i parĂ« qĂ« shpĂ«rndahet me kushte tĂ« reja licencimi â nĂ« vend tĂ« licencĂ«s mĂ« parĂ« BSD, kodi tani Ă«shtĂ« nĂ« dispozicion nĂ«n licencat pronĂ«sore RSALv2 (Licenca e Disponueshme e Burimeve tĂ« Redis v2) dhe SSPLv1 (Licenca Publike nĂ« AnĂ«n e Serverit v1). Ata qĂ« dĂ«shirojnĂ« tĂ« vazhdojnĂ« pĂ«rdorimin e kodit nĂ«n licencĂ«n BSD mund tĂ« shfrytĂ«zojnĂ« projektet Valkey (fork, i zhvilluar me pjesĂ«marrjen e Amazon, Google, Oracle, Ericsson dhe Snap), Redict (fork nga autori i ndĂ«rfaqes pĂ«rdoruese Sway dhe gjuhĂ«s Hare), Garnet (DBMS nga Microsoft, e cila Ă«shtĂ« e pĂ«rshtatshme me Redis) ose KeyDB (fork me performancĂ« tĂ« lartĂ« i Redis 5 nga Snapchat).
Licencat SSPL dhe RSAL çojnë në diskriminimin e kategorive të caktuara të përdoruesve, çka nuk lejon që ato të konsiderohen të hapura ose të lira. Në qëllimet e tyre, të dyja licencat janë të ngjashme, ndërsa dallimet përfshijnë se licenca SSPL bazoheshin në kopileftin AGPLv3, ndërsa licenca RSAL bazohet në licencën permissive BSD. Licenca RSAL lejon përdorimin, ndryshimin, shpërndarjen dhe integrimin e kodit në aplikacione, përveç rasteve kur këto aplikacione janë komerciale ose përdoren për ofrimin e shërbimeve të menaxhuara me pagesë. Licenca SSPL përmban gjithashtu një kërkesë për shpërndarjen nën të njëjtën licencë jo vetëm të kodit të aplikacionit, por edhe të burimeve të të gjithë komponentëve që janë të përfshirë në ofrimin e shërbimit në re.
DBMS Redis mbështet transaksionet, duke lejuar ekzekutimin e një grupi komandash në një hap, duke garantuar përputhshmëri dhe renditje (komandat nga kërkesa të tjera nuk mund të ndërhyjnë) në ekzekutimin e një grumbulli të caktuar komandash, dhe në rast problemesh duke lejuar kthimin e ndryshimeve. Të gjitha të dhënat ruhen plotësisht në memorie të përkohshme. Bibliotekat klient janë të disponueshme për shumicën e gjuhëve të njohura, duke përfshirë Perl, Python, PHP, Java, Ruby dhe Tcl.
PĂ«r menaxhimin e tĂ« dhĂ«nave ofrohen komandat si inkrement/dekrement, operacione standarde mbi lista dhe grupe (bashkimi, ndĂ«rprerja), rinovimi i çelĂ«save, seleksione tĂ« shumta dhe funksione renditjeje. MbĂ«shteten dy modo ruajtjeje: sinkronizimi periodic i tĂ« dhĂ«nave nĂ« disk dhe mbajtja e njĂ« logu tĂ« ndryshimeve nĂ« disk. NĂ« rastin e dytĂ« garanton ruajtjen e plotĂ« tĂ« tĂ« gjitha ndryshimeve. ĂshtĂ« e mundur organizimi i replikimit master-slave tĂ« tĂ« dhĂ«nave nĂ« disa servera, i realizuar nĂ« njĂ« mĂ«nyrĂ« jo bllokuese. Gjithashtu Ă«shtĂ« nĂ« dispozicion modaliteti i shkĂ«mbimit tĂ« mesazheve "publikim/abonim", ku krijohet njĂ« kanal, mesazhet prej tĂ« cilit shpĂ«rndahen te klientĂ«t sipas abonimit.
Ndryshimet kyçe në funksionalitetin e Redis 7.4:
- ĂshtĂ« shtuar mundĂ«sia e kufizimit tĂ« kohĂ«zgjatjes sĂ« fushave individuale nĂ« hash, struktura pĂ«r ruajtjen e koleksioneve tĂ« grumbulluara tĂ« regjistrave nĂ« format çelĂ«s-vlerĂ«. Ndryshe nga caktimi i kohĂ«zgjatjes pĂ«r çelĂ«sin, ndryshimi i propozuar lejon caktimin e jo vetĂ«m njĂ« kohe tĂ« pĂ«rgjithshme pĂ«r tĂ« gjitha fushat e lidhura, por edhe vlera individuale tĂ« kohĂ«zgjatjes pĂ«r fushat e veçanta, e cila mund tĂ« pĂ«rdoret, pĂ«r shembull, pĂ«r tĂ« siguruar njĂ« cikĂ«l mĂ« tĂ« shkurtĂ«r jete tĂ« tokĂ«zimeve tĂ« autentikimit, krahasuar me tĂ« dhĂ«nat e tjera tĂ« seancĂ«s.
- Janë propozuar lloje të reja të dhënash bfloat16 dhe float16, të optimizuara për përdorim në aplikacionet e mësimit të makinerisë dhe që mundësojnë të reduktojnë konsumin e memories krahasuar me llojet e mëparshme float32 dhe float64. Kur përdoren në hash, llojet e reja janë në gjendje të reduktojnë konsumin e memories në DB-të vektoriale me 47%, të zvogëlojnë vonesat në nxjerrjen e të dhënave me 59% dhe të reduktojnë kohën e krijimit të indekseve me 58% krahasuar me llojin float64.
- PĂ«rdorimi i indekseve tĂ« dytĂ« Ă«shtĂ« bĂ«rĂ« mĂ« i thjeshtĂ«. Kur kĂ«rkohet informacion nga indekset e dytĂ«, tani nuk Ă«shtĂ« nevoja tĂ« ekuacionĂ«sh simbollet speciale si «@» dhe «.», por mund tĂ« pĂ«rdoren citate tĂ« dyfishta pĂ«r tĂ« rrethuar porcione tĂ« tĂ« dhĂ«nave. Gjithashtu Ă«shtĂ« pĂ«rmirĂ«suar ndjeshĂ«m indeksoni i fushave bosh dhe tĂ« munguar â pĂ«r krijimin e indekseve dhe formimin e kĂ«rkesave qĂ« marrin parasysh praninĂ« e fushave, janĂ« propozuar fjalĂ« kyçe tĂ« reja INDEXMISSING dhe funksioni ismissing(). JanĂ« shtuar operatorĂ« tĂ« rinj INTERSECT dhe DISJOINT pĂ«r tĂ« lehtĂ«suar kĂ«rkimin e tĂ« dhĂ«nave gjeohapĂ«sinore. JanĂ« shtuar mundĂ«si pĂ«r analizimin e konsumit tĂ« memories nga indeksi.
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r filtra pĂ«r tĂ« pĂ«rjashtuar elemente nĂ« grupe tĂ« dhĂ«nash qĂ« po shtohen, pĂ«r shembull, gjatĂ« ngarkesĂ«s periodike tĂ« tĂ« dhĂ«nave nga sensorĂ«t mund tĂ« shtohet njĂ« filtĂ«r pĂ«r tĂ« injoruar vlerat, dallimi i kohĂ«s sĂ« tĂ« cilave nga vlera e mĂ«parshme Ă«shtĂ« mĂ« i vogĂ«l se njĂ« kufi i caktuar.
- ĂshtĂ« ndaluar mbĂ«shtetja pĂ«r trigger dhe funksione nĂ« gjuhĂ«n JavaScript, tĂ« propozuara nĂ« lĂ«shimin e mĂ«parshĂ«m.
Burimi: opennet.ru
