Se ha publicado la versión 12.1.2 del sistema de gestión de bases de datos MariaDB, que se marca como el primer lanzamiento estable de la rama 12.1. La rama MariaDB 12.1 se clasifica como lanzamientos intermediarios (rolling), continúa con el desarrollo gradual de funcionalidad y reemplaza a la rama MariaDB 12.0. Al mismo tiempo, se ha publicado la versión 12.2.1 de MariaDB, que tiene el estatus de candidata a lanzamiento. La rama MariaDB 12.1 será mantenida hasta la formación de la versión 12.2.2.
El proyecto de MaríaDB desarrolla una bifurcación de MySQL, que mantiene la compatibilidad y se diferencia por la integración de motores de almacenamiento adicionales y capacidades ampliadas. El desarrollo de MaríaDB es supervisado por la organización independiente Fundación MaríaDB, en conformidad con un proceso de desarrollo abierto y transparente, que no depende de fabricantes individuales. MaríaDB se distribuye en lugar de MySQL en muchas distribuciones de Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) y se ha implementado en grandes proyectos como Wikipedia, Google Cloud SQL y Nimbuzz.
Entre los cambios en la rama MariaDB 12.1:
- El motor de almacenamiento Aria ha implementado un caché segmentado de claves, donde las claves se dividen en grupos almacenados en segmentos separados del caché. Este nuevo caché ha permitido mejorar el rendimiento de la ejecución paralela de consultas por diferentes usuarios. El número de segmentos se establece a través de la variable aria_pagecache_segments, que puede aceptar valores de 1 (por defecto) a 128.
- Mejorada la escalabilidad de los bloqueos MDL (Metadata Lock).
- Se permite el uso de replicación en modo paralelo durante la replicación asíncrona de datos entre dos clústeres Galera.
- Al complemento para el registro de auditoría se le ha añadido soporte para la operación de escritura en el log en búfer. El tamaño del búfer se establece a través de la variable server_audit_file_buffer_size.
- Las operaciones de búsqueda para datos del tipo VECTOR se han acelerado entre un 30% y un 50%.
- Se ha añadido un nuevo plugin de autenticación caching_sha2_password, que utiliza el algoritmo de hash SHA2 en lugar de SHA1. El plugin es compatible con el plugin homónimo que apareció en MySQL 9.0.
- En modo de compatibilidad con el sistema de gestión de bases de datos Oracle, se ha implementado soporte para matrices asociativas (INDEX BY) y la sintaxis «( + )» para definir fusiones externas (outer join), por ejemplo: SELECT * FROM table1, table2 WHERE table1.rec_num = table2.fk_table1( + ); TYPE type_name TABLE OF rec_type_name INDEX BY idx_type_name;
- Se han añadido nuevas opciones de control al optimizador: [NO_]JOIN_INDEX, [NO_]GROUP_INDEX, [NO_]ORDER_INDEX, [NO_]INDEX, [NO_]SPLIT_MATERIALIZED, [NO_]DERIVED_CONDITION_PUSHDOWN, [NO_]MERGE.
- A la utilidad mariadb-dump se le ha añadido la capacidad de especificar patrones (por ejemplo, «database_*»), utilizando la opción «-L» (—wildcards).
- Se eliminó el requisito de unicidad de los identificadores de claves externas (foreign key) en el contexto de toda la base de datos (basta con la unicidad a nivel de tabla).
- Se ha añadido la posibilidad de utilizar índices basados en funciones (functional index) para mejorar el rendimiento de las operaciones GROUP/ORDER BY.
- Los resultados del rastreo del optimizador muestran definiciones de tablas y vistas.
Fuente: opennet.ru
