由於 Metabase 在技術需求上有不夠彈性的原因,
因此就轉往聽聞滿多人使用的 Superset,
加上又是 Apache 的孵化專案,應該會還不錯。
但安裝過程上就不像 Metabase 那麼順利,
就算按照官方文件步驟,還是會碰到不少狀況,
但基本上靠著 Google 大神也都能解決,也記錄一下安裝過程:
以 Linode 系統為 Ubuntu 16.04 為環境設定
sudo apt-get update
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
sudo apt-get install build-essential libssl-dev libffi-dev python3.5-dev python-pip libsasl2-dev libldap2-dev
sudo apt-get install libmysqlclient-dev
pip install virtualenv
virtualenv venv
(venv) root@localhost:~#
之類的代表是在 virtualenv 之中. ./venv/bin/activate
pip install "markdown<3.0.0" superset
基本上到這部就算是安裝成功,但這次還是遇到了些問題,
多安裝 python3 的 flask-appbuilder 才解決
sudo apt-get install python3-pip
pip3 install flask-appbuilder
fabmanager create-admin --app superset
superset db upgrade
ValueError: Could not reserve memory block
superset load_examples
superset init
superset runserver
到此基本上就能成功以 http://YOUR_IP:8088/ , 進入 Superset
如果遇到 mysql 連線相關問題,可多安裝:
sudo apt-get install python-mysqldb
pip install mysqlclient
Datasource 的部分有 csv、Druid,
而 Database 是以 SQLAlchemy URI
來串接,
大部分 SQL 相關的 source 都能支援:
Postgresql、MySQL、Oracle、Microsoft SQL Server、SQLite;
但也代表著其他類型的 Datasource像是 GA、MongoDB 就無法了。
而在 Superset 要撈出資料可在 SQL Lab,直接利用 SQL 語法處理,再進行視覺化
*1
可以發現 Superset 有許多技術人員喜歡的功能:
點下「 Visualization Type 」可以看到 Superset 最為人所知~
有超多的視覺化圖表可使用(甚至還有 3D 的)*2
至於 Dashboard 部分,同樣也是可以把各種圖表排列組合成自己想要的樣式
這點也可看到 Superset 有非常彈性的設計,
除了平常的 Row, Column 排版,還有 Tab 的功能(Tab 同樣也能支援 Row, Column....)
*1
),*2
)卻又是全圖表。ps. 文章同步發表於 Medium