superset使用笔记
文章目录
superset是什么
superset马甲比较多,它曾经叫过:Panoramix
,Caravel
,
关于入门和介绍可以我此前的文章:
最近公司想用新版本中的SQL Lab的功能,于是我将caravel升级到superset。在此做个笔记
除了增加了几个新特性,变化不大,此前写的caveral文章基本可用,如果遇到问题,参考官方文档即可
安装
安装基本没坑,跟着官方教程做就行
我是ubuntu系统,所以安装过程为:
安装依赖
ubuntu
|
|
centos
|
|
docker
参考Docker image (community contributed)
安装与初始化
|
|
数据永久化
默认数据库在~/.superset/superset.db
,可通过在配置文件里修改SQLALCHEMY_DATABASE_URI
来指定sqlite数据库文件路径
更多数据库
默认支持sqlite
如果需要添加其他数据库需要安装依赖:Database dependencies
诸如mssql: pip install pymssql
添加mssql,uri形如: mssql+pymssql://username:pass@192.168.0.6:10025/db_name?charset=utf8
oracle
oracle比较烦人,如果是ubuntu可以参考Oracle-Instant-Client
简单配置
配置方法和caravel系列之简易配置/定制相同,只需要把配置文件名由caravel_config.py
改为superset_config.py
即可
我的配置是:(superset_config.py
) 记得:export PYTHONPATH=/xxx (superset_config.py所在目录)
|
|
定制化
认证系统
考虑到数据的隐私和安全,访问superset的内容需要登陆验证,你可以加入公司已有的认证系统,诸如LDAP,database之类的,目前superset支持以下积累验证:database, OpenID, LDAP, OAuth & REMOTE_USER
这部分功能由Flask AppBuiler
提供,如果你想做深度定制,可以对此做更深入了解:Authentication Methods
另外如果你想把superset的slice集成到其他系统会遇到用户登陆问题,如果你想无缝衔接,可以考虑OAuth
至于是否可以用CAS,我还没做实验,猜测在Flask AppBuiler的认证部分增加flask cas模块能做到
#坑
汉化
当前版本,打包过程没用把翻译文件放进去,需要手动处理
首先进入安装包目录(我的是:/home/wwj/superset_lab/env/lib/python3.4/site-packages/superset
)
然后:mkdir -p translations/zh/LC_MESSAGES
接着获取:wget https://github.com/airbnb/superset/raw/0.15.1/superset/translations/zh/LC_MESSAGES/messages.mo
如果翻译不完整可以手动翻译: 下载: wget https://github.com/airbnb/superset/raw/0.15.1/superset/translations/zh/LC_MESSAGES/messages.po
,校验:msgfmt -c messages.po
, 然后编译为mo:msgunfmt messages.po -o messages.mo
如果想反向编译,即 mo -> po , 可以使用 :msgfmt xxx.mo -o xxx.po
,可以参考:How to convert gettext .mo file into .po file
如果你想做更多定制,诸如做自己的发行版,参考:Making your own build
文章作者 种瓜
上次更新 2017-01-05