Cache: ARC Accesses (Caché: accesos a ARC)
ARC significa Adaptive Replacement Cache (caché de reemplazo adaptable) y es una caché dentro de la DRAM para el sistema de archivos y los datos de volumen. Esta estadística muestra los accesos a la ARC y permite la observación de su utilización y rendimiento.
Cuándo se deben verificar los accesos a ARC
Puede verificar los accesos a ARC cuando se investigan problemas de rendimiento, para determinar si la carga de trabajo actual se almacena bien en la caché ARC.
Desgloses de accesos a ARC
Los desgloses disponibles de los accesos a ARC de caché son los siguientes:
Tabla 14 Desgloses de accesos a ARC
|
|
hit/miss (aciertos/equivocaciones)
|
El resultado de la consulta de la ARC. Los estados de aciertos/equivocaciones se describen en la tabla siguiente.
|
filename (nombre de archivo)
|
Nombre de archivo solicitado desde la ARC. Mediante este desglose, se permite el uso del modo de jerarquía a fin de poder navegar por los directorios del sistema de archivos.
|
L2ARC eligibility (elegibilidad de L2ARC)
|
Se trata de la elegibilidad del almacenamiento en caché L2ARC, medido en el momento del acceso a ARC. Un nivel elevado de equivocaciones de la ARC que resultan elegibles para L2ARC sugeriría que la carga de trabajo se beneficiaría de los dispositivos de caché de segundo nivel.
|
project (proyecto)
|
Muestra el proyecto que accede a la ARC.
|
share (recurso compartido)
|
Muestra el recurso compartido que accede a la ARC.
|
LUN (LUN)
|
Muestra el LUN que accede a la ARC.
|
|
Tal como se describe en Impacto en el rendimiento de ejecución, el desglose por nombre de archivo sería el más costoso para dejar activado.
Los estados de aciertos/equivocaciones son:
Tabla 15 Desglose de aciertos/equivocaciones
|
|
data hits (aciertos de datos)
|
El bloque de datos se encontraba en la caché ARC DRAM y fue devuelto.
|
data misses (equivocaciones de datos)
|
El bloque de datos no se encontraba en la caché ARC DRAM. Se leerá desde los dispositivos de caché L2ARC (si están disponibles, y los datos se encuentran almacenados en caché allí) o en los discos de agrupaciones.
|
metadata hits (aciertos de metadatos)
|
El bloque de metadatos se encontraba en la caché ARC DRAM y fue devuelto. Los metadatos comprenden la estructura del sistema de archivos en disco que hace referencia a los bloques de datos. A continuación, se muestran otros ejemplos.
|
metadata misses (equivocaciones de metadatos)
|
El bloque de metadatos no se encontraba en la caché ARC DRAM. Se leerá desde los dispositivos de caché L2ARC (si están disponibles, y los datos se encuentran almacenados en caché allí) o en los discos de agrupaciones.
|
prefetched data/metadata hits/misses (aciertos/equivocaciones de datos/metadatos precapturados)
|
Accesos a ARC activados por el mecanismo de precaptura, no directamente desde una solicitud de aplicación. A continuación, se proporcionan más detalles sobre la precaptura.
|
|
Metadatos
Ejemplos de metadatos:
-
Indicadores de bloques de sistemas de archivos
-
Información de directorio
-
Tablas de anulación de duplicación de datos
-
Uberblock de ZFS
Precaptura
La precaptura es un mecanismo usado para mejorar el rendimiento de las cargas de trabajo de lectura de transmisión. Examina la actividad de E/S para identificar lecturas secuenciales, y puede ejecutar lecturas adicionales por anticipado para que los datos puedan estar en la caché antes de que la aplicación los solicite. La precaptura se produce antes de la ARC mediante la generación de accesos a la ARC; recuérdelo cuando intente comprender la actividad de la ARC de precaptura. Por ejemplo, si observa:
Tabla 16 Tipos de precaptura
|
|
equivocaciones de datos precapturados
|
La precaptura identificó una carga de trabajo secuencial y solicitó que los datos se almacenen en caché en la ARC antes de tiempo mediante la generación de accesos a ARC para esos datos. Los datos no se encontraban en la caché; por lo tanto, se trata de una "equivocación", y los datos se leen desde el disco. Es una situación normal, y es el modo en que la precaptura rellena la ARC desde el disco.
|
prefeteched data hits (aciertos de datos precapturados)
|
La precaptura identificó una carga de trabajo secuencial y solicitó que los datos se almacenen en caché en la ARC antes de tiempo mediante la generación de accesos a ARC para esos datos. En este caso, los datos ya estaban en la ARC; como resultado, estos accesos fueron devueltos como "aciertos" (y, por lo tanto, el acceso a ARC de precaptura no era verdaderamente necesario). Esto ocurre si los datos almacenados en caché se leen reiteradamente en forma secuencial.
|
|
Después de realizar la precaptura de los datos, la aplicación podrá solicitarlos con sus propios accesos a ARC. Recuerde que los tamaños pueden ser diferentes: la precaptura se puede producir con un tamaño de E/S de 128 Kbytes, mientras que la aplicación puede leer con un tamaño de E/S de 8 Kbytes. Por ejemplo, los siguientes datos no aparecen directamente relacionados:
Sin embargo, puede ser de la siguiente manera: si la precaptura solicitaba con un tamaño de E/S de 128 KBytes, 23 x 128 = 2944 Kbytes. Y si la aplicación solicitaba con un tamaño de E/S de 8 KB, 368 x 8 = 2944 KB.
Análisis adicional
Para investigar las equivocaciones de la ARC, compruebe que la ARC haya crecido lo suficiente para utilizar la DRAM disponible mediante la estadística Tamaño de ARC de caché.