Question

Je cherche des informations sur la façon dont SQL Server gère effectivement l'exécution des requêtes dans des détails plus fins (comme ce que les données sont conservées dans un tampon / mémoire et comment il décide d'obtenir de nouvelles données, même s'il y a un changement de mise à jour dans une seule colonne une table impliquée dans une requête etc)

Si quelqu'un sait sources s'il vous plaît laissez-moi savoir?


Nous avons une application web utilisant le serveur SQL 2000, il a souvent lourd lit près de 70% des tableaux (tableau de bord) toutes les 30 secondes. et en même temps beaucoup de d'écritures se produisent.

S'il vous plaît laissez-moi savoir des conseils pour l'optimisation du scénario ci-dessus?

Était-ce utile?

La solution

Personne ne va être en mesure de vous donner une réponse sur la façon de résoudre votre problème d'optimisation. Cela nécessite l'accès à votre serveur de base de données. Pour résoudre vos problèmes, vous devez comprendre à peu près comment fonctionne la base de données, et pour cela, vous devez faire un peu de lecture.

Ressources en ligne sont OK, mais les trois livres suivants sont inestimables. Les deux premiers livres ont des informations très détaillées sur la façon dont fonctionne SQL Server. Les derniers est un guide de la façon d'écrire des requêtes mais avec une discussion sur la façon dont le point de vue du moteur interroge ainsi.

  1. Kalen Daleney: Sql Server 2008 Internes
  2. SQL Server 2005: Dépannage pratique :
  3. Ben Gan et al : Inside SQL Server 2008: T-SQL Interrogation

Autres conseils

Il faudrait beaucoup de messages pour répondre aux questions de type de internes, je vous suggère de commencer à lire certains des livres blancs / blogs et quelques livres.

Pour 2000 architecture SQL Server de Ken Henderson vous donnera en profondeur les détails internes, pour les éditions les plus récentes de SQL, il a fait un tir de difficulté pratique 2005 qui est pas mal, et SQL 2008 livre Internes de Kalen Delaney est très bon.

Vous devriez examiner le plan d'exécution.

Ctrl-L de presse dans le SSMS ou question SET SHOWPLAN_TEXT ON avant d'exécuter la requête.

Cela vous donnera des informations détaillées sur les index sont utilisés, qui se joignent des algorithmes appliqués etc.

Vous pouvez également voir les statistiques:

SET STATISTICS TIME ON
SET STATISTICS IO ON

, qui vous donnera les informations sur le nombre de lectures ont été effectuées à partir de tables réelles, cache etc., et combien de temps (temps réel et CPU) fait chaque prise de requête.

A propos de SQL Server 2008 Gestion de la mémoire tampon: http://msdn.microsoft. com / fr-ca / bibliothèque / aa337525.aspx

Ensuite, vous pouvez parcourir avec la barre latérale gauche pour obtenir des informations sur d'autres sujets.

En ce qui concerne les sources externes vont, MSDN a une approche globale ressources sur l'optimisation de votre installation de SQL Server 2000, en particulier les modèles et pratiques du papier sur la performance et l'évolutivité.

Si vous savez où commencer à chercher, adopter une approche ascendante avec l'examen de profils SQL et des plans de requête comme cela a été mentionné. Dans le cas contraire, commencez par le haut vers le bas et en apprendre davantage sur les coûts impliqués dans les requêtes recompiler, comment indexer efficacement, et comment l'optimisateur de requêtes utilise des statistiques.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top