在windows下安裝Superset


前言

最近想用一下Superset,這個是一個開源項目,可以直接通過寫sql來生成圖表,有時候對一些圖表需求比較多的時候,可以用的上。
1

Superset是由Airbnb(知名在線房屋短租公司)開源BI數據分析與可視化平台(曾用名Caravel、Panoramix),該工具主要特點是可自助分析、自定義儀表盤、分析結果可視化(導出)、用戶/角色權限控制,還集成了一個SQL編輯器,可以進行SQL編輯查詢等,原來是用於支持Druid的可視化分析,后面發展為支持很多種關系數據庫及大數據計算框架,如:mysql, oracle, Postgres, Presto, sqlite, Redshift, Impala, SparkSQL, Greenplum, MSSQL.

http://superset.apache.org/tutorial.html

 

windows下的安裝和配置

superset官網就有安裝教程:http://superset.apache.org/installation.html
官網說明對Windows系統當前沒有官方支持,不過實際上是可以安裝成功的, 如果是windows下的安裝的話,要用 Python 安裝。
我的環境是: windows 7 64 位
以下是一些前置准備:

安裝 Python

我安裝的是 Python 3.6 版本。建議版本高一點,Python 2.7 版本在windows 上存在各種編碼問題。

1
2
F:\>python --version
Python 3.6.1

 

安裝 virtualenv

virtualenv 就是用來為一個應用創建一套“隔離”的Python運行環境

1
2
3
4
5
6
F:\>pip install virtualenv
Collecting virtualenv
Downloading https://files.pythonhosted.org/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe84f747b64d523721dc2b5/virtualenv-16.0.0-py2.py3-none-any.whl (1.9MB)
100% |████████████████████████████████| 1.9MB 265kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-16.0.0

使用virtualenv。先在D盤建立d:\pycharm\superset目錄。
創建虛擬環境:  virtualenv env
激活,啟用虛擬環境(必須要用反斜桿): env\Scripts\activate
1
2
3
4
5
6
7
8
9
10
D:\>md pycharm
D:\>cd pycharm
D:\pycharm>md superset
D:\pycharm>cd superset
D:\pycharm\superset>virtualenv env
Using base prefix 'c:\\program files (x86)\\python36-32'
New python executable in D:\pycharm\superset\env\Scripts\python.exe
Installing setuptools, pip, wheel...done.

D:\pycharm\superset>env\Scripts\activate

當然,如果后面想退出虛擬環境就是這個:
(env) D:\pycharm\superset>env\Scripts\deactivate

 

安裝 superset

1
2
3
4
5
6
7
8
9
10
11
12
13
(env) D:\pycharm\superset>pip install superset
Collecting superset
Downloading https://files.pythonhosted.org/packages/64/7e/186af3b4501c82794a9332530e8b310073779f555a3f20ee481a27b3bfaf/superset-0.26.3.tar.gz (50.6MB)
100% |████████████████████████████████| 50.6MB 45kB/s
Collecting bleach (from superset)
。。。
。。。
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

----------------------------------------
Command "d:\pycharm\superset\env\scripts\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\admin\\AppData\\Local\\Temp\\pip-install-_zyiqvlv\\python-geohash\\setup.py';f=getattr(tokenize, 'open', open)(__file__);
code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\admin\AppData\Local\Temp\pip-record-q7ds71hu\install-record.txt --single-version-externally-managed --compile --instal
l-headers d:\pycharm\superset\env\include\site\python3.6\python-geohash" failed with error code 1 in C:\Users\admin\AppData\Local\Temp\pip-install-_zyiqvlv\python-geohash\

看了一下,是少了 visualstudio 的組件,所以我又重新安裝了一下 visualstudio 2015 的版本。
當將 vs2015 裝上去之后,又重新試了一下。 發現還是報錯,這次的錯是這個:

1
2
error: [WinError 3] 系統找不到指定的路徑。: 'C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v8.1\\lib'
Failed building wheel for python-geohash

看樣子好像是少了一條  Python-geohash 庫。 那我直接去這個地方裝:  https://www.lfd.uci.edu/~gohlke/pythonlibs/#python-geohash
這邊還有一個細節,就是要安裝對應版本Python的包,比如我的是 3.6的,那么就要對應下載這個: python_geohash-0.8.5-cp36-cp36m-win32.whl
1
如果下載的版本不匹配的話,就會報這個錯誤: xxxx is not a supported wheel on this platform.
1
2
3
4
(env) D:\pycharm\superset>pip install C:\Users\admin\Downloads\python_geohash-0.8.5-cp36-cp36m-win32.whl
Processing c:\users\admin\downloads\python_geohash-0.8.5-cp36-cp36m-win32.whl
Installing collected packages: python-geohash
Successfully installed python-geohash-0.8.5

這樣就安裝好了,接下來再重新安裝一下:
1
2
3
4
5
(env) D:\pycharm\superset>pip install superset
Collecting superset
。。。
Installing collected packages: pyyaml, superset
Successfully installed pyyaml-3.13 superset-0.26.3

這時候就安裝成功了。

 

(上述錯誤我自己實踐過程中都沒有遇到,直接安裝成功!)

 

配置

接下來就配置了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 創建管理員帳號
fabmanager create-admin

# 初始化數據庫 (windows下,先進入到 Python安裝目錄(或者virtualEnv的虛擬目錄)下,lib\site-packages\superset\bin下)
Python superset db upgrade

# 加載例子(后續操作都需要在lib\site-packages\superset\bin下)(這一步驟可以不用進行)
Python superset load_examples

# 初始化角色和權限
Python superset init

# 啟動服務,端口 8088, 使用 -p 更改端口號。
Python superset run -p 8088
配置的時候,創建管理賬號:使用上述命令,有如下提示:
 

 可以看到,應該使用 flask fab 命令,即 flask fab create-admin

 

注意: 我在直接使用上述命令創建賬號的時候,報錯如下:could not locate a Flask application.  You did not provide the "FLASK_APP" environment variable....

 解決方法是設置"FLASK_APP" 環境,命令如下:set FLASK_APP=app.py

 

這時候就配置完了,接下來就打開瀏覽器查看登錄頁面了:  http://localhost:8088
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
(env) D:\pycharm\superset\env\Lib\site-packages\superset\bin>Python superset run -p 8088
?[34m-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
?[33mStarting Superset server in ?[31mDEBUG?[33m mode
?[34m-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
?[0m
2018-08-14 11:21:26,805:INFO:werkzeug: * Restarting with stat
?[34m-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
?[33mStarting Superset server in ?[31mDEBUG?[33m mode
?[34m-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
?[0m
2018-08-14 11:21:30,112:WARNING:werkzeug: * Debugger is active!
2018-08-14 11:21:30,116:INFO:werkzeug: * Debugger PIN: 243-075-165
2018-08-14 11:21:30,126:INFO:werkzeug: * Running on http://0.0.0.0:8088/ (Press CTRL+C to quit)
2018-08-14 11:21:30,958:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:30] "GET /superset/welcome HTTP/1.1" 200 -
2018-08-14 11:21:31,191:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:31] "GET /static/assets/images/favicon.png HTTP/1.1" 200 -
2018-08-14 11:21:31,241:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:31] "GET /superset/fave_dashboards/1/ HTTP/1.1" 200 -
2018-08-14 11:21:31,266:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:31] "GET /dashboardmodelviewasync/api/read?_oc_DashboardModelViewAsync=changed_on&_od_DashboardModelViewAsync=desc HTTP/1.1" 200 -
2018-08-14 11:21:31,296:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:31] "GET /superset/fave_slices/1/ HTTP/1.1" 200 -
2018-08-14 11:21:31,318:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:31] "GET /superset/recent_activity/1/?limit=50 HTTP/1.1" 200 -
2018-08-14 11:21:45,502:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:45] "GET /lang/zh HTTP/1.1" 302 -
2018-08-14 11:21:45,757:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:45] "GET /lang/zh HTTP/1.1" 302 -
2018-08-14 11:21:45,811:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:45] "GET / HTTP/1.1" 302 -
2018-08-14 11:21:45,818:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:45] "GET / HTTP/1.1" 302 -
2018-08-14 11:21:46,237:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:46] "GET /superset/welcome HTTP/1.1" 200 -
2018-08-14 11:21:46,600:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:46] "GET /superset/welcome HTTP/1.1" 200 -
2018-08-14 11:21:46,877:INFO:werkzeug:127.0.0.1 - - [14/Aug/2018 11:21:46] "GET /superset/welcome HTTP/1.1" 200 -

登錄就要輸入剛才設置的用戶名和密碼。
1
可以看到有四個是剛才加載的 example demo

 

創建一個sql並生成圖表

我們連得上mysql,所以之前先安裝mysqlclient: pip install mysqlclient

(我是在pycharm/superset路徑下安裝的mysqlclient,是可以的)

可以使用命令:pip list 檢測是否安裝成功:

 

 

Superset支持的數據庫:

 

 

連接到一個新的數據庫

 

測試連接,表示是可以連的

 

保存后,可以看到就有剛才添加的新數據庫。

 

 

增加一個新表

  • 點擊:數據源-數據表(Sources-Tables)
  • 選擇數據庫-填寫此數據庫存在的表名
  • 保存(Save)

1

寫sql

新建表的時候,點擊保存的時候,就可以直接到這個頁面寫sql了
1
可以直接查看 sql
1
最后保存到 dashboard,如果不存在就建一個
1
最后到dashboard 就可以查看了
1

在 charts 可以看到自己創建的圖表
1
如果要新建一個新的圖表的話,直接點擊右上角的添加即可。
Superset 提供了很多的圖表類型:
1

總結

windows下的環境是搭起來了,也試着用了一下,發現還是挺不錯的,后面要看下這個東西怎么用的更好。


參考資料:
Superset在windows下的安裝配置及基礎教程
Superset在windows下的安裝配置

http://kebingzao.com/2018/08/14/superset-install/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM