Db2 for z/OS SQL performance

La qualité et l'efficacité sont les principales préoccupations des développeurs d'applications, donc aussi en matière d'accès aux données. Après avoir suivi ce cours, les participants sauront comment l'optimiseur de Db2 traite les requêtes SQL et les implémente de façon optimale; et comment on peut souvent améliorer la performance des requêtes.

L'accent est mis sur l'optimisation des requêtes et sur le fait de permettre un bon accès concurrent. Seront également traités, les aspects de design logique et physique et comment l'optimiseur utilise les informations statistiques dans le "catalog" de Db2 pour prendre de bonnes décisions. Pendant les séances pratiques, les participants auront la possibilité de pratiquer toutes les techniques traitées.

Calendrier

dateduréelang.lieuprix 
14 oct3web based 1575 EUR (excl. TVA)
INFO SESSION ET INSCRIPTION

Participants

Développeurs d'applications, analystes programmeurs et administrateurs de bases de données qui prennent part à l'optimisation en Db2. Le cours convient également aux personnes chargées de l'optimisation des requêtes "ad hoc" dans un infocentre, ou des requêtes utilisées dans le contexte d'un Data Warehouse.

Connaissances préalables

Connaître Db2 (cf. cours Db2 for z/OS: cours de base) et SQL (cf. cours SQL et RDBMS: cours de base et SQL workshop).

Contenu

  • Stratégie: les phases, les choses à entreprendre et les informations requises
  • Design logique et physique: normalisation et dénormalisation • implémentation optimale des tablespaces, indexes et tables
  • Le catalog Db2: contenu • signification et utilisation de l'information • mise à jour au moyen de RUNSTATS ou de l'SQL • Simulation de l'environnement de production dans un environnement de test • types d'information statistique, profiles runstats, et feedback de l'optimiseur
  • Les chemins d'accès en Db2: tablespace scan • utilisation d'index matching et non-matching • index-only • list prefetch • accès direct par RowID • accès hash
  • Relations entre les requêtes SQL et les chemins d'accès: stage-1 et stage-2 • utilisation d'indexes multiples • requêtes corrélées et non-corrélées • les méthodes de jointure • influence des clauses ORDER BY, OPTIMIZE FOR et FETCH FIRST • vues et CTEs • matérialisation (fichiers de travail)
  • La fonction EXPLAIN: exercices de lecture et interprétation des chemins d'accès, pour l'SQL statique mais également pour l'SQL dans le Dynamic Statement Cache (DSC), avec et sans Visual Explain
  • Optimisation des requêtes: que savons-nous de l'optimiseur? • Comment utiliser ces informations? • Comment convertir un prédicat stage-2 en un prédicat stage-1 indexable? • Quels facteurs de filtrage sont considérés par l'optimiseur? • Sont-ils réalistes? • Quelles sont les alternatives optimales pour les jointures, les sous-requêtes corrélées ou non? • Comment choisir le bon index? • Comment influencer l'optimiseur dans ses choix? • case studies
  • Utiliser une ou plusieures tables dans les recherches de performance: PLAN_TABLE, DSN_STATEMNT_TABLE, DSN_DETCOST_TABLE, DSN_FILTER_TABLE, et DSN_PREDICAT_TABLE
  • L'usage des "hints" (nouveau style) pour influencer l'optimiseur • predicate selectivity
  • L'usage des possibilités des "indexes virtuels" pour établir une analyse "what if"
  • Accès concurrent: choisir les paramètres Db2, stratégies et niveaux en matière de blocage (locking)

Pédagogie

Exposés théoriques et travaux pratiques.

Durée

3 jours.

Formateur

Peter Vanroose.

Reviews

4.1/5 (basé sur 27 évaluations; les plus récentes sont montrées ci-dessous)

interesting and useful for my function

 
  (, )

le cours correspondait a mes attentes

 
  (, )

Plutot bonne. J'ai appris pas mal de choses sur DB2.

 
  (, )

Goeie uitleg ivm werking optimizer & explain

 
  (, )

Cursus is goed in orde

 
  (, )

Ik heb een goed inzicht gekregen in de nieuwe mogelijkheden van DB2. Peter weet ook heel veel en geeft (soms zelfs teveel) achtergrondinformatie.

 
  (, )

Ik ben niet echt representatief omdat het een cursus voor gevorderden was, terwijl ik nihil wat van D2 c.q. SQL weet; het was voor mij meer een cursus om wat inzicht te krijgen zodat het mij wat zegt.

 
  (, )

Goed, vriendelijke docent, die op iedere vraag die er leefde uitgebreid in ging

 
  (, )

Cliquez ici pour voir d'autres commentaires...

Goed, snel en to-the-point met goede praktijkvoorbeelden

 
  (, )

het ging erg snel, Weinig tijd om de stof te laten bezinken. Verder goed

 
  (, )

Prima, weer een boel opgestoken

 
  (, )

prettig en zeer leerzaam

 
  (, )

INFO SESSION ET INSCRIPTION