反饋已提交
網絡繁忙
FineReport提供了資料集快取功能,是先將資料集查詢的結果快取下來,之後再次用到相同資料集,就無需再次連線資料庫重新進行查詢,可以直接使用之前快取的結果,從而提高報表的展現速度。
本節內容:
生產資料集時設定資料集快取。
快取至記憶體。
快取至磁碟。
資料集共享屬性設定。
資料快取的邏輯:
假設有多個範本,並且每個範本都有一個名為ds1的資料集。如果每個範本中ds1的SQL語句和資料集引數相同,這些範本將使用相同的快取檔案來複用ds1。
假設有多個範本,並且每個範本都有一個名為ds1的資料集。如果每個範本中ds1的SQL語句和資料集引數不同,範本將使用不同的快取檔案來複用ds1的結果。
資料集快取的位置: 分為快取至記憶體和快取至磁碟這兩種方式。可以根據資料量的大小進行設定。
註:CPT 範本和 FRM 表單都支援資料集快取。
新建資料集【ds1】。
使用以下SQL:
SELECT Classno,StudentNO,Name,Sex,Course,Grade
FROM STSCORE
order by Grade,Classno ASC。
設定方法:勾選【共享資料集】,下拉框選擇【所有記錄都儲存在記憶體中】,如下圖所示。
設定後的結果:當執行資料查詢時就會將查詢所得資料快取至記憶體中,下次執行此資料集資料查詢時,會直接從記憶體快取中取數。
優缺點:記憶體的空間資源有限,但取數速度快。
使用場景:資料量不算太大的報表,較常使用。
設定方法:勾選【共享資料集】,點選下拉框選擇【快取至磁碟當記錄數大於】,並設定列數為100,如下圖所示。
快取結果:快取至磁碟是將資料快取到伺服器的磁碟中,預設是在C:\使用者\使用者名稱\.FineReport100\cache(Windows 作業系統)下。
設定後的效果:
記錄數預設大於 0 列:查詢的資料全部快取在磁碟中。
記錄數大於如 100 列:表示查詢的資料前100條是快取到記憶體中,剩餘全部快取至磁碟。
優缺點:磁碟的空間較大,幾乎沒有資料數量的限制,但取數速度往往很慢。
使用場景:若是資料量很大的報表,可以將使用頻率高的前 N 頁資料快取在記憶體,剩餘資料快取在磁碟中。
註:如啟用了磁碟快取,發現系統目錄下沒有 cache 資料夾。不要感到驚訝,資料查詢執行後,若有資料需要快取到磁碟,這個資料夾就會生成。
管理員登入決策平臺,選擇【管理系統】→【系統管理】→【快取】。
各設定項的含義:
快取資料集最大個數:快取容器中最多資料集快取個數,如果快取的資料集超過設定的數目,則伺服器會根據下面的快取原則來選擇快取資料集的去留。
快取原則:
最近使用:優先移除最久沒有被訪問的快取;
最不常使用:優先移除被使用次數最少的快取;
先進先出:優先移除最早進入的快取。
最大空閒時間:最後一次訪問快取到快取失效的時間間隔。
最大生存時間:快取建立到失效的時間間隔。
文 檔回 饋
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉