CV964 - DB2 12 for z/OS Application Performance and Tuning
Durée : 5 jours
Tarif sur simple demande
Description
Dans ce cours, vous découvrirez comment éviter les problèmes et améliorer la performance des applications utilisant DB2 version 12.
Les principes aperçus dans ce cours sont majoritairement applicables quel que soit la version de DB2.
Public
Ce cours intermédiaire est destiné :
- Aux développeurs de programmes DB2 pour z/OS
- Aux administrateurs de base de données DB2 pour z/OS
- Aux responsables des performances et du réglage des applications dans un environnement DB2 pour z/OS
Prérequis
Pour suivre ce cours, vous devez avoir des connaissances de la programmation d’applications DB2 pour z/OS et de SQL.
Objectifs
- Concevoir de meilleurs index
- Savoir utiliser l'”optimizer” pour éviter les pièges
- Optimiser l’accès multi-tables
- Travailler avec des sous-requêtes
- Éviter les problèmes de verrouillage
- Utiliser les traces pour détecter des problèmes de performances significatifs
Programme
- Introduction aux performances et au réglage SQL
- Problèmes de performance
- Cas d’usage simple
- Constatation d’un problème
- Outils d’analyse récapitulative des performances
- Composantes du temps de réponse
- Estimations de temps avec VQUBE3
- SQL EXPLAIN
- Gestion des traces
- Graphique à bulles
- Seuils de performance
- Principes de base de l’index
- Indexation et structure de l’index
- Estimation des I/O d’index
- Index de clustering
- Page d’index pour diviser les chemins d’accès
- Classification
- Matching versus Screening
- Variations
- Hash access
- Prefetch
- Mise en garde sur les index
- Inclure l’index
- Index sur l’expression
- Index aléatoire
- Partitionné et partitionnement, NPSI et DPSI
- Filtrage de la plage de pages
- Caractéristiques et limites – méthodologie de réglage et coût d’index
- Coût de l’index : espace disque
- Coût de l’indice : Maintenance
- Utilitaires et index
- Modification et création d’index
- Éviter les tris d’index à la conception
- Approach
- Conception d’index via les chemins d’accès avancés
- Prefetch d’une liste
- Accès à plusieurs index
- Index adaptatif d’exécution Accès à plusieurs tables
- Méthodes de jointure
- Types de jointure
- Conception d’index pour les jointures
- Prédire les sous-requêtes de l’ordre des tables
- Sous-requêtes corrélées et non corrélées
- ORDER BY et FETCH FIRST avec des sous-requêtes
- Optimisation globale des requêtes
- Les tables virtuelles
- Comprendre les opérations sur les sous-requêtes (facultatif)
- UNION, EXCEPT et INTERSECT
- Rules
- En savoir plus sur les opérateurs d’ensemble
- Amélioration des performances UNION ALL
- Conception de la table (en option)
- Nombre de tables
- Dénormalisation de séquence de clustering
- Tables de requêtes matérialisées (MQT)
- Tables temporelles
- Archiver les tables activées avec l’optimizer
- Prédicats indexables ou non indexables
- Prédicats booléens et non booléens
- Facteurs de filtrage
- Travailler avec l’optimizer
- Problèmes de verrouillage de la pagination
- Le test ACID (Atomicité, Cohérence, Isolation et Durabilité)
- Raisons et mécanismes de la sérialisation
- Verrouillage des transactions
- Verrouiller la promotion, l’escalade et évitement des problèmes de verrouillage (facultatif)
- Ignorer les données verrouillées
- Données validées
- Optimistic locking
- Hot spots
- Conception d’applications
- Analyse des attentes de verrouillage Massive batch (facultatif)
- Problèmes de performances des batchs
- Opérations de pool de mémoire tampon
- Amélioration des performances
- Analyse des avantages
- Suppressions massives