Fortinet white logo
Fortinet white logo

Administration Guide

How auto-cache works

How auto-cache works

When you generate a report, it can take days to assemble the required dataset and produce the report, depending on the required datasets. Instead of assembling datasets at the time of report generation, you can enable the auto-cache feature for the report. Auto-cache is a setting that tells the system to automatically generate hcache.

hcache is a proprietary FortiAnalyzer caching system that stays on the disk in the form of a database table. Unlike other caches, hcache tables are persistent and are not removed based on a set period of time.

When a database table is rolled, it becomes "mature", meaning the table will not grow any more. Because the tables will not grow, it is unnecessary to query the database table each time for the same SQL query. hcache runs queries on these matured database tables in advance and caches the interim results of each query. When it is time to generate the report, much of the datasets are already assembled, and the system only needs to merge the results from hcaches. This reduces report generation time significantly.

The auto-cache process uses system resources to assemble and cache the datasets and it takes extra space to save the query results. You should only enable auto-cache for reports that require a long time to assemble datasets.

How auto-cache works

How auto-cache works

When you generate a report, it can take days to assemble the required dataset and produce the report, depending on the required datasets. Instead of assembling datasets at the time of report generation, you can enable the auto-cache feature for the report. Auto-cache is a setting that tells the system to automatically generate hcache.

hcache is a proprietary FortiAnalyzer caching system that stays on the disk in the form of a database table. Unlike other caches, hcache tables are persistent and are not removed based on a set period of time.

When a database table is rolled, it becomes "mature", meaning the table will not grow any more. Because the tables will not grow, it is unnecessary to query the database table each time for the same SQL query. hcache runs queries on these matured database tables in advance and caches the interim results of each query. When it is time to generate the report, much of the datasets are already assembled, and the system only needs to merge the results from hcaches. This reduces report generation time significantly.

The auto-cache process uses system resources to assemble and cache the datasets and it takes extra space to save the query results. You should only enable auto-cache for reports that require a long time to assemble datasets.