Sei sulla pagina 1di 3

B-Tree Index Este es el tipo de ndices normal de Oracle, estos ndices son los que ms se utilizan, estn organizados

en una estructura de rbol B y por lo general se utilizan para las llaves primarias de manera que se pueda hacer una bsqueda por llave ms rpido. NDICE B-TREE CLUSTER Este tipo de ndice se utiliza para indexar una clave cluster de la tabla. En lugar deapuntar a una fila, la clave apunta al bloque que contiene las filas relacionadas a laclave cluster. Un ndice clster es una tabla clster que utiliza un ndice para localizarlos datos NDICE HASH CLUSTER Es como un ndice cluster, excepto que la clave del ndice es remplazada por unafunction hash. No existe ndice cluster separado. En un hash cluster, los datos son elndice. Los Hash clusters pueden ser beneficiosos en los siguientes casos: Cuando una tabla es consultada con ms frecuencia que modificada. Se puede conjeturar razonablemente el nmero de claves hash y el tamao delos datos almacenados con cada valor de clave.
Unique

Index Organized Tables Este es un tipo de ndice que naci con la versin 8 de Oracle y se utiliza por lo general para aplicaciones Web debido a que por lo general estas aplicaciones hacen bsquedas de un solo campo por medio de la llave primaria. Una IOT se define desde su creacin, agregando ORGANIZATION INDEX al final de la sentencia CREATE TABLE, y lo que hace es que los datos de la tabla se van guardando dentro del ndice, entonces cuando uno hace un SELECT los datos salen ordenados. Bitmap Index Los ndices de bitmap son muy recomendables en columnas en las cuales los valores ser repiten y representan una divisin en categoras, por ejemplo columnas como gnero, estado civil, etc. Tambin son muy recomendables cuando no cambian mucho, aunque sean muy variantes. Bitmap Join Index Este tipo de ndice, es muy til en tablas que estn relacionadas y hay muchas consultas que hacen Join de estas tablas, al igual que el bitmap index normal, solo se recomienda cuando la cardinalidad de los valores de la columna no es muy grande. Aparte este tipo de ndice, solamente se recomienda en Data Warehose porque son muy rpidos haciendo joins y devuelven los resultados en muy poco tiempo, por el contrario al hacer inserts y updates, tienen consecuencias en el rendimiento. Domain Index Estos ndices se utilizan para un dominio especializado, se utiliza mucho con dominios de texto o imgenes, ya que en estos ndices se utilizan los indextype donde se puede especificar la implementacin.

Cluster Index Este ndice consiste en unas tablas que comparten los mismos bloques de datos, utilizan un valor llamado clster key value que es el valor de las columnas involucradas para una fila en especfico. E clster key sirve para guardar juntas las filas que tengan el mismo valor y solo guarda una vez cada valor distinto. Hash Cluster Index Este ndice es muy parecido al anterior, pero se aplica una funcin de hash al cluster key para poder encontrar las dems filas con el mismo cluster key. Partitioned tables Cuando las tablas crecen mucho, acceder a ellas puede significar un bajo rendimiento, por eso surge el concepto de tablas particionadas que es dividir las tablas en partes independientes, se le puede sacar backup independientemente, el rendimiento de las consultas puede aumentar significativamente, y se pueden hacer transacciones paralelas en particiones diferentes. Es comn que las diferentes particiones, se coloquen en un tablespace diferente para optimizar aun ms el rendimiento. Function Based Index Este tipo de ndice es muy sencillo pero muy til y puede llegar a mejorar los tiempos de respuesta increblemente. Este ndice no es ms que un ndice B-Tree pero sobre una funcin, por ejemplo para las consultas dadas para este proyecto se utiliza mucho la funcin upper entonces cree un ndice B-Tree sobre la funcin upper del campo nombre, entonces en ndice estn los datos ya con la funcin upper aplicada. Patitioned Index Este es un ndice para el cual se definen particiones, exactamente igual que cuando se particiona una tabla, esto se hace con el objetivo de mejorar el tiempo de acceso a los datos cuando el ndice es demasiado grande. Reverse key indexes Tambin puede haber estos ndices, o si quiere usarlos de vez en cuando. Considere la posibilidad de una columna, que incluye nombres como "Restaurante A", "Restaurante B", "Restaurante C" y as sucesivamente. Tal vez un ejemplo no muy aplicable, pero el punto es una columna con muchos valores nicos, pero la variacin no es mucho en la parte delantera. Utilizando un ndice de clave inversa sera ideal aqu, porque Oracle simplemente invirtiendo la cadena antes de depositarla en el rbol b. Por lo tanto, el resultado ser un ndice ms equilibrado, til y rpida en ltima instancia. Virtual (no segment) indexes Otra herramienta para los testers y desarrolladores. Ellos le permiten probar nuevos ndices y su efecto en los planes de consulta, sin llegar a la construccin. En las tablas, el ndice de construccin puede ser muy intensivo en recursos, y tomar mucho tiempo. Vase tambin el Asistente virtual Indice de OEM. NDICES CREADOS POR ORACLE DE MANERA AUTOMTICA Al crearse la tabla se crea: Un ndice UNIQUE basado en B*-tree para mantener las columnas que se hayan definido como clave primaria de una tabla utilizando el constraint PRIMARY KEY de una tabla no organizada por ndice. Un ndice UNIQUE basado en B*-tree para mantener la restriccin de unicidad de cada grupo de

columnas que se haya declarado como nico utilizando el constraint UNIQUE. Un ndice basado en B*-tree para mantener las columnas que se hayan definido como clave primaria y todas las filas de una tabla organizada por ndice. Un ndice basado en hashing para mantener las filas de un grupo de tablas (cluster) organizado por hash. ndices en Oracle

NDICE ASCENDENTE Y DESCENDENTE Este tipo de ndice almacena datos en una columna o columnas en orden ascendente o descendente.

TIPOS DE NDICES PARTICIONADOS. ndices locales: Cada particin de un ndice local corresponde a una y solo una particin de la tabla subyacente. Un ndice local es un ndice en una tabla particionada de la misma forma de la tabla particionada subyacente de tal manera que hereda la particin de la tabla. ndices Particionados Globales: Los ndices globales solo pueden particionarce utilizando la particin por rango. Un ndice particionado global es un ndice en una tabla particionada o no particionada que se particiona utilizando una clave de particionamiento de la tabla. ndices Globales No Particionados: Un ndice global no particionado es esencialmente idntico a un ndice en una tabla no particionada. La estructura del ndice no est particionada y no se acopla con la tabla subyacente.
NDICE INVISIBLE Estos ndices son nuevos en 11g. Se crean como un ndice normal, pero invisible para eloptimizador basado en costos. Esto puede permitir poner a prueba el rendimiento delas consultas grandes, sin afectar a la aplicacin que est corriendo en ese momento.

Potrebbero piacerti anche