Hello amis DBA,
Une petite question, le paramètre MBR "multible block read" concerne uniquement les lectures sur disque dur ou aussi en mémoire?
Je sais qu'un extent est un ensemble de blocs contiguës donc on peut lire en un appel système N blocs d'un extent pour accélérer les lectures (N dépendant de paramètres Oracle mais aussi de l'OS) .
Mais est-ce que on peut lire aussi en un seul appel système plusieurs blocs qui sont en mémoire? Si mon extent fait 128 blocs, la probabilité de trouver 128 buffers dans le database buffer cache contiguës est quasi nul. Mais on pourrait écrire 10 blocs par ci, 10 blocs par là et donc au moment des lire, Oracle pourrait lire ces 20 blocs dont il a besoin en seulement deux appels système...
Bref, est-ce possible ou bien le mécanisme interne d'Oracle pour lire les blocs en mémoire est complètement différent de celui utilisé pour lire les blocs sur disque dur?
Merci pour les réponses
Partager