Diferencia entre el clúster y el índice no clúster

Diferencia entre el clúster y el índice no clúster

Índice de clúster vs no clúster

Los índices son muy importantes en cualquier base de datos. Se utilizan para mejorar el rendimiento de la recuperación de datos de las tablas. Son lógica y físicamente independientes de los datos en las tablas asociadas. Por lo tanto, los índices pueden ser caídos, recrear y reconstruir sin afectar los datos de las tablas base. Oracle Server puede mantener automáticamente sus índices sin ninguna participación de un DBA, cuando las tablas relacionadas se insertan, actualizan y eliminan. Hay varios tipos de índice. Éstos son algunos de ellos.

1. Índices de árbol b

2. Índices de mapa de bits

3. Índices basados ​​en funciones

4. Índices de tecla inversa

5. Índices de clúster B-Tree

¿Qué es un índice de clúster no??

De los tipos de índice anteriores, los siguientes son índices no agrupados.

• Índice de árbol B

• Índice de mapa de bits

• Índice basado en funciones

• Índices de clave inversa

Los índices de árbol B son el tipo de índice más utilizado de bases de datos. Si el comando Crear índice se emite en la base de datos, sin especificar un tipo, Oracle Server crea un índice B-Tree. Cuando se crea un índice B-Tree en una columna específica, Oracle Server almacena los valores de la columna y mantiene una referencia a la fila real de la tabla.

Los índices de mapa de bits se crean cuando los datos de la columna no son muy selectivos. Eso significa que los datos de la columna tienen una baja cardinalidad. Estos están especialmente diseñados para almacenes de datos, y no es bueno usar índices de mapa de bits en tablas altamente actualizables o transaccionales.

Los índices funcionales provienen de Oracle 8i. Aquí, se utiliza una función en la columna indexada. Por lo tanto, en un índice funcional, los datos de la columna no se clasifican de la manera normal. Clasifica los valores de las columnas después de aplicar la función. Estos son muy útiles cuando se usa el cierre de la consulta selecta una función.

Los índices de tecla inversa son un tipo de índice muy interesante. Supongamos que una columna contiene muchos datos de cadena únicos como 'CityA', 'CityB', 'CityC' ... etc. Todos los valores tienen un patrón. Los primeros cuatro caracteres son los mismos y las siguientes partes se cambian. Entonces, cuando se crea el índice de clave inversa en esta columna, Oracle revertirá la cadena y la restaurará en un índice de árbol B.

Los tipos de índices mencionados anteriormente son índices no agrupados. Eso significa que los datos indexados se almacenan fuera de la tabla, y se mantiene una referencia ordenada a la tabla. 

¿Qué es un índice agrupado??

Los índices agrupados son un tipo especial de índices. Almacena datos de acuerdo con la forma de almacenar datos de tabla físicamente. Entonces, no puede haber muchos índices agrupados para una tabla. Una tabla puede tener solo un índice agrupado.

¿Cuál es la diferencia entre los índices agrupados y no agrupados??

1. La tabla puede tener solo un índice agrupado, pero puede haber hasta 249 índices no agrupados en una tabla.

2. El índice agrupado se crea automáticamente cuando se crea una clave primaria, pero se crea un índice no agrupado cuando se crea una clave única.

3. El orden lógico del índice agrupado coincide con el orden físico de los datos de la tabla, pero en los índices no agrupados, no.