Bagikan melalui


Laporan cache (SSRS)

Server laporan dapat menyimpan salinan laporan yang diproses dan mengembalikan salinan tersebut saat pengguna membuka laporan. Untuk pengguna, satu-satunya bukti yang tersedia untuk menunjukkan laporan adalah salinan yang di-cache adalah tanggal dan waktu laporan dijalankan. Jika tanggal atau waktu tidak terkini dan laporan bukan rekam jepret, laporan diambil dari cache.

Penembolokan dapat mempersingkat waktu yang diperlukan untuk mengambil laporan jika laporan besar atau sering diakses. Jika server dimulai ulang, semua instans yang di-cache akan dikembalikan saat layanan Web Server Laporan kembali online.

Penembolokan adalah teknik peningkatan performa. Konten cache tidak stabil dan dapat berubah saat laporan ditambahkan, diganti, atau dihapus. Jika Anda memerlukan strategi penembolokan yang lebih dapat diprediksi, Anda harus membuat rekam jepret laporan. Untuk informasi selengkapnya, lihat Mengatur properti pemrosesan laporan.

Catatan

Reporting Services menyimpan file sementara dalam database untuk mendukung sesi pengguna dan pemrosesan laporan. File-file ini di-cache untuk penggunaan internal dan untuk mendukung pengalaman melihat yang konsisten selama satu sesi browser. Untuk informasi selengkapnya tentang bagaimana file sementara penggunaan internal di-cache, lihat Database Server Laporan (Mode Asli SSRS).

Instans cache

Instans laporan yang di-cache didasarkan pada format perantara laporan. Server laporan umumnya menyimpan satu instans laporan berdasarkan nama laporan. Namun, jika laporan dapat berisi data yang berbeda berdasarkan parameter kueri, beberapa versi laporan mungkin di-cache pada waktu tertentu. Misalnya, Anda memiliki laporan berparameter yang mengambil kode wilayah sebagai nilai parameter. Jika empat pengguna yang berbeda menentukan empat kode wilayah unik, empat salinan cache dibuat.

Pengguna pertama yang menjalankan laporan dengan kode wilayah unik membuat laporan cache yang berisi data untuk wilayah tersebut. Pengguna berikutnya yang meminta laporan menggunakan kode wilayah yang sama mendapatkan salinan yang di-cache.

Tidak semua laporan dapat di-cache. Jika laporan menyertakan data yang bergantung pada pengguna, meminta kredensial kepada pengguna, atau menggunakan Autentikasi Windows, laporan tersebut tidak dapat di-cache.

Merefresh cache

Laporan cache diganti dengan versi yang lebih baru saat pengguna memilih laporan setelah salinan yang di-cache sebelumnya kedaluwarsa. Laporan yang dikonfigurasi untuk dijalankan sebagai instans cache dihapus dari cache secara berkala berdasarkan pengaturan kedaluwarsa. Anda dapat mengatur kedaluwarsa laporan dalam hitungan menit atau pada waktu terjadwal, seperti yang ditentukan oleh persyaratan langsung data. Anda tidak dapat menghapus laporan dari cache secara langsung kecuali Anda menggunakan SOAP API.

Untuk mengonfigurasi kedaluwarsa cache, Anda dapat menggunakan jadwal bersama atau jadwal khusus laporan. Jika Anda menggunakan jadwal bersama dan jadwalnya nanti dijeda, cache tidak kedaluwarsa saat jadwal tidak berfungsi. Jika jadwal bersama nanti dihapus, salinan pengaturan jadwal disimpan sebagai jadwal khusus laporan.

Jika jadwal kedaluwarsa, atau jika mesin penjadwalan tidak tersedia pada tanggal kedaluwarsa cache, server laporan menjalankan laporan langsung. Tindakan ini berlanjut hingga operasi terjadwal dapat dilanjutkan. Operasi terjadwal dapat dilanjutkan saat Anda memperpanjang jadwal atau memulai layanan penjadwalan.

Pramuat cache

Untuk meningkatkan performa server, Anda dapat memuat cache terlebih dahulu. Anda dapat memuat cache dengan kumpulan instans laporan berparameter dengan dua cara:

  1. Buat rencana refresh cache. Saat membuat paket refresh, Anda dapat menentukan jadwal untuk satu laporan atau menentukan jadwal bersama.

  2. Buat langganan berbasis data yang menggunakan Penyedia Pengiriman Null. Saat Anda menentukan Penyedia Pengiriman Null sebagai metode pengiriman dalam langganan, server laporan menargetkan database server laporan sebagai tujuan pengiriman. Server menggunakan ekstensi penyajian khusus yang disebut ekstensi rendering null. Berbeda dengan ekstensi pengiriman lainnya, Penyedia Pengiriman Null tidak memiliki pengaturan pengiriman yang dapat Anda konfigurasikan melalui definisi langganan.

Penembolokan laporan sangat berguna jika Anda ingin menyimpan beberapa instans laporan berparameter di mana nilai parameter yang berbeda digunakan untuk menghasilkan instans laporan yang berbeda. Anda hanya dapat menentukan parameter berbasis kueri pada laporan.

Saat Anda menentukan jadwal atau saat membuat langganan berbasis data, Anda menjadwalkan seberapa sering laporan dikirimkan ke cache. Agar salinan baru dikirimkan ke cache, salinan lama perlu kedaluwarsa. Oleh karena itu, properti Eksekusi laporan harus dikonfigurasi untuk menyertakan pengaturan kedaluwarsa cache. Pengaturan kedaluwarsa harus konsisten dengan jadwal langganan yang Anda tentukan. Misalnya, jika Anda membuat langganan yang berjalan setiap malam, cache juga harus kedaluwarsa setiap malam sebelum run time langganan. Jika properti Eksekusi tidak menyertakan waktu kedaluwarsa, pengiriman yang lebih baru diacuhkan. Untuk informasi selengkapnya tentang rencana refresh cache, lihat Jadwal. Untuk informasi selengkapnya tentang mengatur properti, lihat Mengatur properti pemrosesan laporan. Untuk informasi selengkapnya tentang menggunakan langganan berbasis data, lihat Langganan berbasis data.

Kondisi yang menyebabkan kedaluwarsa cache

Laporan yang di-cache tidak valid sebagai respons terhadap peristiwa berikut: definisi laporan dimodifikasi, parameter laporan dimodifikasi, info masuk sumber data berubah, atau opsi eksekusi laporan berubah. Jika Anda menghapus laporan yang disimpan di cache, versi cache juga akan dihapus.

Jika laporan tidak dapat dirender dari instans cache karena alasan apa pun, server laporan akan menjalankan ulang laporan. Tindakan ini memastikan bahwa laporan dihasilkan dengan nilai parameter yang benar dan diperbarui.