persist_for (für Modelle)

Auf dieser Seite wird auf den Parameter persist_for verwiesen, der Teil eines Modells ist.

persist_for kann auch als Teil eines Explores verwendet werden. Dies wird auf der Dokumentationsseite zum Parameter persist_for (für Explores) beschrieben.

persist_for kann auch als Teil einer abgeleiteten Tabelle verwendet werden. Weitere Informationen finden Sie auf der Dokumentationsseite zum Parameter persist_for (für abgeleitete Tabellen).

Nutzung


persist_for: "5 hours"
Hierarchie
persist_for
Standardwert
1 Stunde

Akzeptiert
Ein String mit einer Ganzzahl gefolgt von einem Zeitraum (Sekunden, Minuten oder Stunden)

Definition

Verwenden Sie stattdessen datagroup und persist_with, wie auf der Dokumentationsseite Abfragen im Cache speichern beschrieben.

Mit persist_for können Sie den Zeitraum ändern, in dem im Cache gespeicherte Abfrageergebnisse für einen bestimmten Explore verwendet werden. Die Standarddauer für den Cache in Looker beträgt 1 Stunde. Cache-Ergebnisse werden in einer verschlüsselten Datei in Ihrer Looker-Instanz gespeichert.

Der Caching-Mechanismus in Looker funktioniert so: Wenn ein Nutzer eine bestimmte Abfrage ausführt, wird das Ergebnis dieser Abfrage im Cache gespeichert. Wenn jemand genau dieselbe Abfrage (alles muss gleich sein, auch Kleinigkeiten wie das Zeilenlimit) innerhalb des von persist_for angegebenen Intervalls noch einmal ausführt, werden die im Cache gespeicherten Ergebnisse zurückgegeben. Andernfalls wird eine neue Abfrage für Ihre Datenbank ausgeführt.

Wenn das persist_for-Intervall abläuft, werden Daten aus dem Cache gelöscht. Informationen dazu, wie lange Daten im Cache gespeichert werden, finden Sie auf der Dokumentationsseite Abfragen im Cache speichern.

Explores unterstützen auch persist_for. Wenn sowohl für ein Explore als auch für das zugehörige Modell persist_for-Einstellungen festgelegt sind, hat der für das Explore festgelegte Wert für Abfragen, die auf diesem Explore basieren, Vorrang.

In einem Explore können Sie sehen, ob eine Abfrage aus dem Cache zurückgegeben wurde, oder erzwingen, dass neue Ergebnisse aus der Datenbank generiert werden. Weitere Informationen finden Sie auf der Dokumentationsseite Abfragen im Cache speichern.

Beispiele

So passen Sie die Cache-Länge auf 2 Stunden an:

persist_for: "2 hours"

So passen Sie die Cache-Länge auf 30 Minuten an:

persist_for: "30 minutes"

So deaktivieren Sie das Caching, damit Nutzer nie im Cache gespeicherte Ergebnisse für eine Abfrage erhalten:

persist_for: "0 seconds"

Wichtige Punkte

Daten werden immer in den Cache geschrieben.

Wenn persist_for auf 0 seconds festgelegt ist, werden bei den Abfragen Ihrer Nutzer keine Daten aus dem Cache abgerufen. Looker benötigt den Festplatten-Cache jedoch für interne Prozesse. Ihre verschlüsselten Daten werden daher immer in den Cache geschrieben, auch wenn persist_for auf 0 seconds festgelegt ist. Nachdem die Daten in den Cache geschrieben wurden, werden sie zum Löschen markiert, können aber bis zu 10 Minuten auf der Festplatte verbleiben. Weitere Informationen finden Sie auf der Dokumentationsseite Abfragen im Cache speichern.

persist_for stimmt nicht unbedingt mit Ihrem Datenimport überein.

Viele Unternehmen importieren täglich Daten in ihre Analysedatenbank. Manchmal wird argumentiert, dass es keinen Sinn macht, neue Abfragen auszuführen, wenn die Daten ohnehin nicht ständig aktualisiert werden. Daher wird die Cache-Länge auf 24 Stunden festgelegt (z. B. persist_for: 24 hours). Dadurch wird jedoch nicht verhindert, dass Nutzer Daten erhalten, die älter als die letzte Aktualisierung sind.

Angenommen, eine Abfrage wird am 1. Januar um 12:00 Uhr ausgeführt, am Morgen des 2. Januar werden neue Daten importiert und die Abfrage wird am 2. Januar um 12:00 Uhr noch einmal ausgeführt. Da die Abfrage innerhalb des von persist_for angegebenen 24-Stunden-Zeitraums ausgeführt wurde, werden die Daten vom 1. Januar zurückgegeben, obwohl am 2. Januar neue Daten geladen wurden.

Wenn Sie möchten, dass Ihr Caching mit Datenimporten übereinstimmt, verwenden Sie Datengruppen und persist_with, wie auf der Dokumentationsseite Abfragen zwischenspeichern beschrieben.

Ergebnisse von geplanten Looks werden im Cache gespeichert

Wenn ein geplanter Look ausgeführt wird, wird ein im Cache gespeichertes Ergebnis-Set erstellt, genau wie bei einer von einem Nutzer ausgeführten Abfrage. Wenn Sie einen bestimmten Look vorab im Cache speichern möchten, sollten Sie ihn speichern und planen.