Í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 tablas. Son lógicamente y físicamente independientes de los datos en las tablas asociadas. Por lo tanto, los índices se pueden soltar, recrear y reconstruir sin afectar los datos de las tablas base. El servidor 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 índices. Éstos son algunos de ellos.
1. Índices de árboles B
2. Índices de mapa de bits.
3. Índices basados en funciones
4. Índices de clave inversa
5. Índices de agrupamiento de árbol B
¿Qué es un índice no de clúster??
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 el comando CREATE INDEX se emite en la base de datos, sin especificar un tipo, el servidor Oracle crea un índice b-tree. Cuando se crea un índice b-tree en una columna específica, el servidor 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í, una función se utiliza en la columna indexada. Por lo tanto, en un índice funcional, los datos de columna no se ordenan de la manera normal. Ordena los valores de las columnas después de aplicar la función. Son muy útiles cuando el cierre de la consulta de selección se utiliza una 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 'cityA', 'cityB', 'cityC' ... etc. Todos los valores tienen un patrón. Los primeros cuatro caracteres son iguales y las siguientes partes se cambian. Entonces, cuando se crea el índice de la clave REVERSA 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 CLUSTRADOS. 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 los datos de acuerdo con la forma de almacenar los datos de la tabla físicamente. 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 los índices agrupados y los 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. |