A fost lansată versiunea de bază a SGBD-ului MariaDB 11.8.2, care este considerată prima versiune stabilă a ramurii 11.8. Ramura MariaDB 11.8 este clasificată ca o versiune cu suport pe termen lung și va beneficia de asistență timp de cel puțin 5 ani. De asemenea, este disponibilă versiunea MariaDB 12.0.1, care are statut de candidată pentru lansare.
Proiectul MariaDB dezvoltă o ramură derivată din MySQL, care păstrează compatibilitatea înapoi și se distinge prin integrarea de motoare de stocare suplimentare și funcționalități avansate. Dezvoltarea MariaDB este supervizată de organizația independentă MariaDB Foundation conform unui proces de dezvoltare deschis și transparent, care nu depinde de anumiți furnizori. MariaDB este livrată în locul MySQL în multe distribuții Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) și este implementată în proiecte mari precum Wikipedia, Google Cloud SQL și Nimbuzz.
Printre modificările din ramura MariaDB 11.8 în comparație cu ultima versiune LTS 11.4:
- Au fost integrate dezvoltări din proiectul MariaDB Vector, care extinde capacitățile pentru căutarea vectorială, necesară în sistemele de învățare automată. A fost implementat suport nativ pentru tipul de date VECTOR, funcțiile VEC_DISTANCE_EUCLIDEAN(), VEC_DISTANCE_COSINE() și VEC_DISTANCE() pentru calcularea similarității vectorilor, precum și funcțiile VEC_FromText() și VEC_ToText() pentru conversia între reprezentarea binară și cea textuală a vectorilor. Au fost implementate optimizări pentru lucrul cu vectorii, utilizând extensiile SIMD ale CPU-ului Intel (AVX2 și AVX512), ARM și IBM Power10. În testele efectuate, performanța interogărilor vectoriale în MariaDB depășește Redis, pgvector, qdrant și weaviate.

- A fost rezolvată problema anului 2038. Valoarea limită a tipului TIMESTAMP a fost extinsă de la 2038 la 2106.
- De acum înainte, codificarea Unicode (utf8mb4) cu suport complet pentru emoji este setată ca implicită, în loc de latin1. Proprietățile locale de sortare „Collation”, care determină regulile de sortare și comparare având în vedere semnificația caracterelor, au fost actualizate la versiunea UCA 14.0.0.
- A fost adăugat un nou plugin de autentificare pe bază de parole PARSEC (Password Authentication with Response Signed by Elliptic Curves), care aplică funcția PBKDF2 pentru generarea hash-ului parolei și verifică răspunsurile utilizând o cheie publică pe baza schemei de semnătură digitală ed25519.
- A fost îmbunătățită autentificarea la accesul la SGBD din sistemul local, folosind un unix socket.
- În mariadb-dump și mariadb-import a fost adăugată suport pentru crearea și restaurarea backup-urilor pe mai multe thread-uri. Paralelează atât la dump-ul unei baze de date mari, cât și la backup-ul simultan al mai multor baze de date.
- Performanța replicării a fost semnificativ îmbunătățită. Pentru a accelera primirea tranzacțiilor foarte mari, a fost implementat un mecanism de comutare a segmentelor jurnalului binar (binlog), care permite evitarea operațiunilor consumatoare de resurse pentru copierea fișierelor. Pentru a reduce repornirea după defecțiuni, s-a asigurat rollback-ul tranzacțiilor în modul asincron. A fost adăugată setarea „slave_replication_delay_abort_timeout”, care permite anularea automată a tranzacțiilor ce blochează prea mult replicarea.
- Instrumentele de monitorizare au fost extinse. Tabelele cu statistici au fost completate cu coloane suplimentare pentru analiza performanței și diagnosticarea problemelor.
- A fost adăugat tabelul USERS cu informații despre utilizatori, restricțiile aplicate acestora și perioada de valabilitate a parolelor lor.
- Au fost adăugate comenzile „FLUSH GLOBAL STATUS”, „REPAIR TABLE … FORCE” și „SHOW CREATE SERVER”.
- A fost adăugată posibilitatea returnării valorilor de tip ROW din proceduri stocate.
- Compatibilitatea cu SGBD-ul Oracle a fost îmbunătățită în ceea ce privește lucrul cu secvențele (sequence). Operația „CREATE SEQUENCE … AS” poate fi acum utilizată cu orice tipuri întregi, inclusiv „BIGINT UNSIGNED”.
- Au fost adăugate noi funcții pentru generarea UUID – UUID_v7 și UUID_v4.
- A fost adăugată funcția FORMAT_BYTES pentru a transforma un număr de bytes într-un format lizibil (de exemplu, FORMAT_BYTES(1000000000) va returna 953.67 MiB).
- A fost adăugată posibilitatea de a limita spațiul pe disc utilizat pentru fișierele temporare și tabelele temporare. Au fost adăugate setările max_tmp_session_space_usage și max_tmp_total_space_usage pentru stabilirea limitelor, legate de un utilizator sau de toți utilizatorii.
- În optimizatorul de interogări a fost accelerată procesarea operațiunilor UPDATE/DELETE cu o singură tabelă. Optimizările pentru reducerea codificărilor la un subset mai mic de caractere sunt activate implicit. Interogările cu expresiile „SUBSTR(col, 1, n) = const_str” au fost accelerate. A fost adăugat suport pentru optimizarea coloanelor virtuale.
Sursa: opennet.ro

