Apache Superset是一個(gè)強(qiáng)大的BI工具,它提供了查看和探索數(shù)據(jù)的方法。它在 ClickHouse 用戶中也越來(lái)越受歡迎。
我們將介紹安裝 Superset 的 2 種方法,然后展示如何從 Superset 連接到您的第一個(gè) ClickHouse 數(shù)據(jù)庫(kù)。代碼示例基于 Ubuntu 18.04、Superset 1.1.0 和 clickhouse-sqlalchemy 0.1.6。
方法一:Python虛擬環(huán)境
第一種方法直接在您的主機(jī)上安裝 Superset。我們將首先創(chuàng)建一個(gè) Python 虛擬環(huán)境。以下是常用命令。
python3 -m venv clickhouse-sqlalchemy
. clickhouse-sqlalchemy/bin/activate
pip install --upgrade pi
安裝并啟動(dòng) Superset
安裝依賴包
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
處理與 ClickHouse 的 Superset 連接的命令。可能需要根據(jù)您的環(huán)境稍微調(diào)整。
export FLASK_APP=superset
pip install apache-superset
superset db upgrade
superset fab create-admin
superset load_examples
superset init
安裝 clickhouse-sqlalchemy 驅(qū)動(dòng)程序
pip install clickhouse-sqlalchemy
clickhouse-driver 版本必須為 0.2.0 或更高版本。
pip freeze |grep clickhouse
clickhouse-driver==0.2.0
clickhouse-sqlalchemy==0.1.6
啟動(dòng) Superset 并登錄
是時(shí)候開始 Superset 了。運(yùn)行以下命令:
superset run -p 8088 --with-threads --reload --debugger
瀏覽器訪問(wèn) localhost:8088
您將看到如下所示的登錄屏幕。輸入您在 Superset 安裝期間定義的管理員登錄名和密碼(例如,admin/secret)。
方法 2:使用 Docker Compose 運(yùn)行 Superset
如果您不想糾結(jié)于 Python 版本、虛擬環(huán)境和 pip??梢允褂胐ocker。
首先安裝docker和docker-compose。
安裝完成查看版本。
$ docker --version
Docker version 19.03.4, build 9013bf583a
$ docker-compose --version
docker-compose version 1.29.1, build c34c88b2
使用docker-compose 安裝superset
git clone https://github.com/apache/superset
cd superset
touch ./docker/requirements-local.txt
echo "clickhouse-driver>=0.2.0" >> ./docker/requirements-local.txt
echo "clickhouse-sqlalchemy>=0.1.6" >> ./docker/requirements-local.txt
docker-compose -f docker-compose-non-dev.yml up
運(yùn)行成功后 瀏覽器訪問(wèn) localhost:8088
默認(rèn)登錄名/密碼是admin / admin。
連接到 ClickHouse
無(wú)論您選擇哪種安裝方法,您現(xiàn)在都可以連接到您的第一個(gè) ClickHouse 數(shù)據(jù)庫(kù)。
登錄后,您將看到一個(gè)屏幕,其中包含您最近的工作以及當(dāng)前的儀表板。選擇右上角的數(shù)據(jù)選項(xiàng)卡,然后選數(shù)據(jù)庫(kù)。將出現(xiàn)一個(gè)頁(yè)面,其中包含您當(dāng)前的數(shù)據(jù)庫(kù)連接。按+ 數(shù)據(jù)庫(kù)按鈕添加新數(shù)據(jù)庫(kù)。
輸入以下值:
數(shù)據(jù)庫(kù)名稱:clickhouse-public
SQLALCHEMY 網(wǎng)址:clickhouse+native://demo:demo@github.demo.trial.altinity.cloud /default?secure=true
Altinity.Cloud是一個(gè)公共的數(shù)據(jù)集站點(diǎn)。
按下測(cè)試連接按鈕。成功后保存鏈接。
連接過(guò)程
連接使用了 SQLAlchemy,這是一種用于連接 ClickHouse 以及許多其他數(shù)據(jù)庫(kù)的通用 API。
SQLAlchemy 連接使用支持多個(gè)驅(qū)動(dòng)程序的專用 URL 格式。要連接到 ClickHouse,您需要提供一個(gè)類似于我們之前顯示的 URL:
clickhouse+native://demo:demo@github.demo.trial.altinity.cloud/default?secure=true
連接ClickHouse 有兩個(gè)主要的協(xié)議,原生TCP和HTTP。
建議使用原生TCP。
clickhouse+native://<user>:<password>@<host>:<port>/<database>[?options…]
配置Superset
我們已經(jīng)成功連接了clickhouse,下面我們使用superset建立一個(gè)儀表盤。
首先,讓我們創(chuàng)建數(shù)據(jù)集。選擇 clickhouse-public 作為連接,然后選擇 schema default和 table ontime。
有了數(shù)據(jù)集后,創(chuàng)建第一個(gè)圖表就很簡(jiǎn)單了。只需單擊數(shù)據(jù)集頁(yè)面上的數(shù)據(jù)集名稱。Superset 將切換到一個(gè)屏幕來(lái)定義一個(gè)圖表,如下所示。
創(chuàng)建一個(gè)時(shí)間序列圖表
在儀表盤發(fā)布圖表。
選擇DASHBOARD 按鈕,將建立的圖表添加進(jìn)來(lái)。
以上就是Apache Superset可視化ClickHouse數(shù)據(jù)的全過(guò)程了。
到此這篇關(guān)于使用 Apache Superset 可視化 ClickHouse 數(shù)據(jù)的兩種方法的文章就介紹到這了,更多相關(guān)Apache Superset可視化ClickHouse 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!