Представена версия на СУБД MariaDB 11.8.2, която е обявена за първия стабилен релийз на клон 11.8. Клонът MariaDB 11.8 е отнесен към версиите с дългосрочна поддръжка и ще бъде обслужван най-малко 5 години. В същото време е наличен релийз MariaDB 12.0.1, който има статус на кандидатрелийз.
Проектът MariaDB развива отклонение от MySQL, което запазва обратно съвместимост и предлага интеграция на допълнителни механизми за съхранение и разширени възможности. Развитието на MariaDB се ръководи от независимата организация MariaDB Foundation в съответствие с открит и прозрачен процес на разработка, независим от отделни производители. MariaDB се предлага вместо MySQL в много дистрибуции на Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) и е внедрена в значими проекти като Wikipedia, Google Cloud SQL и Nimbuzz.
Сред измененията в клон MariaDB 11.8 в сравнение с предишния LTS релийз 11.4:
- Интегрирани са разработки от проекта MariaDB Vector, който развива възможности за векторно търсене, търсени в системите за машинно обучение. Внедрена е вградена поддръжка на типа данни VECTOR, функции VEC_DISTANCE_EUCLIDEAN(), VEC_DISTANCE_COSINE() и VEC_DISTANCE() за изчисляване на сходството на вектори, както и функции VEC_FromText() и VEC_ToText() за преобразуване между бинарно и текстово представяне на вектори. Реализирани са оптимизации за работа с вектори, използващи SIMD разширения на Intel процесори (AVX2 и AVX512), ARM и IBM Power10. При проведените тестове, производителността на векторните заявки в MariaDB надвишава тази на Redis, pgvector, qdrant и weaviate.

- Решен е проблемът с годината 2038. Границата на типа TIMESTAMP е увеличена от 2038 до 2106 година.
- По подразбиране вместо latin1 е зададена кодировка Unicode (utf8mb4) с пълна поддръжка на emoji. Свойствата на локализацията 'Collation', определящи правилата за сортиране и съпоставяне с оглед на значението на символите, са актуализирани до версия UCA 14.0.0.
- Добавен е нов плъгин за удостоверяване по пароли PARSEC (Password Authentication with Response Signed by Elliptic Curves), който прилага функция PBKDF2 за генериране на хеш на паролата и верифицира отговорите, използвайки публичен ключ на базата на схемата за цифрови подписи ed25519.
- Подобрено е удостоверяването при достъп до СУБД от локалната система, използвайки UNIX сокет.
- В mariadb-dump и mariadb-import е добавена поддръжка за многопоточно създаване и възстановяване на резервни копия. Паралелизацията се прилага както при дамп на една голяма база данни, така и при едновременни резервни копия на няколко бази данни.
- Значително е повишена производителността на репликацията. За ускоряване на приемането на много големи транзакции е реализиран механизъм за превключване на сегменти от бинарния лог (binlog), който позволява избягване на ресурсно-интензивни операции по копиране на файлове. За съкращаване на рестартирането след сбои е осигурен откат на транзакции (rollback) в асинхронен режим. Добавена е настройката "slave_replication_delay_abort_timeout", чрез която могат автоматично да се отменят транзакции, които прекалено дълго блокират репликацията.
- Разширени са инструментите за мониторинг. В таблиците със статистика са добавени допълнителни колони за анализ на производителността и диагностика на проблеми.
- Добавена е таблица USERS с информация за потребителите, приложените към тях ограничения и времето за действие на техните пароли.
- Добавени са командите "FLUSH GLOBAL STATUS", "REPAIR TABLE … FORCE" и "SHOW CREATE SERVER".
- Добавена е възможността за връщане на стойности с тип ROW от хранимите процедури.
- Подобрена е съвместимостта с СУБД Oracle при работа с последователности (sequence). Операцията "CREATE SEQUENCE … AS" вече може да се използва с всякакви цели числени типове, включително "BIGINT UNSIGNED".
- Добавени са нови функции за генериране на UUID — UUID_v7 и UUID_v4.
- Добавена е функция FORMAT_BYTES за преобразуване на число байтов в четим формат (например, FORMAT_BYTES(1000000000) ще даде 953.67 MiB).
- Добавена е възможността за ограничаване на дисковото пространство, използвано за временни файлове и временни таблици. Добавени са настройките max_tmp_session_space_usage и max_tmp_total_space_usage за задаване на лимити, свързани с един и всички потребители.
- В оптимизатора на запитванията е ускорена обработката на операции UPDATE/DELETE с една таблица. Включени са по подразбиране оптимизации за съкращаване на кодировки до по-малко подмножество символи. Ускорени са запитванията с изрази "SUBSTR(col, 1, n) = const_str". Добавена е поддръжка за оптимизация на виртуални колони.
Източник: opennet.ru

