Questa pagina si riferisce al parametro
persist_forche fa parte di un'esplorazione.
persist_forpuò essere utilizzato anche nell'ambito di un modello, come descritto nella pagina della documentazione dedicata al parametropersist_for(per i modelli).
persist_forpuò essere utilizzato anche nell'ambito di una tabella derivata, come descritto nella pagina della documentazione dedicata al parametropersist_for(per le tabelle derivate).
Utilizzo
explore: explore_name {
persist_for: "1 hour"
}
|
Gerarchia
persist_for |
Valore predefinito
L'impostazione persist_for del modello
Accetta
Una stringa contenente un numero intero seguito da un periodo di tempo (secondi, minuti o ore)
Regole speciali
Un'impostazione persist_for a livello di explore sostituirà l'impostazione persist_for a livello di modello
|
Definizione
Per una gestione della cache più solida, inclusa la sincronizzazione delle norme della cache di Looker con il processo ETL (estrazione, trasformazione e caricamento) del database, valuta la possibilità di utilizzare
datagroupepersist_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 nel seguente modo: quando un utente esegue una determinata query, il risultato della query viene memorizzato nella cache. Se viene eseguita di nuovo esattamente la stessa query (tutto deve essere uguale, inclusi i limiti di righe e così via) 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.
Se persist_for è impostato sia per un'esplorazione sia per il relativo modello, 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:
explore: my_explore {
persist_for: "2 hours"
}
Imposta la durata della cache su 30 minuti:
explore: my_explore {
persist_for: "30 minutes"
}
Disattiva la memorizzazione nella cache in modo che gli utenti non ricevano mai risultati memorizzati nella cache per una query:
explore: my_explore {
persist_for: "0 seconds"
}
Aspetti da considerare
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, una query viene eseguita a mezzogiorno del 1° gennaio, i nuovi dati vengono importati la mattina del 2 gennaio e poi la query viene 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 un gruppo di dati e
persist_with, come descritto nella documentazione sulle query di memorizzazione nella cache.
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. Per prememorizzare nella cache un determinato Look, valuta la possibilità di salvarlo e pianificarlo.