Skip to main content

其他

报告安全漏洞

请将安全漏洞报告至 private@superset.apache.org

如果社区成员发现 Superset 中存在安全缺陷,重要的是遵循 Apache 安全指南,并在公开披露之前尽快发布修复方案。 通过常规的 GitHub Issues 渠道报告安全漏洞并不理想,因为它会在应用修复方案之前公开缺陷。

SQL Lab 异步模式

可以配置本地数据库以 async 模式运行, 以便开发与 async 相关的功能。

要做到这一点,你需要:

  • 添加一个额外的数据库条目。我们建议你复制标记为 main 的数据库的连接字符串,然后启用 SQL Lab 和你想使用的功能。别忘了勾选 Async 选项

  • 配置结果后端,这里有一个本地 FileSystemCache 示例, 不推荐用于生产环境, 但对于测试来说非常完美(将缓存存储在 /tmp 中)

    from flask_caching.backends.filesystemcache import FileSystemCache
    RESULTS_BACKEND = FileSystemCache('/tmp/sqllab')
  • 启动一个 celery worker

    celery --app=superset.tasks.celery_app:app worker -O fair

请注意:

  • 对于影响 worker 逻辑的更改,你必须重启 celery worker 进程才能使更改生效。
  • 使用的消息队列是一个使用 SQLAlchemy 实验性代理的 sqlite 数据库。适用于测试,但不推荐用于生产环境。
  • 在某些情况下,你可能希望创建更符合生产环境的上下文,并使用类似的代理以及结果后端配置。

异步图表查询

可以配置图表的数据库查询以 async 模式运行。 这对于具有大量图表的仪表板特别有用,这些图表可能会受到浏览器连接限制的影响。 为了在仪表板和 Explore 中启用异步查询,需要以下依赖项:

  • Redis 5.0+(该特性利用了 Redis Streams
  • 通过 CACHE_CONFIGDATA_CACHE_CONFIG 配置设置启用的缓存后端
  • 配置并运行以处理异步任务的 Celery workers