Perf file io efficiency
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Type | Script SQL*Plus de diagnostic |
| Voir aussi | Perf file io · Perf file io 7 · Perf file waits |
Perf file io efficiency ne mesure pas le volume d'I/O comme Perf file io, mais son
efficacité : le rapport entre nombre de requêtes I/O (phyrds/phywrts)
et nombre de blocs effectivement transférés (phyblkrd/phyblkwrt),
cumulé depuis le démarrage de l'instance. Un ratio proche de 100 % signifie que chaque requête
I/O ne transfère qu'un seul bloc (lectures aléatoires via index, typiques des tablespaces
d'index) ; un ratio bas signifie des I/O multi-blocs (scans complets, typiques d'un tablespace
de données mal indexé ou d'un full table scan).
Script
-- Efficacité I/O par fichier : requêtes I/O vs blocs transférés, cumulé depuis
-- le démarrage de l'instance.
SET LINESIZE 145
SET PAGESIZE 9999
COLUMN ts FORMAT a15 HEADING 'Tablespace'
COLUMN fn FORMAT a38 HEADING 'Fichier'
COLUMN rds HEADING 'Lectures'
COLUMN blk_rds HEADING 'Blocs lus'
COLUMN wrts HEADING 'Écritures'
COLUMN blk_wrts HEADING 'Blocs écrits'
COLUMN rw HEADING 'Lect+Écr'
COLUMN blk_rw HEADING 'Blocs Lect+Écr'
COLUMN efficiency FORMAT a10 HEADING 'Efficacité %'
SELECT
f.tablespace_name ts
, f.file_name fn
, v.phyrds rds
, v.phyblkrd blk_rds
, v.phywrts wrts
, v.phyblkwrt blk_wrts
, v.phyrds + v.phywrts rw
, v.phyblkrd + v.phyblkwrt blk_rw
, DECODE(v.phyblkrd + v.phyblkwrt, 0, NULL,
ROUND(100 * (v.phyrds + v.phywrts) / (v.phyblkrd + v.phyblkwrt), 2)) efficiency
FROM
dba_data_files f
, v$filestat v
WHERE
f.file_id = v.file#
ORDER BY
rds
/
Quelques repères de lecture :
- une efficacité relativement basse sur le tablespace SYSTEM est normale : tables et
index du dictionnaire de données y sont mélangés, ce qui mélange I/O mono-bloc et multi-blocs ;
- un tablespace d'index doit afficher une efficacité constamment haute — sinon, soit les index
sont fragmentés/dégradés, soit des tables y ont été créées par erreur ;
- un tablespace de rollback/undo qui n'affiche pas ~100 % suggère qu'il héberge des objets qui
n'ont rien à y faire ;
- un tablespace temporaire affichant une efficacité (donc des I/O mono-bloc) au lieu des I/O
multi-blocs habituels du tri/hash suggère un usage détourné à des fins de stockage de données.
Voir aussi
- Perf file io — volume brut de lectures/écritures par fichier
- Perf file io 7 — version historique du volume brut, sans tempfiles
- Perf file waits — contention (attentes) par fichier