MariaDB 10.5 llega con nuevo motor S3, cambios en permisos y más
Después de un año de desarrollo y cuatro versiones preliminares, se acaba de presentar la primera versión estable de la nueva rama de «MariaDB 10.5», en la cual se presentan nuevos motores, algunos cambios en los permisos, renombramientos de archivos y otras cosas mas.
Para quienes desconocen de MariaDB, deben saber que es una base de datos cuyo marco se desarrolla una rama de MySQL, que mantiene la compatibilidad con versiones anteriores y se distingue por la integración de motores de almacenamiento adicionales y características avanzadas.
Mejoras clave para MariaDB 10.5
De los principales cambios que se destacan de esta nueva version, podremos encontrar la adición de dos motores de almacenamiento, uno de ellos es el motor S3, que sirve para alojar tablas MariaDB en Amazon S3 o cualquier otro almacenamiento en la nube público o privado que admita la API S3.
S3 admite tablas regulares y particionadas (particionadas). Cuando las tablas particionadas se colocan en la nube, se pueden usar directamente, incluso desde otro servidor que tiene acceso al almacenamiento S3.
El otro motor de almacenamiento que fue añadido es ColumnStore, que almacena datos en enlaces de columnas y utiliza una arquitectura distribuida masivamente paralela.
El motor se basa en la base del almacenamiento InfiniDB MySQL y está diseñado para organizar el procesamiento y la ejecución de consultas analíticas en grandes conjuntos de datos (Data Warehouse).
Otro cambio importante, fue en el renombramiento de los archivos ejecutables que comienzan con la palabra «mysql» se renombran usando la palabra «mariadb». Los nombres antiguos se guardan como enlaces simbólicos.
Además se destaca que se ha completado el trabajo sobre la separación de privilegios en componentes más pequeños. En lugar del privilegio SUPER general, una serie de privilegios opcionales «BINLOG ADMIN», «BINLOG REPLAY», «CONNECTION ADMIN», «FEDERATED ADMIN», «READ_ONLY ADMIN», «REPLICATION MASTER ADMIN», «REPLICATION SLAVE ADMIN» y «SET USER».
Para algunas expresiones, se han cambiado los privilegios necesarios para ejecutarlas.
Como por ejemplo: SHOW BINLOG EVENTS ahora requiere derechos de BINLOG MONITOR en lugar de REPLICATION SLAVE, SHOW SLAVE HOSTS requiere privilegios de REPLICATION MASTER ADMIN.
El registro binario utilizado para la replicación de la organización, los nuevos campos se agregaron a los metadatos, incluida la clave principal, el nombre de columna, el conjunto de caracteres y el tipo de geometría.
La construcción DROP TABLE ahora elimina de forma confiable las tablas que permanecen en el motor de almacenamiento, incluso si no hay archivos».frm» o».par».
El mecanismo de replicación síncrono multi maestro de Galera agrega soporte completo para GTID (Global Transaction ID), que es común para todos los nodos del grupo de identificadores de transacción.
Se realizó la transición a la nueva rama de la biblioteca PCRE2 (Expresiones regulares compatibles con Perl), en lugar de la clásica serie PCRE 8.x.
Además, se proponen nuevas versiones de enlaces para conectarse a MariaDB y MySQL desde los programas Python y MariaDB Connector, Python 1.0.0 y MariaDB Connector/C 3.1.9.
De los demás cambios que se presentan en esta nueva version:
- En las operaciones «ALTER TABLE» y «RENAME TABLE«, se agrega soporte para la condición «IF EXISTS» para realizar la operación solo si la tabla existe;
- Para los índices en el atributo «CREATE TABLE» se implementa «VISIBLE».
- Se agregó la expresión «CYCLE» para identificar bucles CTE recursivos.
- El optimizador de procesamiento de rango tiene en cuenta IS NULL
- Implementé una versión acelerada por hardware de la función crc32() para las CPU AMD64, ARMv8 y POWER 8.
- La utilidad mariadb-binlog y los comandos SHOW BINLOG EVENTS y SHOW RELAYLOG EVENTS muestran banderas de replicación.
- Se introdujeron numerosas optimizaciones de rendimiento del motor InnoDB.
- Cambió algunas tinturas predeterminadas. El parámetro innodb_encryption_threads se ha aumentado a 255 y el valor de max_sort_length se ha incrementado de 4 a 8.
- Redujo significativamente el tamaño de los archivos temporales utilizados al ordenar con los tipos VARCHAR, CHAR y BLOB.
Finalmente si quieres conocer mas al respecto sobre esta nueva version, puedes consultar la lista de completa de cambios en el siguiente enlace.