En esta página se ofrece una descripción general de la función FlexCache.
Acerca de FlexCache
NetApp FlexCache acelera el acceso a los datos, reduce la latencia de la WAN y disminuye los costes de ancho de banda de la WAN en cargas de trabajo con muchas lecturas, sobre todo cuando los clientes acceden repetidamente a los mismos datos. Cuando creas un volumen de FlexCache, actúa como una caché remota de un volumen (de origen) ya creado. Esta caché solo almacena datos en caliente a los que se accede con frecuencia del volumen de origen.
Cuando un volumen de FlexCache recibe una solicitud de lectura de datos activos que contiene, responde más rápido que el volumen de origen porque los datos tienen una distancia más corta que recorrer hasta el cliente. Si un volumen de FlexCache recibe una solicitud de lectura de datos inactivos a los que se accede con poca frecuencia, recupera los datos necesarios del volumen de origen, los almacena y, a continuación, responde a la solicitud del cliente. Las solicitudes de lectura posteriores de esos datos se sirven directamente desde el volumen de FlexCache. Después de la primera solicitud, los datos ya no tienen que viajar por la red ni servirse desde un sistema con mucha carga.
Aunque las aplicaciones pueden escribir en un volumen de FlexCache, estas escrituras se envían al volumen de origen para mantener la coherencia de la caché.
La integración de FlexCache con NetApp Volumes de Google Cloud te permite aprovisionar volúmenes de caché en tu red de Google para mejorar el rendimiento de los entornos de nube híbrida. Esta función admite la transición de cargas de trabajo a la nube híbrida almacenando en caché los datos de un centro de datos on-premise en la nube.
Los volúmenes de NetApp Volumes no pueden actuar como volúmenes de origen.
FlexCache tiene las siguientes funciones:
Escribir comportamiento
Cuando se escriben datos en un volumen de FlexCache, la operación de escritura se transfiere al volumen de origen. La caché confirma la escritura una vez que el origen lo hace. Al escribir en un archivo, se invalida su copia en caché y la caché la recupera de nuevo la próxima vez que se acceda a él.
Invalidación de la caché debido a actualizaciones de la hora de acceso
ONTAP proporciona un campo a nivel de volumen llamado -atime-update para gestionar las actualizaciones de la hora de acceso en archivos y directorios que se leen mediante READ, READLINK y READDIR.
Las actualizaciones de la hora de acceso en los volúmenes de origen o de caché pueden activar invalidaciones de archivos que reducen la eficacia de la caché y provocan un rendimiento lento y una latencia alta en el acceso a los archivos. Para evitarlo, inhabilita las actualizaciones de la hora de acceso en el volumen de origen con el comando volume modify -atime-update de ONTAP.
Los volúmenes de FlexCache de NetApp Volumes heredan el ajuste -atime-update
del origen, lo que puede aumentar las invalidaciones de la caché. Por lo tanto, le recomendamos que inhabilite las actualizaciones de la hora de acceso en el volumen de origen.
Bloqueo de archivos global
El bloqueo de archivos global aplica bloqueos de lectura denegada y de intervalo de bytes exclusivo a los archivos en todas las cachés y en el volumen de origen. Si estas bloqueos deben aplicarse estrictamente en tu flujo de trabajo para mantener la coherencia de los datos o evitar conflictos de acceso, habilita el bloqueo global de archivos.
Cuestiones importantes
Habilita el bloqueo de archivos global solo si tienes una conectividad fiable entre la caché y el origen. Las conexiones inestables pueden retrasar o suspender las modificaciones, o provocar que se agote el tiempo de espera si los volúmenes de FlexCache están sin conexión.
Impacto en el rendimiento: habilitar el bloqueo de archivos global aumenta la latencia porque cada lectura de la caché activa una solicitud al origen para validar el bloqueo, lo que incrementa el tiempo de ida y vuelta (RTT).
Impacto en la disponibilidad: si un volumen de caché se desconecta, se bloquean las lecturas de sus archivos en todos los demás volúmenes de caché y se suspenden las modificaciones en el volumen de origen hasta que todos los volúmenes de FlexCache vuelvan a estar online.
Como el bloqueo de archivos global puede afectar al rendimiento y la fiabilidad del sistema, mantén esta opción inhabilitada a menos que tu flujo de trabajo lo requiera explícitamente.
Notificaciones de cambios de CIFS
El protocolo SMB proporciona un mecanismo para notificar a los clientes SMB los cambios realizados en un volumen por otros clientes. Esto permite que las aplicaciones, como el Explorador de archivos de Windows, actualicen sus vistas sin sondear el volumen. Esta función opcional es útil para las cachés en las que los usuarios interactivos acceden a archivos de volúmenes SMB a través del Explorador de Windows. De lo contrario, debe inhabilitarse para reducir la carga de notificaciones.
Relleno automático de caché
Aunque NetApp Volumes no ofrece compatibilidad con APIs para rellenar previamente la caché, puedes precalentarla desde el lado del cliente. Este proceso implica leer los archivos para asegurarse de que sus datos se cargan en la caché.
En las siguientes pestañas se muestran los comandos para precalentar la caché de diferentes sistemas operativos de cliente. Estos comandos también suelen precalentar los listados de directorios.
Clientes Linux o UNIX
Para precalentar la caché, sigue estos pasos:
find DIR_PATH -type f -print -exec sh -c 'cat "$1" > /dev/null' sh {} \;
Clientes de Windows
Para precalentar la caché, sigue estos pasos:
for /f "delims=" %i in ('dir /b /s /a-d DIR_PATH') do @type "%i" >NUL
Para acelerar el proceso de relleno previo, puedes usar una herramienta de migración de datos, como XCP.
Para leer los datos y rellenar la caché con XCP, sigue estos pasos:
xcp -md5 -q SERVER:/PATH
Siguientes pasos
Planificar volúmenes de FlexCache.