本頁面是指 模型的
persist_for參數。
persist_for也可做為探索的一部分,詳情請參閱persist_for(適用於探索) 參數說明文件頁面。
persist_for也可用於衍生資料表,詳情請參閱persist_for(適用於衍生資料表) 參數說明文件頁面。
用量
persist_for: "5 hours"
|
階層
persist_for |
預設值
1 小時
接受
字串,包含整數,後接時間範圍 (秒、分鐘或小時)
|
定義
建議改用
datagroup和persist_with,詳情請參閱「快取查詢」說明文件頁面。
persist_for 可讓您修改特定探索使用快取查詢結果的時間長度。Looker 的預設快取長度為 1 小時。快取結果會儲存在 Looker 執行個體的加密檔案中。
Looker 的快取機制運作方式如下:使用者執行特定查詢後,系統會快取該查詢的結果。如果有人在 persist_for 指定的時間間隔內,再次執行完全相同的查詢 (所有內容都必須相同,包括列數上限等細微事項),系統就會傳回快取結果。否則,系統會對資料庫執行新查詢。
persist_for間隔到期時,系統會從快取中刪除資料。如要瞭解資料在快取中的儲存時間,請參閱「快取查詢」說明文件頁面。
探索也支援 persist_for。如果「探索」和模型都有 persist_for 設定,系統會優先採用「探索」設定的值,用於以該「探索」為準的查詢。
在「探索」中,您可以查看查詢是否從快取傳回,也可以強制從資料庫產生新結果。詳情請參閱「快取查詢」說明文件頁面。
範例
將快取長度調整為 2 小時:
persist_for: "2 hours"
將快取長度調整為 30 分鐘:
persist_for: "30 minutes"
關閉快取功能,讓使用者永遠不會收到查詢的快取結果:
persist_for: "0 seconds"
注意事項
資料一律會寫入快取
如果 persist_for 設為 0 seconds,使用者查詢時就不會從快取擷取資料。不過,Looker 需要磁碟快取進行內部程序,因此即使 persist_for 設為 0 seconds,加密資料仍會寫入快取。資料寫入快取後,系統會標記要刪除的資料,但這些資料最多可能在磁碟上保留 10 分鐘。詳情請參閱「快取查詢」說明文件頁面。
persist_for 不一定與資料匯入作業一致
許多公司每天都會將資料匯入分析資料庫。有時,他們會認為資料不會持續更新,因此執行新查詢沒有意義,所以將快取長度設為 24 小時 (如 persist_for: 24 hours)。不過,這樣做無法避免使用者取得比最近一次重新整理還舊的資料。
舉例來說,假設您在 1 月 1 日中午執行查詢,系統在 1 月 2 日上午匯入新資料,然後您在 1 月 2 日中午再次執行查詢。由於查詢是在 persist_for 指定的 24 小時時間範圍內執行,因此即使 1 月 2 日載入了新資料,系統仍會傳回 1 月 1 日的資料。
如要讓快取與資料匯入作業保持一致,請使用資料群組和
persist_with,詳情請參閱「快取查詢」說明文件頁面。
系統會快取已排定 Look 的結果
排定的 Look 執行時,系統會建立快取結果集,與使用者執行查詢時相同。如要預先快取特定 Look,建議您儲存並排程該 Look。