1.2 - Como o SGBD processa uma operação SELECT/WHERE utilizando um índice

Quando o índice existe, seja ele criado temporariamente ou já preexistente, o SGBD utiliza esses índices para dividir o conjunto total de registros em subconjuntos menores (usando o algoritmo b-tree), fazendo assim menos testes lógicos. Ao final, o SGBD irá retornar para o usuário o resultado do último subconjunto criado.

Exemplo: Vamos supor a mesma operação anterior, SELECT * FROM FUNCIONARIOS WHERE Idade > 18 AND Salario > 1.000, com a tabela de funcionários possuindo 10.000 registros:

Observe que o número máximo de testes lógicos executados foi de apenas 23 operações, contra 10.000 operações do modelo anterior (sem uso de índices), e que o acesso a disco leu apenas 800 registros, contra 10.000 do modo anterior. Dessa forma, fica claro que o uso de índices é extremamente benéfico para aumentar a performance das consultas SQL.
Copyright © 2016 AIEC.