欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

superset部署

程序员文章站 2022-03-23 13:37:51
superset功能概述: 丰富的数据可视化集 易于使用的界面,用于探索和可视化数据 创建和共享仪表板 与主要身份验证提供程序集成的企业级身份验证(通过Flask AppBuilder进行数据库,OpenID,LDAP,OAuth和REMOTE_USER) 可扩展的高粒度安全/权限模型,允许谁可以访 ......

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

 

三在虚拟环境中安装superset

(venv) [root@oldboy data]# pip install --upgrade setuptools pip

pip 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 --app superset

# load some data to play with
superset load_examples

# create default roles and permissions
superset init

#启动,默认端口是8088

superset runserver -d

#默认数据库是sqlite,在配置文件里可以改为mysql等

/data/venv/lib/python3.6/site-packages/superset/config.py

连接mysql需要安装:

yum install mysql-devel
pip install mysqlclient

连接impala需要安装:

pip install impyla  需要重启服务

 

注意:

在安装中初始化数据库时会报错,这是superset的bug: 可以去https://github.com/apache/incubator-superset/issues看

 

1/ cannot import name '_maybe_box_datetimelike'

解决方法:
pip uninstall pandas
pip list | grep pandas
pip 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.

解决方法:
pip install sqlalchemy==1.2.18