Melhorar desempenho em pesquisa

5 respostas
eduardoluiz.ribeiro

Olá galera eu estou com um pequenho problema o desempenho das pesquisas estão muito lento bom oque eu podia melhorar no bd eu fiz só que algumas pesquisas não tem como eu fazer por chave primária eu gostaria de saber como posso fazer para melhorar o desempenho dessas pesquisas??? valew galera!

5 Respostas

Rubem_Azenha

Resposta curta e burra: Criar indices nas colunas.

Resposta longa e “inteligente”: Cara, depende muito do banco, da aplicação, do SO, para que servem as consultas… existem N coisas que você pode fazer, desde simplesmente criar indices nas colunas, até desnormalizar a tabela, passando por utilizar um Lucene da para vida para criar um serviço de indexação de verdade, otimização das queries, utilização de um mecanismo de cache…

Luca

Olá

Já existe um índice na base de dados no campo que quer pesquisar?

[]s
Luca

rafaelglauber

Oi,

Somente completando as sugestões acima:

  1. Já pensou numa turbinada no hardware?
  2. Já verificou se tá fazendo a melhor pesquisa? Verifica se sua consulta não tá errada gerando um produto desnecessário. Exemplo:
pedido                      item
---------------------------------------------------
num_ped_pk             num_ped_pk
filial_ped_pk              filial_ped_pk
id_vendedor              id_mercadoria
id_cliente                  quantidade
valor
select distinct item.* from pedido, item where pedido.num_ped_pk = item.num_ped_pk

repare que o programador colocou distinct para resolver um problema no join, pois a PK é composta, isso faz o banco perder tempo correndo registros desnecessários. Esse tipo de erro é comum por falta de atenção e nem precisa de indice, pois normalmente os BD já criam indices para as chave primárias automaticamente.

eduardoluiz.ribeiro

opa galera, eu ja estava vendo questões sobre a criação de indeces mesmo, bom no livro que pesquisei diz que pode ser muito bom mas que se exagerar fica ruim eu vou ver agora como posso estar indexando sem prejudicar o banco e vou rever tb a questão das minhas consultas pode ser que eu possa melhorar lá tb, há outra coisa que eu percebi, é que como estou atualizando um bd ja existente, com a criação de um novo campo estão aparecendo muitos dados nulos e eu vi nesse livro (sql prático do Carlos henrique Poderoso) que esses dados em branco prejudicam o desempenho então vou ver tb como posso estar lidano com eles valew a ajuda galera!

eduardoluiz.ribeiro

houston we have problem!!! huauaha fala galera eu tentei as duas soluções porém sem exito se alguém tiver mais alguma sujestão! estou apelando para refazer a estrutura da consulta das tabelas rsrsrs valew galera!

Criado 28 de julho de 2008
Ultima resposta 29 de jul. de 2008
Respostas 5
Participantes 4