Db2 for z/OS SQL performance

Kwaliteit en efficiëntie is voor applicatieontwikkelaars een hoofdbekommernis; dit geldt uiteraard ook voor alle aspecten van datatoegang. Na het volgen van deze cursus weet u hoe de Db2-optimizer in staat is, SQL-queries zo optimaal mogelijk te implementeren, en kan u een aantal technieken toepassen om de performance van queries nog verder te verbeteren.

Query-optimalisatie en een goede concurrency worden benadrukt. Er wordt verder ook ingegaan op aspecten van logisch en fysiek ontwerp en op de statistische informatie in de Db2-catalog die door de optimizer wordt gebruikt.

De cursisten krijgen tijdens de praktische sessies uitgebreid de kans om alle besproken technieken in te oefenen.

Kalender

datumduurtaalplaatsprijs 
22 jun3Leuven 1575 EUR (excl. BTW)
SESSIE-INFO EN INSCHRIJVEN

Doelgroep

Applicatieontwikkelaars, analisten en database-administrators. Verder de personen die belast zijn met de optimalisatie van ad-hoc queries in bijvoorbeeld een infocenteromgeving, of de queries die gebruikt worden in de context van een Data Warehouse.

Voorkennis

Kennis van Db2 (cf. cursus Db2 for z/OS basiscursus) en van SQL (cf. cursussen SQL en relationele databases: basiskennis en SQL workshop).

Inhoud

  • Strategie: fasen, acties en benodigde informatie
  • Logisch design en fysieke structuren: normalisatie en denormalisatie • optimale implementatie van tablespaces, indexen en tabellen
  • De catalog: inhoud, betekenis en gebruik van de informatie • update door middel van RUNSTATS of SQL statements • simulatie van de productieomgeving in een testomgeving • soorten statistische informatie, runstats-profielen en optimizer-feedback
  • De basis-toegangspaden van Db2: tablespace scan • matching en non-matching indexgebruik • index-only-toegang • list prefetch • direct access via RowID • hash-toegang
  • Relatie tussen de SQL-query en de toegangspaden: stage-1 versus stage-2 • multi-index-gebruik • gecorreleerde versus niet-gecorreleerde subqueries • de verschillende join-methoden • invloed van ORDER BY, OPTIMIZE FOR en FETCH FIRST clauses • views en CTEs • materialisatie (work files & in-memory work tables)
  • De EXPLAIN-functie: oefeningen in het lezen en interpreteren van de toegangspadbeschrijvingen, zowel voor statische SQL als via de Dynamic Statement Cache (DSC), met en zonder Visual Explain
  • Query-optimalisatie: wat weten we over de optimizer? • hoe gebruiken we deze informatie? • hoe een stage-2-predikaat omzetten in een indexeerbaar stage-1-predikaat? • welke filter-factoren veronderstelt de optimizer? • zijn deze realistisch? • hoe kiezen we het optimale alternatief uit een join, een correlated of non-correlated subquery? • hoe bepalen we de juiste index? • hoe beïnvloeden we de keuze van de optimizer? • case studies
  • Gebruik van één of meer van de explain-tabellen in het performance-onderzoek: PLAN_TABLE, DSN_STATEMNT_TABLE, DSN_DETCOST_TABLE, DSN_FILTER_TABLE, en DSN_PREDICAT_TABLE
  • Gebruik van "hints" (nieuwe stijl) om de Db2-optimizer te beïnvloeden • predicate selectivity
  • Gebruik van de "virtuele index"-mogelijkheden voor het uitvoeren van een "what if"-analyse
  • Concurrency: keuze van de juiste Db2-parameters, lock levels en locking-strategie

Verloop van de cursus

Klassikale training met praktijkoefeningen.

Duur

3 dagen.

Docent

Peter Vanroose.

Reviews

4.1/5 (gebaseerd op 31 evaluaties; de meest recente worden hieronder getoond)

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

 
  (, )

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.

 
  (, )

prettig en zeer leerzaam

 
  (, )

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

 
  (, )

Klik hier om meer commentaren te zien...

Veel nuttige info om in praktijk te brengen. Voor mij als syspto nuttige info

 
  (, )

Het is een goede cursus geworden die aansluit op onze gaps of knowledge

 
  (, )

uitermate nuttig, sluit goed aan en draagt bij aan huidig kennisniveau

 
  (, )

goede docent, goede inhoud

 
  (, )

Erg goede inhoud. Wel veel; gelukkig is de documentatie goed te gebruiken als naslagwerk

 
  (, )

interesting and useful for my function

 
  (, )

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

 
  (, )

le cours correspondait a mes attentes

 
  (, )

SESSIE-INFO EN INSCHRIJVEN