數據分析進階-阿里雲服務器部署superset與初步使用

前言

Superset 是 Airbnb開源的數據探查與可視化平臺,是個輕量級的BI工具,開發者可以在其開源代碼上根據需要進行二次開發。最近在探索數據分析平臺的應用,就來試一試,然而superset更新迭代的速度太快,裏面也有太多的坑,花了兩天的時間踩完,下面就把流程以及相應的坑分享~
superset github地址:https://github.com/apache/incubator-superset
官方文檔:http://superset.apache.org/installation.html

安裝

環境:Ubuntu 18.04 LTS,Python 3.6.9

建議還是使用Python3.6以上的版本,初次探索使用Python2.7.6踩了好多坑
安裝到最後告訴我要Python>3.6!!!
附加Python3.6的較爲方便的安裝方式:
https://blog.csdn.net/sinat_37026077/article/details/86628493

如果上述方式不行,可以嘗試以下做法:

https://segmentfault.com/a/1190000018264955
成功後若pip安裝報錯可參考:
https://blog.csdn.net/SeaSky_Steven/article/details/96356317

(1)首先安裝所需的依賴

# 先update下
sudo apt-get update
# 18.04版本的運行下述命令
sudo apt-get install build-essential libssl-dev libffi-dev python3.6-dev python-pip libsasl2-dev libldap2-dev

(2)安裝Python virtualenv環境
建議在virtualenv環境中安裝superset,因爲superset依賴的包太多且版本定的比較嚴格

apt-get install python3-venv

(3)切換Python virtualenv環境
系統中有多個Python版本,比如2.7、3.6。具體使用哪個,最好的方式是使用Python虛擬環境來指定具體Python版本

# 創建以及切換
python3 -m venv superset_env  # superset_env可以自定義命名
. superset_env/bin/activate

# 退出環境
deactivate

(4)在virtualenv環境下使用pip來安裝superset
以下操作均在virtualenv環境內進行

# 可以先把pip跟setuptools更新到最新
pip install --upgrade setuptools pip

# 安裝superset
pip install apache-superset

使用

安裝成功後就可以開始使用了,以下是初步的操作

# 初始化數據庫
superset db upgrade

!!!在這裏就遇到一個坑,如下:

Traceback (most recent call last):
  File "/root/supersetvir/bin/superset", line 21, in <module>
    from superset.cli import create_app
  File "/root/supersetvir/lib/python3.6/site-packages/superset/__init__.py", line 26, in <module>
    from flask_appbuilder import AppBuilder, IndexView, SQLA
  File "/root/supersetvir/lib/python3.6/site-packages/flask_appbuilder/__init__.py", line 5, in <module>
    from .api import ModelRestApi  # noqa: F401
  File "/root/supersetvir/lib/python3.6/site-packages/flask_appbuilder/api/__init__.py", line 10, in <module>
    from flask_babel import lazy_gettext as _
  File "/root/supersetvir/lib/python3.6/site-packages/flask_babel/__init__.py", line 19, in <module>
    from werkzeug import ImmutableDict
ImportError: cannot import name 'ImmutableDict'

主要是因爲werkzeug的版本不符合,superset安裝過程經常會遇到的問題,可以根據需要看它的requirements.txt進行修改,命令如下:

pip install werkzeug==0.16.0

後續操作如下:

# 設置用戶名,姓氏,名字,郵箱,密碼
$export FLASK_APP=superset
flask fab create-admin
# 加載一些數據到sqlite數據庫中進行展示
superset load_examples
# 初始化superset
superset init
# 啓動superset服務
superset run -h 0.0.0.0 -p 8088 --with-threads --reload --debugger

啓動服務時一定一定要限定ip,不然它會以127.0.0.1運行,這樣外網就無法訪問公網ip
在這裏插入圖片描述
若希望修改數據庫爲MySQL或者進行漢化,可以查看此博客,後續將對平臺的具體使用進行分享~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章