persist_for (per i modelli)

Questa pagina si riferisce al parametro persist_for che fa parte di un modello.

persist_for può essere utilizzato anche nell'ambito di un'esplorazione, come descritto nella pagina della documentazione dedicata al parametro persist_for (per le esplorazioni).

persist_for può essere utilizzato anche nell'ambito di una tabella derivata, come descritto nella pagina della documentazione dedicata al parametro persist_for (per le tabelle derivate).

Utilizzo


persist_for: "5 hours"
Gerarchia
persist_for
Valore predefinito
1 ora

Accetta
Una stringa contenente un numero intero seguito da un periodo di tempo (secondi, minuti o ore)

Definizione

Valuta la possibilità di utilizzare un datagroup e un persist_with, come descritto nella pagina di documentazione Memorizzazione nella cache delle query.

persist_for ti consente di modificare il periodo di tempo in cui vengono utilizzati i risultati delle query memorizzati nella cache per una determinata esplorazione. La durata predefinita della cache in Looker è di 1 ora. I risultati nella cache vengono archiviati in un file criptato sull'istanza di Looker.

Il meccanismo di memorizzazione nella cache di Looker funziona come segue: quando un utente esegue una determinata query, il risultato della query viene memorizzato nella cache. Se qualcuno esegue di nuovo esattamente la stessa query (tutto deve essere uguale, comprese le piccole cose come il limite di righe) in un intervallo di tempo inferiore a quello specificato da persist_for, vengono restituiti i risultati memorizzati nella cache. In caso contrario, viene eseguita una nuova query sul database.

Quando scade l'intervallo persist_for, i dati vengono eliminati dalla cache. Per informazioni su per quanto tempo i dati vengono archiviati nella cache, consulta la pagina della documentazione Memorizzazione nella cache delle query.

Le esplorazioni supportano anche persist_for. Quando un'esplorazione e il relativo modello hanno entrambi impostazioni persist_for, il valore impostato per l'esplorazione avrà la priorità per le query basate su quell'esplorazione.

Da un'esplorazione puoi vedere se una query è stata restituita dalla cache oppure puoi forzare la generazione di nuovi risultati dal database. Per ulteriori informazioni, consulta la pagina della documentazione Memorizzazione nella cache delle query.

Esempi

Regola la durata della cache su 2 ore:

persist_for: "2 hours"

Imposta la durata della cache su 30 minuti:

persist_for: "30 minutes"

Disattiva la memorizzazione nella cache in modo che gli utenti non ricevano mai risultati memorizzati nella cache per una query:

persist_for: "0 seconds"

Aspetti da considerare

I dati vengono sempre scritti nella cache

Quando persist_for è impostato su 0 seconds, le query degli utenti non recupereranno i dati dalla cache. Tuttavia, Looker richiede la cache del disco per i processi interni, pertanto i dati criptati verranno sempre scritti nella cache, anche quando persist_for è impostato su 0 seconds. Una volta scritti nella cache, i dati verranno contrassegnati per l'eliminazione, ma potrebbero rimanere sul disco fino a 10 minuti. Per informazioni dettagliate, consulta la pagina della documentazione Memorizzazione nella cache delle query.

persist_for non corrisponde necessariamente all'importazione dei dati

Molte aziende importano quotidianamente i dati nel proprio database di analisi. A volte, ritengono che non abbia senso eseguire query aggiornate se i dati non vengono comunque aggiornati costantemente, quindi impostano la durata della cache su 24 ore (come persist_for: 24 hours). Tuttavia, questo non impedirà agli utenti di ottenere dati più vecchi dell'aggiornamento più recente.

Ad esempio, supponiamo che una query venga eseguita a mezzogiorno del 1° gennaio, che i nuovi dati vengano importati la mattina del 2 gennaio e che la query venga eseguita di nuovo a mezzogiorno del 2 gennaio. Poiché la query è stata eseguita entro il periodo di 24 ore specificato da persist_for, verranno restituiti i dati del 1° gennaio, anche se sono stati caricati nuovi dati il 2 gennaio.

Se vuoi che la memorizzazione nella cache sia allineata alle importazioni di dati, utilizza i gruppi di dati e persist_with, come descritto nella pagina di documentazione Memorizzazione nella cache delle query.

I Look pianificati memorizzeranno nella cache i risultati

Quando viene eseguita una Look pianificata, viene creato un insieme di risultati memorizzati nella cache nello stesso modo in cui viene eseguita una query da un utente. Se vuoi prememorizzare nella cache un determinato Look, ti consigliamo di salvarlo e pianificarlo.