Jump to content


Photo

Dúvida Com Relação A Performance


  • Faça o login para participar
1 reply to this topic

#1 sodra

sodra

    12 Horas

  • Usuários
  • 174 posts
  • Sexo:Não informado

Posted 11/02/2008, 14:10

Bom dia pessoal,

Sou meio novo na plataforma .NET e estou com uma dúvida com relação a performance. Na verdade é algo mais conceitual do que técnico.
No software que estou desenvolvendo a base de dados atual conta com mais de 17 mil registros e isso tende a aumentar, será pouco mas de qualquer forma irá aumentar.
A base de programa é uma busca ao bd para retornar o preço do livro pesquisado. Eu fiz essa busca de duas formas e agora preciso de um help para avaliar qual delas é melhor com relação a performance.

Na primeira opção fiz que a cada pesquisa fosse criada uma conexão com o bd e fazia um select com where. Desta forma se fizer a busca retornar todos os registros do bd, isso levará aproximadamente 5s entre buscar e mostrar na tela.

Na segunda opção fiz que ao carregar a aplicação fosse gerado um dataset com todos os registros do bd. E as pesquisas são feitas neste dataset já desconectado. E no mesmo teste de retornar todos os registros isso levou 4s.

Conclusão com o dataset eu economizo 1s de espera do usuário, mas em contrapartida o uso de memória sobre muito. Gostaria de saber a opinião de vocês sobre qual seria a melhor solução.


Obrigado,
Gustavo Bodra

"Muitos dizem skate na veia, mas poucos sabem, realmente, o que é skate nos pés"

#2 MACUL

MACUL

    Doutor

  • Usuários
  • 770 posts
  • Sexo:Masculino
  • Localidade:SP

Posted 20/02/2008, 14:28

A primeira coisa é que 17 mil registros não é um volume para vc ter essa performance não é um grande volume.

Qual é o banco de dados que vc está utilizando ?

Analise novamente seu código, envie código para vermos ?

É estranho os tempos serem parecidos.

http://www.macul.eti...esconectado.htm


veja alguns pontos

Esse artigo fala sobre performance do SQL SERVER
http://www.yafla.com..._sql_server.htm

como um peqena diferença nos comandos abaixo
SELECT * FROM Orders WHERE ShipPostalCode = '05022'
SELECT * FROM Orders WITH(INDEX(0)) WHERE ShipPostalCode = '05022'

existem n variáveis para performance, melhorando um pouco cada uma ...
*************** M ** A ** C ** U ** L ***************

*************************************************




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq