par Kent Milligan - Mis en ligne le 17/03/2004
Pour analyser rapidement les problèmes de performance de la base de données
La possibilité de créer des objets
base de données avec à la fois DDS et
SQL peut rendre difficile la recherche
de tous les objets base de données associés
à une table (ou fichier physique)...C'est particulièrement vrai
pour les index sur DB2 UDB for iSeries.
Voici tous les objets qui pourraient
avoir besoin d'un index de base de
données pour être créés (ou partagés)
sur DB2 UDB for iSeries :
- Index SQL
- Fichiers logiques avec clés
- Fichiers physiques avec clés
- Clés primaires, clés étrangères et
contraintes uniques
Trouver tous les index pour une
table particulière est important parce
que l'optimiseur de requêtes compte
énormément sur les index pour l'optimisation
et l'implémentation de vos requêtes.
Donc, le fait de savoir de quels
index dispose l'optimiseur peut vous
aider à analyser des problèmes de performance
de la base de données.
A l'heure actuelle, aucune interface iSeries ne peut à elle seule fournir la
liste complète des index pour une
table. La commande CL DspDbR
(Display Database Relations) donne
une liste de tous les index SQL et des fichiers
logiques avec clés, mais elle ne
fournit aucune information sur les index
qui sont associés à un fichier physique
avec clés ou à des contraintes de
base de données. La commande
DspFD (Display File Description) renvoie
une liste des index associés avec
contraintes et fichiers physiques avec
clés, mais elle ne donne pas d'information
sur les index SQL et sur les fichiers
logiques avec clés. Même le composant
Database Navigator d'iSeries
Navigator (précédemment Operations
Navigator, OpsNav) omet les index de
fichiers physiques avec clés de sa représentation
graphique de tous les index
associés à une table.
L'utilitaire de listing des index résout
ce problème en offrant une méthode
unique (une procédure stockée)
que l'on peut appeler pour
produire une liste de tous les index
pour une table particulière. Le listing des index produit cette liste en appliquant
les requêtes aux vues du catalogue
de base de données dans la bibliothèque
QSys2 et les fichiers à
référence croisée du système de base
de données dans la bibliothèque QSys.
En utilisant les requêtes, l'utilitaire se
dispense de créer d'abord un fichier de
sortie (en utilisant les commandes système)
ou tout autre type de table de
travail. (La source pour l'utilitaire de
listing des index peut être téléchargée
à l'adresse www.itpro.fr Club
Abonnés).
Pour employer l’utilitaire, il suffit d’appeler
la procédure stockée, en lui passant
le nom de la table et la bibliothèque
de la table. Le nom de table
fourni peut être soit le nom de table
système plus court, soit le nom SQL
plus long (si la table a été créée avec
SQL Server).
La procédure renvoie le listing des
index via un jeu de résultats, de sorte
que l’interface d’invocation doit être
capable d’afficher un jeu de résultats. Sur l’iSeries, l’interface la plus naturelle
avec ce type de possibilité est la
fenêtre iSeries Navigator Run SQL
Scripts. De cette fenêtre, l’appel suivant
vers cet utilitaire produit la sortie
illustrée en figure 1 :
Call QGPL.IndexList(‘PF1′,’KMTEST’);
Dans la figure 1, on voit que le listing
des index ne contient pas que le
nom et la bibliothèque de l’index. Il
contient aussi une liste des colonnes
clés (champs) et l’ordre de chaque colonne
avec l’attribut d’unicité de l’index.
Voici comment démarrer avec l’utilitaire
:
Interface 5250
1. Placer les instructions SQL de la procédure
stockée dans un membre du
fichier source.
2. Créer la procédure stockée avec la
commande RunSQLStm (Run SQL
Statements)
iSeries Navigator
1. Couper et coller les instructions SQL
de la procédure stockée dans la fenêtre
iSeries Navigator Run SQL
Scripts.
2. Sélectionner l’option Run All pour
créer la procédure stockée.
Remarque : Le produit DB2 Query
Manager and SQL Development Kit est
nécessaire pour créer une procédure
SQL sur la V5R1. Si vous n’avez pas ce
produit installé, vous pouvez transférer
un fichier de sauvegarde contenant
l’objet programme associé à cette procédure
SQL. Restaurer l’objet programme
de la procédure stockée a
pour principal effet de créer la procédure
SQL sur votre système sans être
obligé d’installer le Development Kit.
Au niveau de la V5R2, le Development
Kit n’est plus nécessaire pour la création
des procédures stockées SQL.
Téléchargez cette ressource
Sécuriser votre système d’impression
Longtemps sous-estimée, la sécurisation d’un système d’impression d’entreprise doit être pleinement prise en compte afin de limiter le risque de fuite d’informations sensibles. Voici les 3 principales précautions à prendre.