Compartir a través de


Almacenamiento en caché en almacenamiento de datos de Fabric

Se aplica a: punto de conexión de análisis SQL y un almacén de Microsoft Fabric

La recuperación de datos del lago de datos es una operación crucial de entrada y salida (E/S) con implicaciones sustanciales para el rendimiento de consultas. En Microsoft Fabric, Synapse Data Warehouse emplea patrones de acceso refinados para mejorar las lecturas de datos del almacenamiento y elevar la velocidad de ejecución de consultas. Además, minimiza de forma inteligente la necesidad de lecturas de almacenamiento remoto, ya que aprovecha las memorias caché locales.

El almacenamiento en caché es una técnica que mejora el rendimiento de las aplicaciones de procesamiento de datos al reducir las operaciones de E/S. El almacenamiento en caché almacena los datos y metadatos a los que se accede con frecuencia en una capa de almacenamiento más rápida, como la memoria local o el disco SSD local, para que las solicitudes posteriores se puedan atender más rápido desde la memoria caché directamente. Si una consulta ha accedido previamente a un conjunto determinado de datos, cualquier consulta posterior recuperará esos datos directamente de caché en memoria. Este enfoque reduce significativamente la latencia de E/S, ya que las operaciones de memoria local son considerablemente más rápidas en comparación con la recuperación de datos del almacenamiento remoto.

El almacenamiento en caché es totalmente transparente para el usuario. Independientemente del origen, ya sea una tabla de almacenamiento, un acceso directo de OneLake o incluso un acceso directo de OneLake que haga referencia a servicios que no son de Azure, la consulta almacena en caché todos los datos a los que acceda.

Hay dos tipos de caché que se describen más adelante en este artículo:

  • Caché en memoria
  • Caché de disco

Caché en memoria

A medida que la consulta accede a los datos del almacenamiento y los recupera, realiza un proceso de transformación que transcodifica los datos de su formato original (basado en archivos) en estructuras altamente optimizadas en caché en memoria.

Diagrama que muestra cómo se rellena la memoria en caché.

Los datos de caché se organizan en un formato de columnas comprimido optimizado para consultas analíticas. Las columnas de datos se almacenan juntas, separadas de las demás, lo que permite una mejor compresión, ya que los valores de datos similares se almacenan juntos, y que la superficie de memoria sea reducida. Cuando las consultas necesitan realizar operaciones en una columna específica, como agregar o filtrar, el motor puede funcionar de forma más eficaz, ya que no tiene que procesar datos innecesarios de otras columnas.

Además, este almacenamiento en columnas también es favorable al procesamiento paralelo, lo que puede acelerar considerablemente la ejecución de consultas para grandes conjuntos de datos. El motor puede realizar operaciones en varias columnas simultáneamente aprovechando los procesadores modernos de varios núcleos.

Este enfoque es especialmente beneficioso para las cargas de trabajo analíticas en las que las consultas implican examinar grandes cantidades de datos para agregar, filtrar y otras manipulaciones de datos.

Caché de disco

Algunos conjuntos de datos son demasiado grandes para alojarse en caché en memoria. Para mantener un rendimiento rápido de las consultas para estos conjuntos de datos, Warehouse utiliza espacio en disco como una extensión complementaria a la caché en memoria. Cualquier información que se cargue en la caché en memoria también se serializa en la caché SSD.

Diagrama que muestra cómo se rellena la memoria en caché y el caché del disco SSD.

Dado que la caché en memoria tiene una capacidad menor en comparación con la caché SSD, los datos que se quitan de la caché en memoria permanecen dentro de la caché SSD durante un período prolongado. Cuando una consulta posterior solicita estos datos, se recupera de la caché SSD en la caché en memoria a una velocidad significativamente más rápida que si se capturara desde el almacenamiento remoto, lo que le proporciona un mejor rendimiento de consulta.

Diagrama que muestra cómo se rellena la memoria en caché a partir del caché del disco SSD.

Administración de la memoria caché

El almacenamiento en caché permanece constantemente activo y funciona en segundo plano sin problemas, por lo que no es necesario que usted intervenga. No es necesario deshabilitar el almacenamiento en caché porque inevitablemente se produciría un deterioro notable en el rendimiento de las consultas.

El mecanismo de almacenamiento en caché está organizado y mantenido por Microsoft Fabric, y no ofrece a los usuarios la capacidad de borrar manualmente la memoria caché.

La coherencia transaccional de caché completa garantiza que las modificaciones en los datos del almacenamiento, como a través de operaciones del lenguaje de manipulación de datos (DML), una vez que se haya cargado inicialmente en la caché en memoria, darán lugar a datos coherentes.

Cuando la memoria caché alcanza su umbral de capacidad y se leen por primera vez los datos nuevos, los objetos que permanecen sin usar durante más tiempo se eliminarán. Este proceso se implementa para crear espacio para la entrada de nuevos datos y mantener un uso óptimo de la caché.