cs_gorby69
Messages postés48Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention10 février 2006
-
19 août 2004 à 12:18
cs_gorby69
Messages postés48Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention10 février 2006
-
19 août 2004 à 14:18
Bonjour à tous,
J'attaque une base SQL 2000 Serveur en ASP. Je sais c'est pas le bon site mais c'est celui ou il y a à priori le plus de passage...
Le problème est au niveau de la performance de la base.
J'ai une table non indéxée de 43 colonnes contenant quasiemment 3 500 000 enregistrements.
Chaque requête sur cette table prends au minimum 30 secondes.
Que puis-je faire pour améliorer ce temps?
Le cache de la base est à 191 Mo et je ne peux manifestement pas plus l'augmenter.
Le serveur sur lequel tourne SQL n'est pas dédié.
Proç: AMD 2.4Ghz
256 Mo de Ram
grouzieres
Messages postés8Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention19 août 20041 19 août 2004 à 13:41
Salut,
Je pense que la réponse est dans ta question.
Il faut en effet créer des index sur ta table.
Les différentes requêtes que tu réalise sur la table vont te permettre de définir ces index. En effet, un index doit correspondre au mieux à des critères de sélection d'enregistrements.
Par ex., si tu a une requête :
select X, Y, R from table1
where X='1' and Z='A'
Un index sur table1 avec les colonnes X et Z va aider...
Par contre, je pense que créer trop d'index va nuire aussi aux perf.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 19 août 2004 à 13:51
Quelques index bien choisis aideront certainement mais la faiblesse de la config materielle impose a Sql Server beaucoup trop de swap pages sur HD. Pas de miracle a attendre, 1 Go de ram arrangerait bien les choses.