You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Superset缓存配置作用、永久自动刷新仪表盘及缓存机制疑问

Superset生产环境缓存配置与仪表盘刷新问题

背景

我在生产环境部署了多个Superset仪表盘,了解到生产环境推荐使用Redis作为缓存方案。


问题1:FILTER_STATE_CACHE_CONFIG配置的作用

想了解在superset_config.py中添加以下配置的具体效果:

FILTER_STATE_CACHE_CONFIG = {
    'CACHE_TYPE': 'RedisCache',
    'CACHE_DEFAULT_TIMEOUT': 86400,
    'CACHE_KEY_PREFIX': 'superset_filter_',
    'CACHE_REDIS_URL': 'redis://localhost:6379/2'
}

问题2:实现仪表盘永久自动刷新

如何让Superset仪表盘实现永久自动刷新,而不是仅当前会话有效的临时刷新?


2022年7月26日更新(后续实践)

我已在superset_config.py中配置了多组Redis缓存:

from datetime import timedelta
from superset.utils.cache import CacheConfig

CACHE_CONFIG: CacheConfig = {
    'CACHE_TYPE': 'RedisCache',
    'CACHE_DEFAULT_TIMEOUT': int(timedelta(days=1).total_seconds()),
    'CACHE_KEY_PREFIX': 'superset_cache_',
    'CACHE_REDIS_URL': 'redis://redis:6379/2'
}

# 数据源元数据与查询结果缓存
DATA_CACHE_CONFIG: CacheConfig = {
    'CACHE_TYPE': 'RedisCache',
    'CACHE_DEFAULT_TIMEOUT': int(timedelta(days=1).total_seconds()),
    'CACHE_KEY_PREFIX': 'superset_data_',
    'CACHE_REDIS_URL': 'redis://redis:6379/3'
}

FILTER_STATE_CACHE_CONFIG: CacheConfig = {
    'CACHE_TYPE': 'RedisCache',
    'CACHE_DEFAULT_TIMEOUT': int(timedelta(days=1).total_seconds()),
    'CACHE_KEY_PREFIX': 'superset_filter_',
    'CACHE_REDIS_URL': 'redis://redis:6379/4'
}

EXPLORE_FORM_DATA_CACHE_CONFIG: CacheConfig = {
    'CACHE_TYPE': 'RedisCache',
    'CACHE_DEFAULT_TIMEOUT': int(timedelta(days=1).total_seconds()),
    'CACHE_KEY_PREFIX': 'superset_explore_',
    'CACHE_REDIS_URL': 'redis://redis:6379/5'
}

Superset启动成功,刷新仪表盘时能在redis-cli中看到查询记录,但我有个疑问:每次在仪表盘上应用过滤器时,数据都会重新缓存,是否应该为数据源的每个过滤器组合单独缓存一次,以此避免每次都直接访问数据库获取数据?


内容的提问来源于stack exchange,提问作者NikSp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 13:19:01