Apache Superset使用分享

Superset简介

Superset是一个受Apache软件基金会支持的处于孵化阶段的企业级数据可视化web项目。具备如下特色:前端

  • 内含丰富的数据图表样式
  • 支持多种数据源(Oracle、MySQL、Postgres, MariaDB等等)
  • 提供易用的界面来自定义可视化数据
  • 提供一个Web版SQL查询工具
  • 提供OpenID, LDAP, OAuth等多种认证方式,易于集成。

Superset的主要功能是将基础数据以直观的可视化图表形式渲染出来。本文档对数据源的配置、自定义可视化数据进行介绍。关于Superset的安装不在本文探讨范围内,官方文档中提供了基于docker的一键化安装教程。web

为了形象的代表Superset能作什么,最直接的方式就是放图了。好比它能根据数据生成以下的图表,只须要配置好了数据源,不须要编写一行代码即可生成可视化图表。前端不再用和Echart打交道,后端增删改查小王子也不要写代码了。docker

固然这只是最基础的,下面还有贼多炫酷的图表,恐怖的让人不由瑟瑟发抖。本人目前公司才用到一些基本图表,暂时感受数据可视化方面仍是挺知足项目需求的。

数据源的配置

可视化数据的前提是必须有数据源为其提供基础数据。本节介绍如何配置可靠的数据源。Superset支持多种数据库充当数据源,如:Oracle、MySQL、Postgres, MariaDB等等。本节以Oracle为例。数据库

请原谅我如下全部截图中都是使用的中文,有些地方翻译略显生硬。原本系统是使用的英文,奈何领导要求中文呀。后端

新增数据库

①点击数据源选择数据库,进入页面后点击右上角绿色的+号新增一个数据库 函数

②填写数据库配置相关信息,点击测试链接,出现seems OK!代表数据库链接成功。工具

注:勾选“在SQL工具中公开”选项则代表容许在Superset提供的SQL查询工具中对该数据库进行操做,按需勾选。测试

新增数据表

①点击数据源选择数据表,进入页面后点击右上角的+号新增一个数据表翻译

②下拉选择刚刚配置的数据库,并填写数据库中存在的某个表名,点击保存3d

③点击编辑表,在列列表中页面中为每一个列勾选后续数据分析时会使用到的一些属性,

注:可分组和可过滤按需勾选,表示在后续分析数据时是否支持根据该列进行分组和过滤。时间字段的表示时间属性必须勾选上(通常Superset会时间列默认勾选)。

通过上述操做,咱们便为后续的数据可视化操做提供了一个数据表充当数据源。

新增看板

数据源配置好后咱们还须要新增一个看板用来保存咱们以后生成的可视化图表。你能够把看板理解成一个文件夹,用来存储一系列相关的图表

①点击看板,进入页面后点击右上角的+号新增一个看板

②填写看板名并选择所属者,点击保存

完成上述操做后,咱们便在系统内新增了一个“景区指标”看板来存储后续生成的可视化图表。

自定义可视化图表

如今全部准备工做都已经完成,能够正式开始生成可视化图表。为了事情的发展顺利,先给出上一节中新增数据表的结构信息:

仔细观察上表的字段,该表的每条记录表示某个景区某天某种出行方式出行的游客总人数。咱们假设本次数据可视化的任务是将景区编号为201_1的景区前一周游客的出行方式渲染成可视化图表。

配置可视化图表

注意:尽管Superset提供了一个易用的配置界面来配置可视化图表,但可能仍是须要用户在必定程度上熟悉简单的SQL语法。因此,若是你不熟悉SQL语法,那么下面的内容对你来讲可能会略显吃力。

①选择须要分析的数据表

②配置图表(以饼图为例) 点击数据表后进入配置页面。注意,咱们的目的是:将景区编号为201_1的景区前一周游客的出行方式渲染成可视化图表。 按以下步骤自定义配置参数: 步骤一:选择图表类型为饼图

步骤二:筛选前一周数据

步骤三:筛选景区编号为201_1的数据

步骤四:设置分组条件,此处根据出行方式进行分组

步骤五:配置分析的指标,此处为游客人数。(sum表示对每一个分组的人数求和)

步骤六:设置行限制,此处可留空,若是说仅需显示出行方式排行前10的数据则可将行限制设置为10

步骤7:点击左上角运行查询按钮,查看数据渲染结果

保存可视化图表

经过上述步骤如今已经配置好了一个可视化图表。咱们能够将其持久化保存。如图:将图表配置保存并将生成的可视化图表保存到第一步配置的“景区指标”看板中。

查看生成的可视化图表

点击这两个条目可查看刚刚保存的图表配置和生成的可视化图表。

常见问题

经过上述的几节已经完整的介绍了Superset配置可视化图表的操做步骤,本节列出一些困扰使用者的常见问题:

Q1:指标能够是某个字段名而非汇集函数吗?
A:这个具体由不一样的图表类型决定,通常来讲都是汇集函数。

Q2:容许多个表的联合查询吗?
A:Superset不能直接使用联合查询,只能从单个表查找数据。可是它提供的视图的概念,能够编写视图SQL,最终在视图上执行单表查询操做。视图的配置见下图:
一、点击编辑表

二、编写SQL语句,以SQL的结果集做为视图。

Q3:如何校验数据的正误?
A:Superset提供的数据分析是创建在SQL基础上的,在配置可视化图表阶段,点击右上方的列表按钮,能够查看到查询执行的实际SQL以及返回的原始数据结果。经过查看SQL和结果集来校验正误。

Q4:为什么配置图表后点击运行查询无反应?
此种状况说明系统根据你的配置生成的查询SQL有问题。可根据Q3来排查问题所在,而且系统为用户提供Web版的SQL查询工具来操做数据库。

常见图表类型配置

上文中以饼图为例展现了可视化图表的配置,本节给出常见的柱状图以及时间折线图的配置方法。Superset容许众多的图表类型,其他类型须要用户本身去尝试。 因为篇幅问题,仅给出配置,详细步骤略去。

柱状图

目的:渲染201_1景区前一天的游客出行方式

时间折线图

目的:渲染201_1景区游客每种出行方式不一样日期的对比

相关文章
相关标签/搜索