Despliegue del índice MySQL

empuje hacia abajo del índice

Nota: Si ha estudiado la optimización del árbol de sintaxis de álgebra relacional, lo comprenderá de un vistazo. Si desea aprender bien la base de datos, aún debe volver al libro de texto.

Ahora supongamos que hay una tabla de usuarios.

+-------------+---------+
| 列名         | 类型    |
+-------------+---------+
| id          | int     |
| age         | int     |
| FirstName   | varchar |
| LastName    | varchar |
+-------------+---------+

Crear índice conjunto

create index idx_firstName_age on users(firstName,age)

Ahora consulta los registros cuyo nombre comienza con t y cuya edad es igual a 20 años.

select firstName,lastName,age from users where firstName like 't%' and age = 20

almacenamiento fisico

Ahora inserte cinco datos.

insert into users (id,fristName,lastName,age) values (001,'Tome','ajad',20);
insert into users (id,fristName,lastName,age) values (002,'Jack','ajad',18);
insert into users (id,fristName,lastName,age) values (003,'Tome','ajad',18);
insert into users (id,fristName,lastName,age) values (004,'Lee' ,'ajad',17);
insert into users (id,fristName,lastName,age) values (005,'Lee' ,'ajad',19);

La estructura se describe brevemente a continuación.
Insertar descripción de la imagen aquí

El índice secundario anterior no incluye la dirección física de la clave principal.

árbol de análisis

Todas las declaraciones SQL eventualmente se convertirán en álgebra relacional para su ejecución. El árbol de sintaxis se ejecuta de abajo hacia arriba.

Utilice aplicar para representar la operación de regresar del índice a la tabla. Lo expreso aquí por conveniencia. De hecho, no existe tal método de representación.

Primero, vaya al índice conjunto (idx_firstName_age) para buscar todos los registros que comiencen con firstName t, luego devuelva el registro de edad firstName lastName a la tabla y luego busque el registro con edad = 20 según los registros devueltos.

Insertar descripción de la imagen aquí

empuje hacia abajo del índice

pushdown de condición de índice

Mucha gente no entiende por qué se llama índice pushdown.

El primero es el índice, que en realidad está empujando hacia abajo las condiciones de selección. En "Introducción a los sistemas de bases de datos, quinta edición", para la optimización del álgebra relacional, la selección y la proyección deben moverse hacia abajo tanto como sea posible.

Como puede ver en la figura siguiente, las condiciones de selección se mueven hacia abajo y se juzgan en el índice conjunto. Al reducir el número de resultados de la tabla, se logra el propósito de optimización.

Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/Dig_hoof/article/details/123153347
Recomendado
Clasificación