如何在Superset中导出含指定字段的Dashboard相关报表?
Superset是否支持导出指定Dashboard关联资源的指定字段报表
Superset没有原生一键导出你要求的三个字段报表的功能,但是可以通过两种很简单的方式拿到符合要求的结果:
- 查元数据库生成报表
Superset所有的Dashboard、图表、数据源的关联关系都存在后端元数据库里,你只要有权限连元数据库,写个多表关联查询就能直接拿到你要的三个字段,查完可以直接导出成Excel或者CSV:- dashboard_name 取dashboards表的
dashboard_title字段即可 - graph_name 取slices表的
slice_name字段,就是单个图表的名称 - source of the graph 关联数据源表取对应信息就行,能直接区分是普通表、视图还是物化视图
表关联逻辑很简单:dashboards和slices通过中间表dashboard_slices做关联,slices再通过datasource_id和datasource_type两个字段关联到对应的数据源记录就行。
- dashboard_name 取dashboards表的
- 用原生导出功能后整理
要是你没有元数据库的查询权限,直接在Dashboard列表选中你要导出的目标Dashboard,点自带的导出按钮,会下载一个包含所有配置信息的压缩包,解压后里面的JSON文件存了所有关联的图表、数据源信息,你把对应字段摘出来整理成表格就行,不需要写代码。
有个特殊情况要注意:如果你的图表绑定的是自定义SQL写的虚拟数据集,导出的数据源信息只会显示你写的那段SQL,不会自动解析SQL里引用的底层表、视图、物化视图,这种情况要拿到最底层的资源关联,需要你自己额外解析数据集里的SQL内容。
内容的提问来源于stack exchange,提问作者Ephesus
相关产品推荐
相关产品推荐

