Questa pagina si riferisce al parametro
persist_for
che fa parte di una derived_table.
persist_for
può essere utilizzato anche come parte di un'esplorazione, descritto nella pagina della documentazione relativa al parametropersist_for
(per le esplorazioni).
persist_for
può essere utilizzato anche come parte di un modello, descritto nella pagina della documentazione relativa al parametropersist_for
(per i modelli).
Utilizzo
derived_table: {
persist_for: "24 ore"
...
}
}
Gerarchia
persist_for |
Valore predefinito
NessunaAccetta
Una stringa contenente un numero intero seguito da un periodo di tempo (secondi, minuti o ore)
|
Definizione
Prendi in considerazione l'utilizzo di
datagroup
edatagroup_trigger
, descritti in questa pagina sulla memorizzazione nella cache.
persist_for
ti consente di impostare il periodo di tempo massimo durante il quale è possibile utilizzare una tabella derivata permanente prima che venga rigenerata. Quando un utente esegue una query che si basa su una tabella derivata da persist_for
, Looker controlla l'età della tabella sulla base di persist_for
. Se l'età è superiore all'impostazione persist_for
, la tabella derivata viene rigenerata prima dell'esecuzione della query. Se l'età è inferiore all'impostazione persist_for
, viene utilizzata la tabella derivata esistente.
persist_for
per una PDT viene eseguito indipendentemente dai parametri persist_for
per modelli ed esplorazioni.
Se l'amministratore ti ha concesso l'autorizzazione develop
, puoi forzare la rigenerazione di una tabella derivata prima che sia stata raggiunta la sua età pari a persist_for
. Seleziona l'opzione Rebuild Derived Tables & Run (Ricostruisci tabelle derivate ed esegui) dal menu a discesa Esplora dell'ingranaggio, che trovi in alto a destra sullo schermo dopo aver eseguito una query:
Per ulteriori dettagli sull'opzione Rebuild Derived Tables & Run (Riesegui tabelle derivate ed esecuzione), consulta la pagina della documentazione Tabelle derivate in Looker.
Esempi
Rigenera la tabella derivata se è più vecchia di 1 ora
persist_for: "1 hour"
Rigenera la tabella derivata se è precedente a 1,5 ore
persist_for: "90 minutes"
Rigenera la tabella derivata se è più vecchia di 1 giorno
persist_for: "24 hours"
Aspetti da considerare
persist_for
richiede che tu abbia abilitato le tabelle derivate permanenti
persist_for
non avrà effetto a meno che tu non abbia attivato la persistenza per le tabelle derivate sulla tua istanza di Looker. La maggior parte dei clienti configura le tabelle derivate permanenti durante la configurazione iniziale di Looker. L'eccezione più comune a questa regola è per i clienti che collegano Looker a un database di repliche hot-swap di sola lettura PostgreSQL.
persist_for
funziona in modo diverso tra la modalità di sviluppo e la modalità di produzione
persist_for
dovrebbe funzionare come previsto in modalità di produzione. In modalità sviluppatore, tutte le tabelle derivate vengono mantenute per un massimo di 24 ore, anche se imposti un valore più lungo per persist_for
.
Per ulteriori informazioni, consulta la sezione Tabelle permanenti in modalità sviluppo della pagina della documentazione Tabelle derivate in Looker.
Alternative a persist_for
Alla scadenza del periodo di tempo di persist_for
, Looker non rigenera automaticamente una nuova tabella derivata. Piuttosto, la tabella viene eliminata e verrà generata una nuova tabella derivata la prossima volta che un utente eseguirà una query. Anziché attendere che una query dell'utente attivi la generazione di una tabella derivata, puoi pianificare la rigenerazione automatica di una tabella derivata utilizzando sql_trigger_value
.
Differenza tra datagroup
e max_cache_age
L'utilizzo del parametro datagroup
con un parametro datagroup_trigger
ti offre una maggiore flessibilità nell'attivazione della ricreazione delle PDT. Tuttavia, il parametro max_cache_age
invalida solo la cache; non comporta la scadenza delle PDT. Utilizza persist_for
con una tabella derivata se vuoi impostare un periodo di tempo massimo prima di eliminare una PDT dallo schema temporaneo.