persist_for (untuk model)

Halaman ini mengacu pada parameter persist_for yang merupakan bagian dari model.

persist_for juga dapat digunakan sebagai bagian dari Eksplorasi, yang dijelaskan di halaman dokumentasi parameter persist_for (untuk Eksplorasi).

persist_for juga dapat digunakan sebagai bagian dari tabel turunan, yang dijelaskan di halaman dokumentasi parameter persist_for (untuk tabel turunan).

Penggunaan


persist_for: "5 hours"
Hierarki
persist_for
Nilai Default
1 jam

Menerima
String yang berisi bilangan bulat yang diikuti dengan jangka waktu (detik, menit, atau jam)

Definisi

Sebagai gantinya, pertimbangkan untuk menggunakan datagroup dan persist_with, seperti yang dijelaskan di halaman dokumentasi Meng-cache kueri.

persist_for memungkinkan Anda mengubah jangka waktu penggunaan hasil kueri yang di-cache untuk Eksplorasi tertentu. Durasi cache default di Looker adalah 1 jam. Hasil cache disimpan dalam file terenkripsi di instance Looker Anda.

Mekanisme caching di Looker berfungsi sebagai berikut: setelah pengguna menjalankan kueri tertentu, hasil kueri tersebut akan di-cache. Jika seseorang menjalankan kueri yang sama persis lagi (semuanya harus sama, termasuk hal-hal kecil seperti batas baris) dalam waktu kurang dari interval yang ditentukan oleh persist_for, hasil yang di-cache akan ditampilkan. Jika tidak, kueri baru akan dijalankan terhadap database Anda.

Saat interval persist_for berakhir, data akan dihapus dari cache. Lihat halaman dokumentasi Meng-cache kueri untuk mengetahui informasi tentang durasi penyimpanan data di cache.

Eksplorasi juga mendukung persist_for. Jika Explore dan modelnya memiliki setelan persist_for, nilai yang ditetapkan untuk Explore akan diprioritaskan untuk kueri berdasarkan Explore tersebut.

Dari Eksplorasi, Anda dapat melihat apakah kueri ditampilkan dari cache atau Anda dapat memaksa hasil baru dibuat dari database. Lihat halaman dokumentasi Meng-cache kueri untuk mengetahui informasi selengkapnya.

Contoh

Sesuaikan durasi cache menjadi 2 jam:

persist_for: "2 hours"

Sesuaikan durasi cache menjadi 30 menit:

persist_for: "30 minutes"

Nonaktifkan penyimpanan dalam cache agar pengguna tidak pernah mendapatkan hasil yang di-cache untuk kueri:

persist_for: "0 seconds"

Hal-hal yang perlu dipertimbangkan

Data selalu ditulis ke cache

Jika persist_for disetel ke 0 seconds, kueri pengguna Anda tidak akan mengambil data dari cache. Namun, Looker memerlukan cache disk untuk proses internal, sehingga data terenkripsi Anda akan selalu ditulis ke cache, meskipun persist_for disetel ke 0 seconds. Setelah ditulis ke cache, data akan ditandai untuk dihapus, tetapi dapat berada di disk hingga 10 menit. Lihat halaman dokumentasi Meng-cache kueri untuk mengetahui detailnya.

persist_for tidak selalu sesuai dengan impor data Anda

Banyak perusahaan melakukan impor data harian ke database analisis mereka. Terkadang, mereka berpendapat bahwa tidak ada gunanya menjalankan kueri baru jika data tidak terus diperbarui, jadi mereka menetapkan durasi cache menjadi 24 jam (seperti persist_for: 24 hours). Namun, hal ini tidak akan mencegah pengguna mendapatkan data yang lebih lama daripada refresh terbaru.

Misalnya, kueri dijalankan pada siang hari tanggal 1 Januari, data baru diimpor pada pagi hari tanggal 2 Januari, lalu kueri dijalankan lagi pada siang hari tanggal 2 Januari. Karena kueri dijalankan dalam jangka waktu 24 jam yang ditentukan oleh persist_for, data dari 1 Januari akan ditampilkan, meskipun data baru dimuat pada 2 Januari.

Jika Anda ingin caching selaras dengan impor data, gunakan grup data dan persist_with, seperti yang dijelaskan di halaman dokumentasi Meng-cache kueri.

Look terjadwal akan menyimpan hasil ke dalam cache

Saat Look terjadwal dijalankan, Look tersebut akan membuat set hasil yang di-cache dengan cara yang sama seperti kueri yang dijalankan pengguna. Jika Anda ingin melakukan pra-cache pada Tampilan tertentu, sebaiknya simpan dan jadwalkan Tampilan tersebut.