TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Índices agrupados

Seminário: Índices agrupados. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  2/4/2014  •  Seminário  •  466 Palavras (2 Páginas)  •  270 Visualizações

Página 1 de 2

Embora o uso de índices seja uma função básica para todos os principais SGBDs e ferramenta fundamental para a qualidade das consultas em banco de dados, é muito comum que desenvolvedores negligenciem seu uso. Um dos motivos é que normalmente as consultas SQL são confeccionadas durante o desenvolvimento dos sistemas, quando as tabelas possuem poucos registros. À medida que elas crescem em tamanho, problemas de performance começam a aparecer.

E se a professora pedisse para que procurasse alguma página que faça referência ao ex-presidente Getúlio Vargas? Sabendo que normalmente estes livros possuem índices remissivos no final, você então procura neste índice pelo nome “Getúlio Vargas”, olha em que página ele se encontra e folheia até ela. Um pouco mais trabalhoso, porém sem grandes dificuldades.

É importante perceber que, mesmo quando aplicamos um filtro em uma consulta e esta retorna um número reduzido de registros, não necessariamente será uma consulta eficiente.

Esta é a função dos índices no SQL Server e em outros SGBDs. Achar os registros com mais eficiência. Pode ser um SELECT, UPDATE ou DELETE, o SQL Server vai sempre tentar achar a forma mais rápida de executar uma QUERY.

Índices Clusterizados (Clustered Indexes)

O índice clusterizado, quando presente, é nada mais nada menos que a tabela em si, ordenado por uma ou mais colunas. Uma tabela só pode ter um (1) índice clusterizado.

Um índice clusterizado é criado automaticamente quando se é definida uma constraint do tipo PRIMARY KEY para uma ou mais colunas. Quando este índice é criado em uma (ou mais) coluna(s) que não garanta(m) sua unicidade, será criado internamente um identificador único, chamado “uniqueifier”. Este índice é muito importante pois ele quando usado em conjunto com o índice não clusterizado (explicado em seguida), torna a consulta mais eficiente.

Índices Não Clusterizados (Non-Clustered Indexes)

Um índice não clusterizado é análogo ao índice . No SQL, quando criamos um índice não clusterizado, usamos uma ou mais colunas como chave. O SQL Server então ordena estas colunas e cria um ponteiro para o registro na tabela. Isso significa que os índices e seus registros são criados fisicamente no bando de dados.

Melhores práticas para criação de índices:

• Mantenha o índice mais enxuto possível. Índices com muitas colunas são mais “pesados” para o SQL conseguir retornar os dados e manter o índice atualizado. Não esqueça que toda operação INSERT, UPDATE e DELETE aplicada na tabela deverá ser replicada a todos os índices que contenham as colunas afetadas.

• Tente criar o índice usando colunas com alta seletividade. Por exemplo, considere a seguinte consulta:

• Crie um índice clusterizado (clustered index) em todas as tabelas que tenha muitos registros. Escolha com cuidado a(s) coluna(s) que farão parte do índice. Prefira as colunas que serão usadas frequentemente em filtros e em JOINS. E lembre-se que o índice clusterizado é criado automaticamente em tabelas com PRIMARY KEY definida.

...

Baixar como (para membros premium)  txt (3 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com