persist_for (para Explores)

En esta página, se hace referencia al parámetro persist_for que forma parte de una Exploración.

persist_for también se puede usar como parte de un modelo, como se describe en la página de documentación del parámetro persist_for (para modelos).

persist_for también se puede usar como parte de una tabla derivada, como se describe en la página de documentación del parámetro persist_for (para tablas derivadas).

Uso


explore: explore_name {
  persist_for: "1 hour"
}
Jerarquía
persist_for
Valor predeterminado
El parámetro de configuración persist_for del modelo

Acepta
Cadena que contiene un número entero seguido de un período (segundos, minutos u horas)

Reglas especiales
Un parámetro de configuración de persist_for a nivel de explore anulará el parámetro de configuración de persist_for a nivel del modelo.

Definición

Para una administración de caché más sólida, incluida la sincronización de tu política de caché de Looker con el proceso de ETL (extracción, transformación y carga) de tu base de datos, considera usar datagroup y persist_with, como se describe en la página de documentación Almacenamiento en caché de consultas.

persist_for te permite modificar la cantidad de tiempo durante la que se usan los resultados de consultas almacenados en caché para una exploración determinada. La duración predeterminada de la caché en Looker es de 1 hora. Los resultados de la caché se almacenan en un archivo encriptado en tu instancia de Looker.

El mecanismo de almacenamiento en caché de Looker funciona de la siguiente manera: una vez que un usuario ejecuta una consulta específica, se almacena en caché el resultado de esa consulta. Si se vuelve a ejecutar exactamente la misma búsqueda (todo debe ser igual, incluidos los límites de filas, etcétera) en un intervalo inferior al especificado por persist_for, se devuelven los resultados almacenados en caché. De lo contrario, se ejecutará una nueva consulta en tu base de datos.

Cuando vence el intervalo de persist_for, se borran los datos de la caché. Consulta la página de documentación Almacenamiento en caché de consultas para obtener información sobre cuánto tiempo se almacenan los datos en la caché.

Si se establece persist_for para una exploración y su modelo, el valor establecido para la exploración tendrá prioridad para las búsquedas basadas en esa exploración.

En un Explorar, puedes ver si una consulta se devolvió desde la caché o forzar la generación de resultados nuevos desde la base de datos. Consulta la página de documentación Almacenamiento en caché de consultas para obtener más información.

Ejemplos

Ajusta la duración de la caché a 2 horas:

explore: my_explore {
  persist_for: "2 hours"
}

Ajusta la duración del almacenamiento en caché a 30 minutos:

explore: my_explore {
  persist_for: "30 minutes"
}

Desactiva el almacenamiento en caché para que los usuarios nunca obtengan resultados almacenados en caché para una búsqueda:

explore: my_explore {
  persist_for: "0 seconds"
}

Aspectos para tener en cuenta

Cuando persist_for se establece en 0 seconds, las búsquedas de los usuarios no recuperarán datos de la caché. Sin embargo, Looker requiere la caché de disco para los procesos internos, por lo que tus datos encriptados siempre se escribirán en la caché, incluso cuando persist_for esté configurado como 0 seconds. Una vez que se escriban en la caché, los datos se marcarán para su eliminación, pero pueden permanecer hasta 10 minutos en el disco. Consulta la página de documentación Almacenamiento en caché de consultas para obtener más detalles.

persist_for no siempre se alinea con tu importación de datos

Muchas empresas importan datos diariamente a su base de datos de análisis. A veces, argumentan que no tiene sentido ejecutar consultas nuevas si los datos no se actualizan constantemente de todos modos, por lo que establecen la duración de la caché en 24 horas (como persist_for: 24 hours). Sin embargo, esto no evitará que los usuarios obtengan datos que sean más antiguos que la actualización más reciente.

Por ejemplo, se ejecuta una consulta al mediodía del 1 de enero, se importan datos nuevos la mañana del 2 de enero y, luego, se vuelve a ejecutar la consulta al mediodía del 2 de enero. Dado que la consulta se ejecutó dentro del período de 24 horas especificado por persist_for, se devolverán los datos del 1 de enero, aunque se hayan cargado datos nuevos el 2 de enero.

Si deseas que el almacenamiento en caché se alinee con las importaciones de datos, usa un datagroup y persist_with, como se describe en la documentación sobre el almacenamiento en caché de consultas.

Las Vistas programadas almacenarán en caché los resultados

Cuando se ejecuta un Look programado, se crea un conjunto de resultados almacenados en caché de la misma manera que se haría con una consulta ejecutada por el usuario. Para precachear una vista específica, considera guardarla y programarla.