背景
Superset是一款轻量级的BI工具,由Airbnb的数据部门开源。整个项目基于Python框架,集成了Flask、D3、Pandas、SqlAlchemy等。
Superset本身集成了数据查询功能,支持各类主流数据库,包括MySQL、PostgresSQL、Oracle、Impala、SparkSQL等,深度支持Druid。
安装
最新的superset已经不支持python2了,需要通过pip3来安装
pip3 install superset
我主要使用mysql作为数据源,Python3不再支持MySQL-python
, 可以用下面命令替代:
pip3 install mysqlclient
安装成功后,需要进行初始化配置,也是在命令行输入:
fabmanager create-admin --app superset
首先用命令行创建一个admin管理员账户,也是后续的登陆账号。会依次提示输入账户名,账户使用者的first name、last name、邮箱、以及确认密码。fabmanager是flask的权限管理命令,如果大家忘了密码,也能重新设立。
superset db upgrade
初始化默认的用户角色和权限。
superset init
最后一步骤,启动Superset服务。
superset runserver
因为我们是本地环境,所以在浏览器输入 http://localhost:8088 即可。在runserver后面添加-p XXXX
可更改为其他端口。
使用
首先要连接数据库,添加数据源:
比如mysql, 这里可以按如下格式配置连接,然后点选下面的测试链接
按钮验证连接是否配置成功。
mysql://DB_USER:DB_PASS@DB_HOST:DB_PORT/DB_NAME
进入到SQL工具箱,输入SQL语句,直接出来了数据库的数据预览。语法和MySQL一致。
选择Visualize/Explore,进入切片绘图模式。
保存绘图后可以在绘图菜单中选择,然后可以进一步加入到看板中。