¿Cómo Oracle decidir de los bloques que están ausentes en la caché del búfer para una consulta?

0

Pregunta

Supongamos que ejecutamos la siguiente consulta.

select * from employees where salary > 10000;

Después de algún tiempo, ejecutamos la siguiente consulta.

select * from employees where salary > 500;

El segundo tiende a volver más bloques. Pero ya tenemos algunos de estos bloques en la caché del búfer porque de la consulta anterior. Tal vez algunos de ellos son eliminados de forma que la caché del búfer, pero algunos o todos los bloques de la primera consulta se puede todavía existen allí. Así que aquí, el servidor de base de datos debe saber que los bloques que ya existen y cuáles a leer desde el disco además.

Mi pregunta es, ¿cómo la base de datos de encontrar y decidir cuales de los bloques a leer desde el disco además?

1

Mejor respuesta

3

Oracle utiliza la LRU técnica ( que significa 'menos recientemente usada"). Es un algoritmo de computadora utilizado para gestionar los datos en una memoria caché. Cuando la caché está llena y necesita espacio para cosas nuevas - descartar el menos usado recientemente primeros elementos (cosas que usted no ha utilizado por un tiempo, pero están en la memoria caché el consumo de espacio).

No es específica de los bloques de datos y bloques de datos no son realmente mantienen en una lista LRU, que son administradas por un toque contar en estos días - pero que toque el recuento de algoritmo es muy parecido a un LRU así que usted puede pensar de esa manera.

En resumen, cuando usted oye LRU, creo que de una caché que gestiona algunos de los datos (datos), y tiende a descartar elementos de la caché en función de si ha sido utilizado recientemente o no. Más recientemente se ha utilizado - es más probable que permanezca en la memoria caché.

Cada bloque tiene un DBA - bloque de datos de la dirección - que consta de un archivo# y el bloque#. Esto identifica un bloque en una base de datos. Oracle utiliza que la "clave" para identificar el bloque en la caché del búfer.

Si se ejecuta una consulta, si algunos bloques no están en la caché, es porque la LRU ha autorizado a fin de asignar más cosas de las que se han utilizado más recientemente. No es garantía, pero si usted necesita ese tipo de garantía, puede utilizar diferentes piscinas en la caché del búfer, principalmente, puede utilizar la KEEP piscina para mantener accede con frecuencia segmentos en la memoria caché del búfer.

Espero que aclara.

2021-10-28 11:08:38

@oramas, cualquier duda acerca de la respuesta ?
Roberto Hernandez

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................