El 07/05/12 09:40, Lazaro Ruben Garcia Martinez escribió:
Hola a todas en la lista, les escribo porque tengo unas dudas relacionadas con la búsqueda indexada (index scan). Según tengo entendido, un índice es una copia de un campo de la tabla, cuya estructura es un árbol binario de búsqueda, sobre el cual se realiza el recorrido. Las preguntas son las siguientes:

1- Los bloques de datos solo son leídos cuando el índice satisface la condición de búsqueda y es necesario revisar el bloque de dato para ver la visibilidad del campo, o siempre que se recorre un nodo del árbol, se revisan los bloques de datos donde están los datos de la tabla?

2- Cuando existen tuplas muertas en una tabla, donde para esa tupla hay una columna que esta siendo indexada, tiene ese índice alguna información de la tupla muerta; en caso de no conocer que la tupla esta muerta pudiera ser ese el motivo por el cual se recorren los nodos del árbol y luego se revisan los bloques de datos, para ver la visibilidad de la tupla?

Saludos a todos y muchas gracias por su tiempo.

El la versión 8.4 se introduce "visibilitymap", estructura que almacena si todas las tuplas en una página están visibles para todas las transacciones actuales y futuras, permitiendo que cuando se realice un index scan no se escanee completamente todas las páginas en la tabla para comprobar su visibilidad.

En la versión 9.2 que está en desarrollo, se incluyó los "index only scans", donde si los datos a devolver en la consulta son los que almacena el índice, se devolverán utilizando la estructura del índice directamente.

Saludos
Saludos


10mo. ANIVERSARIO DE LA CREACION DE LA UNIVERSIDAD DE LAS CIENCIAS 
INFORMATICAS...
CONECTADOS AL FUTURO, CONECTADOS A LA REVOLUCION

http://www.uci.cu
http://www.facebook.com/universidad.uci
http://www.flickr.com/photos/universidad_uci

Responder a