woensdag 11 september 2013

Basic tuning diagnostics

Oracle Db server captures info over its own operation

1. cumulative statistics
 count and timing info for a variety of events that occur in db. Bijv Buffer busy waits. Krijgen pas waarde als je over de tijd met elkaar vergelijkt. In Oracle 11g worden een time model gebruikt (percentage DB time)

2. Metrics
Statistic count per unit.  (Unit=seconds, transaction, session, allocated space). Hier kunnen tresholds op gezet worden

3. Sampled Statistics *hier mee kan je statistics in het verleden gebruiken

Performance tuning tools

- Statistics worden in tabllen en views opgeslagen. Dit kunnen permanente tabellen zijn (gatherd by DBMS_STATS for the optimizer) of memory based Dynamic tables die wegzijn na herstart db.
- Alert log: chronologische opsomming van db events en informational messages---> info over draaien van db die tuning info kan bevatten
- trace files: aangemaakt door background en user processen wanneer een certain event occurs.
- Statspack: set van procedures an scripts meegeleverd met alle versies van Oracle
- Diagnostic pack (AWR en bijbehorende tools). Tuning Pack maakt gebruikt van Diag pack. Alleen bij de Enterprise edition

statspack en Awr houden beiden snapshots van dynamic statistics snapshots bij . Deze zijn incompatibel.
Voordeel AWR boven statspack: manages storage of data autom. en provides improved interpretation of performance data


Tuning doelen

Zoveel mogelijk doen in zomin mogelijk tijd.oftewel
- wait time gebruiker verlagen en verminderen het verbruik van resources
- doorloopsnelheid verhogen


Top timed foreground wait events is een goede start om te tunen

DB time

DB Time = DB wait time + DB CPU time
wait time is dom van alle waits voor db resources
cpu time is tijd die besteed wordt aan daadwerkelijk verwerke

Tunen is Wait time  en CPU time verlagen

Vuistregel: Vooral een systeem waar wait time in verhouding hoog is moet getuned worden


TIME model

Veel compontenten betrokken bij tunen van Oracle DB met elk eigen set statistics. Hoe kan je tuning actie meten tov het systeem. Hiervoor is is TIME de gemeenschappelijke regel voor vergelijkingen.
Oracle gebruikt daarom Time model. (v$sys_time_model v$sess_time_model)
DBtime is hier belangrijkst. = totale tijd die verbruikt wordt door user sessies en betreft the totale instance workload. Som of CPU en wait time of alle non-idle user sessions.
     

Geen opmerkingen:

Een reactie posten