Trabalho PostgreSQL Índices e Otimizador
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET
TRABALHO DE BANCO DE DADOS
ÍNDICES E OTIMIZADOR EM POSTGRESQL
Novembro, 2013
Sumário
Sumário 2
Introdução 3
Índices 4
Tipos de índices 4
Índices únicos 8
Índices parciais 9
Índices em expressões 10
Curiosidades 11
Otimizadores 12
Geração dos planos possíveis 13
Configurações para o PostgreSQL 15
Conclusão 18
Referências bibliográficas 19
Introdução
De tempos para cá, as pessoas vem se acostumando a obter a informação com grande facilidade e rapidez e para isso os sistemas estão se tornando cada vez mais rápidos sempre exigindo maior …exibir mais conteúdo…
Índices R-tree ou Árvore R:
Os índices de árvores R são similares aos índices de árvores B, porém são utilizados para métodos de acesso no espaço, indexando informações multidimensionais, como coordenadas X e Y por exemplo. Um fácil e simples exemplo da implementação da árvore R seria o seguinte: "Encontre todos os restaurantes que estão até 1 Km de distância da minha posição atual", assim trazendo as informações através da pesquisa das coordenadas geográficas X e Y. Esta indexação é realizada através do algoritmo de partição quadrática de Guttman cuja implementação está limitada a dados com até 8 kbytes, portanto, se torna bastante limitada a implementação para dados geográficos reais.
No PostgreSQL, o comando para criar um índice R-tree é escrito da seguinte forma:
CREATE INDEX nome_do_indice ON tabela USING RTREE ( nome_da_coluna );
O planejador de comandos do PostgreSQL defini utilizar um índice R-tree sempre que a coluna indexada utiliza um dos seguintes operadores para uma comparação:
Operadores: ou >> ou @ ou ~= ou &&
Índices Hash:
Os índices Hash tratam apenas de comparações de igualdade simples, ou seja, WHERE X = Y, por exemplo. Para o melhor entendimento do índice Hash a seguinte notação se