En InnoDB, los datos almacenados en el disco, los datos se leen de las necesidades de disco a la primera transformación de datos y, a continuación, escrita en la memoria. InnoDB utiliza el principio de localidad cargada.
Tres, formato de fila InnoDB
Podemos especificar el formato en línea del extracto creado o modificado tabla:
1, línea compacto formato de tipo :
lista longitud del campo (1) de longitud variable
MySQL soporta un cierto tipo de datos de longitud variable, tales como VARCHAR (M), VARBINARY (M ), TEXT tipo, el tipo BLOB, denominado como un tipo de datos de columna campos de longitud variable de modificación. De longitud variable longitud del campo de la lista que se muestra una lista de todos los datos reales de los campos de longitud variable ocupan la longitud en bytes de los mismos.
VARCHAR (M), M representa el número máximo de caracteres que pueden existir.
Tales como: La primera línea no es nulo: 11111
La segunda línea de los tres primeros nulo: 22 (bandera null: 11100)
la cabeza de grabación (3) Información
Registro de información para describir el cabezal de impresión, que se fija por cinco bytes. 5 bytes es decir, 40 bits, los diferentes bits representan diferente significado, como se muestra:
datos reales (4) registros
Además de los datos reales registrados nuestra propia definición de la columna de datos, habrá tres columnas ocultas:
2. Los datos de desbordamiento de fila
VARCHAR (M) de tipos de columna puede ocupar hasta 65.535 bytes. Si usamos el conjunto de caracteres ASCII, a continuación, un personaje representa un byte. Sin embargo, se dará VARCHAR (65535):
Motivo: un almacenamiento VARCHAR (M) del tipo de columna, de hecho, las necesidades para ocupar parte del espacio de almacenamiento 3: 1. 2. La longitud variable del campo de datos real del valor real de los datos de identificación 3. NULL
Por lo tanto, si la columna no es de tipo VARCHAR atributo NOT NULL, puede almacenar hasta 65,532 bytes de datos, debido a la longitud de los campos de longitud variable ocupa 2 bytes, las necesidades de valor nulo para ocupar un identificador de bytes .
Página 3, línea demasiado tiempo debido al desbordamiento
Un tamaño de página es típicamente 16KB, es decir 16384 bytes, y un tipo VARCHAR (M) de la columna puede almacenar hasta 65,533 bytes, esto podría parecer una página no almacena un registro.
(1) y el formato de filas compactas reduntant, con respecto a un muy gran espacio de almacenamiento ocupado por la columna, a una parte de datos real de los registros de datos almacenados sólo la columna, la dispersión de los datos restantes almacenados en varias otras páginas, entonces datos reales registrados en el punto con 20 bytes de "dirección y el recuento de bytes" memoria estas páginas, para que pueda encontrar la página en los datos restantes.
...
(2) en la dinámica y formato de fila comprimido, que no son parte de los datos reales almacenados los datos en el registro, pero todos los datos se almacenan a otra página, otra página de dirección de memoria únicos datos reales del registro.
...
formato de filas y 4.Dynamic Comprimido
Tanto formato de fila formato de fila COMPACT similar, pero poca diferencia en el procesamiento de datos de línea de desbordamiento, tal como se describe anteriormente. Además, el formato de fila comprimido se utiliza para el algoritmo de compresión para comprimir la página.