Diferencia entre el índice de conglomerado y no conglomerado

Diferencia entre el índice de conglomerado y no conglomerado
Diferencia entre el índice de conglomerado y no conglomerado

Video: Diferencia entre el índice de conglomerado y no conglomerado

Video: Diferencia entre el índice de conglomerado y no conglomerado
Video: Flujo convencional vs Flujo de Electrones 2024, Noviembre
Anonim

Índice de clúster frente a 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 de las tablas asociadas. Por lo tanto, los índices se pueden descartar, recrear y reconstruir sin afectar los datos de las tablas base. El servidor de Oracle puede mantener automáticamente sus índices sin la participación de un DBA, cuando las tablas relacionadas se insertan, actualizan y eliminan. Hay varios tipos de índice. Estos son algunos de ellos.

1. Índices de árbol B

2. Índices de mapas de bits

3. Índices basados en funciones

4. Índices de clave inversa

5. Índices de clúster de árbol B

¿Qué es un índice sin conglomerados?

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 base de datos de índice más utilizado. Si se emite el comando CREATE INDEX en la base de datos, sin especificar un tipo, el servidor de Oracle crea un índice de árbol b. Cuando se crea un índice de árbol b en una columna específica, el servidor de Oracle 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 cardinalidad baja. 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 las columnas no se ordenan de la forma habitual. Ordena los valores de las columnas después de aplicar la función. Estos son muy útiles cuando el cierre DONDE de la consulta de selección se utiliza como función.

Los índices de clave inversa son un tipo de índice muy interesante. Supongamos que una columna contiene muchos datos de cadena únicos como 'ciudadA', 'ciudadB', 'ciudadC'… 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 REVERSE en esta columna, Oracle invertirá la cadena y la restaurará en un índice de árbol b.

Los tipos de índice 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 físicamente los datos de la tabla. Por lo tanto, no puede haber muchos índices agrupados para una tabla. Una tabla solo puede tener un índice agrupado.

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

1. La tabla solo puede tener 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 principal, 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 es así.

Recomendado: