> Tech > Query Optimizer et statistiques sur les bases de données

Query Optimizer et statistiques sur les bases de données

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

par James Stewart et Dan Cruikshank - Mis en ligne le 17/06/2002
Query Optimizer DB2 UDB for iSeries s'appuie sur de nombreux facteurs pour prendre la meilleure décision lors de la mise en oeuvre d'une requête. Ces facteurs sont les suivants : nombre de processeurs, vitesse des processeurs, nombre de bras de disques, quantité de mémoire, niveau PTF et disponibilité de SMP (Symmetric Multiprocessing) ...

Les statistiques tirées des bases de données sont l'une des principales informations dont dispose l'Optimizer. Ce sont les informations contenues dans les descriptions de fichiers base de données associées aux tables, vues, et index du système. Ces statistiques sont multiples : nombre d'enregistrements, taille des enregistrements, entrées d'index, valeurs de clés uniques, et bien d'autres. Contrairement à  d'autres plates-formes où les statistiques sont générées manuellement, cette information est dynamique sur l'iSeries (et sur l'AS/400 et le System/38) et l'Optimizer a toujours pu en disposer instantanément.

On n'insistera jamais assez sur l'importance de ces données. En effet, l'excès ou le manque de statistiques de base de données peut faire une énorme différence quand on met en oeuvre et exécute une requête. Dans cet article, nous éclairons ce point grâce aux expériences vécues par deux sociétés réelles. Comme il est d'usage en la matière, on a changé les noms des sociétés pour éviter aux auteurs d'éventuels procès.

Query Optimizer et statistiques sur les bases de données

L’iSeries Query Governor peut empêcher
le démarrage d’une requête qui
risque d’être longue. Il le fait en comparant
la « meilleure estimation » du
Query Optimizer à  la valeur de Query
Time Limit.

Pour activer le Query Governor, il
faut donner à  la valeur système QQRYTIMLMT
une valeur autre que sa valeur par défaut *NOMAX. Si, par exemple,
vous donnez à  QQRYTIMLMT la valeur
60, le Query Governor ne transmettra
pas une demande de requête individuelle
au gestionnaire de base de données
pour exécution, si l’Optimizer estime
que l’exécution de la requête
dépassera 59 secondes.

On voit bien l’avantage du Query
Governor : éviter le gaspillage de ressources
dans l’exécution d’une longue
requête. L’inconvénient correspondant
est que l’estimation de
l’Optimizer doit être raisonnablement
précise. C’est exactement cela – une
estimation trop généreuse de la part
de l’Optimizer – qui a soulevé le problème
suivant.

Téléchargez cette ressource

Guide de cybersécurité en milieu sensible

Guide de cybersécurité en milieu sensible

Sur fond de vulnérabilités en tout genre, les établissements hospitaliers, pharmacies, laboratoires et autres structures de soin font face à des vagues incessantes de cyberattaques. L’objectif de ce livre blanc est de permettre aux responsables informatiques ainsi qu’à l’écosystème des sous-traitants et prestataires du secteur médical de se plonger dans un état de l’art de la cybersécurité des établissements de santé. Et de faire face à la menace.

Tech - Par iTPro.fr - Publié le 24 juin 2010