¿Qué significa un índice en una base de datos?
Un índice es una estructura de datos utilizada por el motor de almacenamiento de la base de datos para encontrar rápidamente datos específicos.
Podemos utilizar el "Diccionario Xinhua" como analogía: si la explicación detallada de cada palabra en el "Diccionario Xinhua" es un registro de tabla en la base de datos, entonces el directorio ordenado por radicales o pinyin es un El índice nos permite encontrar rápidamente la ubicación de una explicación detallada de una palabra.
En MySQL, el motor de almacenamiento también utiliza un método similar: primero busca el valor correspondiente en el índice y luego busca la ubicación del registro en la tabla correspondiente según el valor del índice coincidente.
¿Por qué necesitamos preguntar sobre indicadores en las entrevistas?
La razón por la que a menudo se solicitan índices en las entrevistas es porque los índices son la clave para un buen rendimiento de la base de datos y la forma más efectiva de optimizar las consultas. Los índices pueden mejorar fácilmente el rendimiento de las consultas en órdenes de magnitud.
Sin embargo, los índices deficientes también pueden afectar el rendimiento de las consultas. A medida que aumenta la cantidad de datos en la tabla, los índices tienen un mayor impacto en el rendimiento. Cuando la cantidad de datos es pequeña y la responsabilidad es baja, el impacto de los indicadores deficientes en el desempeño puede no ser obvio, pero cuando la cantidad de datos aumenta gradualmente, el desempeño caerá drásticamente.
Tipo de índice:
Diferentes tipos de índices pueden proporcionar un mejor rendimiento para diferentes escenarios. En MySQL, los índices se implementan en el nivel del motor de almacenamiento, no en el nivel del servidor. Como todos sabemos, MySQL admite múltiples tipos de motores de almacenamiento. Por lo tanto, la implementación de índices en diferentes motores de almacenamiento es diferente y no todos los motores de almacenamiento admiten todos los tipos de índices. Incluso si varios motores de almacenamiento admiten el mismo tipo de índice, su implementación subyacente puede ser diferente.