Conceptos básicos de la base de datos: explique el concepto de índice MySQL y la aplicación del índice de base de datos[1]
La operación más frecuente que realizan los usuarios en la base de datos es la consulta de datos. Generalmente, al consultar la base de datos, es necesario buscar en toda la tabla. Cuando hay una gran cantidad de datos en la tabla, se necesita mucho tiempo para encontrarlos, lo que provoca un desperdicio de recursos del servidor. Para mejorar la capacidad de recuperar datos, la base de datos introduce un mecanismo de indexación.
Metáfora sobre la indexación
Hasta cierto punto, la base de datos puede considerarse como un libro y el índice como un catálogo de libros. Encontrar información en un libro a través del catálogo es obviamente más cómodo y rápido que un libro sin catálogo.
¿Qué es un índice de base de datos? (Compuesto por dos partes)
Un índice es una estructura de base de datos física independiente que es una colección de uno o más valores de columna en una tabla y una lista correspondiente de punteros lógicos a páginas de datos que los identifican físicamente. valores en la tabla.
La función de los índices en las tablas
El almacenamiento de las tablas consta de dos partes. Una parte se utiliza para almacenar las páginas de datos de la tabla y la otra parte se utiliza para almacenar. las páginas de índice. El índice se almacena en la página de índice.
Principio de eficiencia exponencial
Generalmente, las páginas de índice son mucho más pequeñas que las páginas de datos. Al realizar la recuperación de datos, el sistema primero busca en la página de índice el puntero a los datos requeridos y luego lee los datos directamente desde la página de datos a través del puntero.
Clasificación de índices
En la base de datos de SQL Server, los índices se dividen en dos tipos según diferentes estructuras de almacenamiento: índices agrupados e índices no agrupados.
() El índice del clúster clasifica los datos en las páginas de datos físicos de la tabla por columnas y luego los vuelve a almacenar en el disco, es decir, el índice del clúster y los datos se mezclan, y los datos reales se almacena en sus nodos hoja. Debido a que el índice agrupado ordena los datos de la tabla uno por uno, es muy rápido utilizar el índice agrupado para buscar datos. Sin embargo, debido a que el índice agrupado reorganiza completamente todos los datos de la tabla, requiere un espacio muy grande, lo que requiere un espacio muy grande. es aproximadamente el 100% del espacio en la tabla. Aproximadamente el % del espacio ocupado por los datos. Las filas de datos de una tabla solo se pueden almacenar en el disco de una manera ordenada, por lo que una tabla solo puede tener un índice agrupado.
()La estructura del índice no agrupado está completamente separada de los datos de la tabla. El uso de un índice no agrupado no requiere ordenar los datos columna por columna en los datos físicos. Los nodos hoja de un índice no agrupado almacenan valores de clave y localizador de filas. La estructura y el contenido de almacenamiento del localizador de filas dependen del modo de almacenamiento de los datos. Si los datos se almacenan como un índice de clúster, la clave de índice del índice de clúster se almacena en el localizador de filas. Si los datos no se almacenan en un índice agrupado (también llamado estructura de montón), el localizador de filas almacena un puntero a la fila de datos. Los índices no agrupados ordenan de alguna manera los localizadores de filas según el valor de la clave. Este orden no coincide con la clasificación de las filas de la tabla en la página de datos. Dado que los índices no agrupados se almacenan en páginas de índice, requieren más espacio de almacenamiento que los índices agrupados y tienen una menor eficiencia de recuperación. Sin embargo, sólo se puede crear un índice agrupado para una tabla. Cuando los usuarios necesitan crear varios índices, deben utilizar índices no agrupados.
El índice agrupado resumido y los datos físicos se mezclan y reorganizan, al igual que usar Pinyin para buscar en un diccionario; el índice no agrupado está completamente separado de los datos físicos. Usar el espacio adicional para reorganizar las palabras clave es como usar radicales para buscarlas en un diccionario.
Aplicaciones de indexación de bases de datos
El concepto de índice
Un índice es un método para acelerar la recuperación de datos en una tabla. La indexación en una base de datos es similar a la indexación en un libro, lo que permite a los usuarios encontrar rápidamente la información que necesitan sin tener que hojear todo el libro. Los índices en una base de datos también permiten que los programas de bases de datos encuentren rápidamente datos en una tabla sin tener que escanear toda la base de datos.
Características de los dos indicadores
Los índices pueden acelerar la recuperación de la base de datos.
Los índices ralentizan las inserciones, modificaciones y eliminaciones de bases de datos.
Los índices se crean en la tabla, no en la vista.
Los índices se pueden crear directa o indirectamente.
Puedes utilizar índices en ocultación optimizada.
El uso del procesador de consultas para ejecutar sentencias SQL solo puede utilizar un índice en una tabla a la vez.
Otros
Ventajas de los tres indicadores
Crear un índice único para asegurar la unicidad de cada fila de datos en la tabla de la base de datos
Acelerar enormemente la recuperación de datos es la razón principal para crear un índice.
Las uniones entre tablas de aceleración son particularmente significativas para lograr la integridad referencial de los datos.
Al utilizar cláusulas de agrupación y clasificación para la recuperación de datos, también puede reducir significativamente el tiempo de agrupación y clasificación de las consultas.
Al utilizar índices, podemos utilizar dispositivos ocultos de optimización durante las consultas para mejorar el rendimiento del sistema.
Desventajas de los cuatro indicadores
Crear y mantener índices lleva tiempo, que aumenta a medida que aumenta la cantidad de datos.
Los índices requieren espacio físico. Además de la tabla de datos, cada índice también requiere una cierta cantidad de espacio físico. Si desea crear un índice agrupado, necesitará más espacio.
Al agregar, eliminar o modificar datos en la tabla, el índice debe mantenerse dinámicamente, lo que reduce la velocidad de mantenimiento de los datos.
Lishi Xinzhi/Article/program/MySQL/201311/29604