Resumen: en este tutorial, usted aprenderá varios motores de almacenamiento de MySQL o tipos de tablas. Es esencial entender las características de cada motor de almacenamiento en MySQL para que pueda utilizarlos eficazmente para maximizar el rendimiento de sus bases de datos.
MySQL proporciona varios motores de almacenamiento para sus tablas como sigue:
- MyISAM
- InnoDB
- MERGE
- MEMORIA (HEAP)
- ARCHIVE
- CSV
- FEDERATED
Cada motor de almacenamiento tiene sus propias ventajas y desventajas. Es crucial entender las características de cada motor de almacenamiento y elegir el más apropiado para sus tablas para maximizar el rendimiento de la base de datos. En las siguientes secciones, discutiremos cada motor de almacenamiento y sus características para que pueda decidir cuál utilizar.
MyISAM
MyISAM extiende el antiguo motor de almacenamiento ISAM. Las tablas MyISAM están optimizadas para la compresión y la velocidad. Las tablas MyISAM también son portables entre plataformas y sistemas operativos.
El tamaño de la tabla MyISAM puede ser de hasta 256TB, lo cual es enorme. Además, las tablas MyISAM pueden comprimirse en tablas de sólo lectura para ahorrar espacio. Al arrancar, MySQL comprueba las tablas MyISAM para ver si están corruptas e incluso las repara en caso de error. Las tablas MyISAM no son seguras para las transacciones.
Antes de la versión 5.5 de MySQL, MyISAM es el motor de almacenamiento por defecto cuando se crea una tabla sin especificar el motor de almacenamiento explícitamente. A partir de la versión 5.5, MySQL utiliza InnoDB como motor de almacenamiento por defecto.
InnoDB
Las tablas InnoDB soportan completamente el cumplimiento de ACID y las transacciones. También son óptimas para el rendimiento. Las tablas InnoDB soportan claves foráneas, operaciones de commit, rollback y rollforward. El tamaño de una tabla InnoDB puede ser de hasta 64TB.
Al igual que MyISAM, las tablas InnoDB son portables entre diferentes plataformas y sistemas operativos. MySQL también comprueba y repara las tablas InnoDB, si es necesario, en el arranque.
MERGE
Una tabla MERGE es una tabla virtual que combina múltiples tablas MyISAM que tienen una estructura similar a una tabla. El motor de almacenamiento MERGE también se conoce como motor MRG_MyISAM
. La tabla MERGE
no tiene sus propios índices; en su lugar utiliza los índices de las tablas componentes.
Usando la tabla MERGE, se puede acelerar el rendimiento al unir múltiples tablas. MySQL sólo permite realizar operaciones SELECT, DELETE, UPDATE e INSERT en las tablas MERGE
. Si utiliza la sentencia DROP TABLE
en una tabla MERGE
, sólo se elimina la especificación MERGE
. Las tablas subyacentes no se verán afectadas.
Memoria
Las tablas de memoria se almacenan en memoria y utilizan índices hash para que sean más rápidas que las tablas MyISAM. La vida de los datos de las tablas de memoria depende del tiempo de actividad del servidor de la base de datos. El motor de almacenamiento en memoria se conoce anteriormente como HEAP.
Archivo
El motor de almacenamiento de archivo permite almacenar un gran número de registros, que con fines de archivo, en un formato comprimido para ahorrar espacio en disco. El motor de almacenamiento de archivos comprime un registro cuando se inserta y lo descomprime utilizando la biblioteca zlib cuando se lee.
Las tablas de archivo sólo permiten sentencias INSERT y SELECT. Las tablas ARCHIVE
no admiten índices, por lo que se requiere un escaneo completo de la tabla para leer las filas.
CSV
El motor de almacenamiento CSV almacena los datos en formato de archivo de valores separados por comas (CSV). Una tabla CSV aporta una forma conveniente de migrar datos a aplicaciones que no son SQL, como el software de hojas de cálculo.
La tabla CSV no admite el tipo de datos NULL. Además, la operación de lectura requiere un escaneo completo de la tabla.
FEDERADO
El motor de almacenamiento FEDERATED
permite gestionar los datos de un servidor MySQL remoto sin utilizar la tecnología de cluster o replicación. La tabla federada local no almacena datos. Cuando se consultan los datos de una tabla federada local, los datos se extraen automáticamente de las tablas federadas remotas.
Elegir tipos de tablas MySQL
Puede descargar la siguiente lista de comprobación para elegir el motor de almacenamiento, o el tipo de tabla, más adecuado en función de varios criterios.
Resumen de las características de los motores de almacenamiento de MySQL
En este tutorial, ha aprendido varios motores de almacenamiento o tipos de tabla disponibles en MySQL.
- ¿Ha sido útil este tutorial?
- SíNo