Archive es un motor de almacenamiento para el sistema de gestión de bases de datos relacionales MySQL . Los usuarios pueden utilizar este motor de almacenamiento analítico para crear una tabla de archivo. De esta tabla no se pueden eliminar datos, solo añadirlos. El motor Archive utiliza una estrategia de compresión basada en la biblioteca zlib y empaqueta las filas utilizando un encabezado de bits para representar los valores nulos y eliminando los espacios en blanco en los campos de tipo carácter. Una vez completado el proceso, la fila se inserta en el búfer de compresión y se guarda en el disco mediante una operación de vaciado explícito de la tabla, una lectura o el cierre de la misma.
Una de las limitaciones actuales de las tablas de archivo es que no admiten índices, lo que obliga a realizar un escaneo completo de la tabla para cualquier consulta SELECT. Sin embargo, las tablas de archivo son compatibles con MySQL Query Cache, lo que puede reducir drásticamente los tiempos de respuesta para las consultas repetitivas a tablas de archivo. [ 1 ] MySQL está analizando la compatibilidad con índices para tablas de archivo en futuras versiones.
El motor no cumple con las propiedades ACID . A diferencia de los motores OLTP , utiliza un formato de flujo continuo para el almacenamiento en disco, sin límites de bloque. El encabezado del archivo de archivo generado es una matriz de bytes que representa el formato de datos y el contenido del archivo. En MySQL 5.1, se almacena una copia del archivo FRM de MySQL en el encabezado de cada archivo de archivo. El archivo FRM, que representa la definición de una tabla, permite restaurar un archivo de archivo en un servidor MySQL si este se copia al servidor.
A pesar de utilizar zlib , los archivos comprimidos no son compatibles con gzio , la base de las herramientas gzip . Utiliza su propio sistema azio, que es una bifurcación de gzio.
Archive se diferencia del otro motor analítico de MySQL, MyISAM , por ser un motor de bloqueo a nivel de fila y por mantener una instantánea de versión constante durante toda una consulta (lo que lo convierte en MVCC ). Esto significa que Archive no se bloquea para inserciones masivas concurrentes. Para las inserciones masivas, realiza una inserción intercalada, por lo que, a diferencia de MyISAM, no se garantiza el orden.
Los usuarios pueden utilizar la herramienta archive_reader para tomar una instantánea en línea de una tabla y para cambiar las características de un archivo de archivo.
Para crear una tabla de archivo, especifique la siguiente cadena de motor:
CREATE TABLE t1 ( a INT , b VARCHAR ( 32 ) ) ENGINE = ARCHIVEEl motor de almacenamiento de archivos MySQL [ 2 ] fue creado y es mantenido por Brian Aker . Fue introducido en 2004 con MySQL 4.1.
Referencias
Enlaces externos
- Documentación de MySQL sobre el motor de almacenamiento de archivos
- Motores de bases de datos
- MySQL
- Software básico para bases de datos