superset部署
superset功能概述:
丰富的数据可视化集
易于使用的界面,用于探索和可视化数据
创建和共享仪表板
与主要身份验证提供程序集成的企业级身份验证(通过Flask AppBuilder进行数据库,OpenID,LDAP,OAuth和REMOTE_USER)
可扩展的高粒度安全/权限模型,允许谁可以访问各个功能和数据集的复杂规则
一个简单的语义层,允许用户通过定义哪些字段应显示在哪个下拉列表以及哪些聚合和功能度量标准可供用户使用来控制数据源在UI中的显示方式
通过SQLAlchemy与大多数讲SQL的RDBMS集成
与Druid.io深度整合
部署:
官网:http://superset.apache.org/installation.html
一. 准备python3环境
#安装基础依赖
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
#superset用到的依赖
yum install gcc-c++ python-devel.x86_64 cyrus-sasl-devel.x86_64
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
#速度慢,直接去官网下载相应版本
mkdir -p /usr/local/python3
然后解压压缩包,进入该目录,安装Python3
tar -xvf Python-3.6.2.tar.xz
cd Python-3.6.2
./configure --prefix=/usr/local/python3
make && make install
创建软链接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
在命令行中输入python3测试:
[root@oldboy .superset]# python3 --version
Python 3.6.2
二 创建python3的虚拟环境
pip3 install virtualenv
mkdir /data
python3 -m venv venv
#创建成功会在/data目录下生成虚拟目录:
[root@oldboy .superset]# cd /data
[root@oldboy data]# ls
venv
#激活
. venv/bin/activate
#退出用
deactivate
三在虚拟环境中安装superset
(venv) [root@oldboy data]# pip3 install --upgrade setuptools pip
pip3 install superset
# Initialize the database
superset db upgrade
# Create an admin user (you will be prompted to set a username, first and last name before setting a password)
export FLASK_APP=superset
flask fab create-admin
# Load some data to play with
superset load_examples
# Create default roles and permissions
superset init
#启动,默认端口是8088
superset runserver -d
nohup superset runserver -d >> /dev/null 2>&1 &
单线程会有闪退的现象,用:
. /data/venv/bin/activate
gunicorn -w 10 --timeout 120 -b 0.0.0.0:6666 --limit-request-line 0 --limit-request-field_size 0 --statsd-host localhost:8125 superset:app
或者同事的启动方法:
/data/venv/bin/python3 /data/venv/bin/gunicorn -w 10 --timeout 120 -b 0.0.0.0:6666 --limit-request-line 0 --limit-request-field_size 0 --statsd-host localhost:8125 superset:app > /dev/null 2>&1 &
#查看
netstat -lntup |grep 6666
#停止
pkill gunicorn
#默认数据库是sqlite,在配置文件里可以改为mysql等
/data/venv/lib/python3.6/site-packages/superset/config.py
连接mysql需要安装:
yum install mysql-devel
pip3 install mysqlclient
连接impala需要安装:
pip3 install impyla 需要重启服务
注意:
在安装中初始化数据库时会报错,这是superset的bug: 可以去https://github.com/apache/incubator-superset/issues看
1/ cannot import name '_maybe_box_datetimelike'
解决方法:
pip3 uninstall pandas
pip list | grep pandas
pip3 install pandas==0.23.4
2/ "Can't determine which FROM clause to join "
sqlalchemy.exc.InvalidRequestError: Can't determine which FROM clause to join from, there are multiple FROMS which can join to this entity. Try adding an explicit ON clause to help resolve the ambiguity.
解决方法:
pip3 install sqlalchemy==1.2.18
一点经验:
迁移的时候,如果有错,2个小时排不出来,赶紧重装.
重装如果不对,一定是版本不对. python版本和superset版本
pip3 freeze | grep superset #看superset版本
注意安装的时候用pip3, 因为做了软连接
#sqlite数据库备份脚本
#! /bin/sh
date=$(date +%Y_%m_%d)
cp -f /root/.superset/superset.db /fengfeng/backup/
mv /fengfeng/backup/superset.db /fengfeng/backup/superset${date}.db
scp /fengfeng/backup/superset${date}.db 10.52.80.112:/fengfeng/backup
sleep 5
rm -f /fengfeng/backup/superset${date}.db
~
00 00 * * * /bin/sh /fengfeng/script/superset_backup.sh >/dev/null 2>&1
#在备份服务器上做个定时删除:
00 01 * * * /bin/sh /fengfeng/script/del_superset_db.sh >/dev/null 2>&1
find /fengfeng/backup -mtime +2 -name "superset*.db" -exec -Rf {} \;
nginx:
upstream opossuperset_backend{
server 10.52.2.243:6666;
keepalive 1000;
}
server{
location / {
proxy_pass http://opossuperset_backend;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $http_x_real_ip;
}
}
superset部署的更多相关文章
- superset docker 部署
公众号原文有更多效果图哦 一.使用自己的数据库 1. 拉取项目 // 创建目录用于存放项目 mkdir -p /mnt/superset cd /mnt/superset git clone http ...
- Superset安装部署操作
目录 1.安装Miniconda 1.下载Miniconda 2.安装 3.开启一个新的shell窗口 4.设置新窗口不自动开启conda 2.创建Python3.7环境 1.配置国内镜像 2.常用命 ...
- 数据可视化的开源方案: Superset vs Redash vs Metabase (二)
在上篇结尾处我提到“如果现在让我重新选择,我会使用哪个可视化工具?”我的答案是 Redash,原因主要不是功能层面,而是技术层面.本篇就从项目关注度与活跃度,项目的技术架构,源代码的规模与质量,这三个 ...
- Presto + Superset 数据仓库及BI
基于Presto和superset搭建数据分析平台. Presto可以作为数据仓库,能够连接多种数据库和NoSql,同时查询性能很高: Superset提供了Presto连接,方便数据可视化和dash ...
- 官方教程:Apache Kylin和Superset集成,使用开源组件,完美打造OLAP系统
本文转自Apache Kylin公众号apachekylin. Superset 是一个数据探索和可视化平台,设计用来提供直观的,可视化的,交互式的分析体验. Superset 提供了两种分析数据源的 ...
- 大数据之superset
1.概述 superset大数据可视化的利器,深度集成durid,结合kylin.presto完成强大的大数据可视化功能,曾用名Panoramix.caravel.相比caravel它有个比较抢眼的功 ...
- Redash(开源轻量级商业智能) 生产环境部署及实践 (without docker)
一直在调研一个轻量级开源的 BI 系统.之前我们生产环境使用的 aliyun 的 QuickBi,也调研了另外一个 airflow 的开源商业智能 superset.不得不承认 QuickBI 正在日 ...
- superset使用
部署完成后,就可以登陆superset的web页面: http://192.168.56.105:8088 #默认是8080,在配置文件中可以修改 点database可以选择连接不同的数据源,如My ...
- airflow部署
官网: http://airflow.apache.org/installation.html 原理: https://www.cnblogs.com/cord/p/9450910.html 安装: ...
随机推荐
- 【概率论】3-3:累积分布函数(Cumulative Distribution Function)
title: [概率论]3-3:累积分布函数(Cumulative Distribution Function) categories: Mathematic Probability keywords ...
- 关于slf4j log4j log4j2的jar包配合使用的那些事
由于java日志框架众多(common-logging,log4j,slf4j,logback等),引入jar包的时候,就要为其添加对应的日志实现.. 不同的jar包,可能用了不同的日志框架,那引用了 ...
- c++ 使用类生成随机数
// generate algorithm example #include <iostream> // cout #include <algorithm> // genera ...
- spring相关知识点易错
1.spring不支持静态变量注入,即不能再static变量上面加@Resoure 要是想注入的话就用set方法注入 private static ComboPooledDataSource pool ...
- Robot Framework(十七) 扩展RobotFramework框架——扩展Robot Framework Jar
4.4扩展Robot Framework Jar 使用标准JDK安装中包含的jar命令,可以非常简单地向Robot Framework jar添加其他测试库或支持代码.Python代码必须放在jar里 ...
- vue 路由跳转记住当前页面位置
从列表页面跳去详情页面, 在列表页面的生命周期:deactivated 中把当前的scrollTop位置存下来,可以存在localstorage中,也可以存在vuex中, 从详情页面返回列表页面:a ...
- SpringBoot使用Undertow做服务器
说明 undertow,jetty和tomcat可以说是javaweb项目当下最火的三款服务器,tomcat是apache下的一款重量级的服务器,不用多说历史悠久,经得起实践的考验.然而:当下微服务兴 ...
- Apache Flink - 命令
$flink命令位置 命令 选项 jar包位置 \ --input 输入文件位置 --out 输出文件位置 ./bin/flink run ./examples/batch/WordCount.jar ...
- sass/scss 和 less对比
一. Sass/Scss.Less是什么? Sass (Syntactically Awesome Stylesheets)是一种动态样式语言,Sass语法属于缩排语法,比css比多出好些功能(如变量 ...
- Oracle JDBC 连接池
1.简介 数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据 ...