Apache Superset を使用して ClickHouse データを視覚化する 2 つの方法

Apache Superset を使用して ClickHouse データを視覚化する 2 つの方法

Apache Superset は、データを表示および探索する方法を提供する強力な BI ツールです。 ClickHouse ユーザーの間でも人気が高まっています。

Superset をインストールする 2 つの方法について説明し、Superset から最初の ClickHouse データベースに接続する方法を示します。コード例は、Ubuntu 18.04、Superset 1.1.0、clickhouse-sqlalchemy 0.1.6 に基づいています。

方法1: Python仮想環境

最初の方法では、Superset をホストに直接インストールします。まず、Python 仮想環境を作成します。以下はよく使われるコマンドです。

python3 -m venv クリックハウス-sqlalchemy
.clickhouse-sqlalchemy/bin/activate を実行します
pip インストール --upgrade pi

Supersetをインストールして起動する

依存パッケージをインストールする

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev

ClickHouse へのスーパーセット接続を処理するためのコマンド。環境に応じて若干の調整が必要になる場合があります。

FLASK_APP=スーパーセットをエクスポートする
pip で apache-superset をインストールします
スーパーセット DB アップグレード
スーパーセット fab 作成管理者
スーパーセット load_examples
スーパーセット初期化

clickhouse-sqlalchemy ドライバーをインストールする

pip インストール clickhouse-sqlalchemy

clickhouse-driver のバージョンは 0.2.0 以上である必要があります。

pip フリーズ | grep クリックハウス
クリックハウスドライバー==0.2.0
クリックハウス-sqlalchemy==0.1.6

Supersetを起動してログインする

スーパーセットを始める時間です。次のコマンドを実行します。

スーパーセット実行 -p 8088 --with-threads --reload --debugger

localhost:8088 を参照します

以下のようなログイン画面が表示されます。 Superset のインストール時に定義した管理者のログイン名とパスワードを入力します (例: admin/secret)。

方法2: Docker Composeを使用してSupersetを実行する

Python のバージョン、仮想環境、pip について心配したくない場合。 docker を使用できます。

まず、docker と docker-compose をインストールします。

インストールが完了しました。バージョンを確認してください。

$ docker --version
Docker バージョン 19.03.4、ビルド 9013bf583a
$ docker-compose --version
docker-compose バージョン 1.29.1、ビルド c34c88b2

docker-compose を使用してスーパーセットをインストールする

gitクローン https://github.com/apache/superset
CD スーパーセット
./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 をアップします

操作が成功すると、ブラウザはlocalhost:8088にアクセスします。

デフォルトのログイン/パスワードは admin/admin です。

ClickHouseへの接続

選択したインストール方法に関係なく、最初の ClickHouse データベースに接続できるようになりました。

ログインすると、最近の作業と現在のダッシュボードが表示された画面が表示されます。右上隅の「データ」タブを選択し、「データベース」を選択します。現在のデータベース接続を含むページが表示されます。新しいデータベースを追加するには、「+ データベース」ボタンを押します。

次の値を入力します。

データベース名: clickhouse-public
SQLALCHEMY URL: clickhouse+native://demo:[email protected]/default?secure=true

Altinity.Cloud は公開データセット サイトです。

「接続テスト」ボタンを押します。成功したらリンクを保存します。

接続プロセス

この接続では、ClickHouse や他の多くのデータベースに接続するための共通 A​​PI である SQLAlchemy が使用されます。

SQLAlchemy 接続では、複数のドライバーをサポートする特殊な URL 形式が使用されます。 ClickHouse に接続するには、前に示したものと同様の URL を指定する必要があります。

クリックハウス+ネイティブ://デモ:[email protected]/default?secure=true

ClickHouse に接続するための主なプロトコルは、ネイティブ TCP と HTTP の 2 つです。

生の TCP を使用することをお勧めします。

clickhouse+native://<ユーザー>:<パスワード>@<ホスト>:<ポート>/<データベース>[?オプション…]

スーパーセットを構成する

ClickHouse への接続に成功しました。次に、Superset を使用してダッシュボードを構築します。

まず、データセットを作成しましょう。接続として clickhouse-public を選択し、スキーマのデフォルトとテーブル ontime を選択します。

データセットが用意できたら、最初のグラフを作成するのは簡単です。データセット ページでデータセット名をクリックするだけです。 Superset は、以下に示すように、チャートを定義する画面に切り替わります。

時系列チャートの作成

ダッシュボードにグラフを公開します。

作成したチャートを追加するには、「ダッシュボード」ボタンを選択します。

上記は、ClickHouse データの Apache Superset 視覚化のプロセス全体です。

Apache Superset を使用して ClickHouse データを視覚化する 2 つの方法について説明したこの記事はこれで終わりです。ClickHouse の Apache Superset 視覚化の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • SpringbootはClickhouseリアルタイムビッグデータ分析エンジンを使用する(使用方法)
  • Clickhouse Docker クラスターの展開と構成を例を使って説明します
  • MybatisをClickHouseに接続する方法
  • SpringBoot2 統合 ClickHouse データベースのケース分析
  • ビッグデータ分野におけるデータ分析データベースClickHouseの応用実践

<<:  JavaScript関数導入の詳しい説明

>>:  フレームウィンドウ間の関連付けとハイパーリンクのターゲット属性の使用を実装する方法

推薦する

複数のdiv内のテーブルのtdwidth設定は同じで、揃えることができません

最近、複数のdivにあるテーブルのTDを同じ幅に調整しても、揃えることができず、幅にパターンがないこ...

nginx プロキシ ポート 80 からポート 443 への実装

nginx.conf設定ファイルは次のとおりです。 ユーザー nginx; ワーカープロセス 1; ...

CentOS7 ファイアウォールとポート関連コマンドの紹介

目次1. ファイアウォールの現在の状態を確認する2. ファイアウォールサービスを開始する3. ファイ...

HTMLの空リンクの役割についての簡単な説明

空のリンク:つまり、ターゲット エンドポイントとのリンクはありません。フォーマット <a hr...

MySQL での重複キー更新時の replace into と insert into の使用法と相違点の分析

この記事では、MySQL での重複キー更新時の replace into と insert into...

HTML テーブルの境界線を設定する際のヒント

HTML を初めて使用する多くの人にとって、テーブル <table> は最もよく使用され...

Linux tac コマンドの実装例

1. コマンドの紹介tac (cat の逆順) コマンドは、ファイルの内容を行単位で逆順に出力します...

ストリーマーボタンの効果を実現するCSS3アニメーション

CSS3 を学習する過程で、CSS3 属性を使用すると多くのクールな効果を簡単に実現できることが分か...

HTML から PDF への変換事例の概要 (複数の画像を推奨)

仕事の都合上、最近 HTML を PDF に変換する機能について調べることに時間を費やしました。 H...

Vueユーザーが長時間操作せずにログインページからログアウトするように実装する2つの方法

目次問題の説明フロントエンド制御(方法1)アイデアコードバックエンド制御(方法2)アイデアコード要約...

HTMLテキストオーバーフローの2つの一般的な解決策は省略記号を表示することです

方法1: CSSオーバーフロー省略を使用して解決する解決策は次のとおりです。 CSSコード: ディス...

Websocket に基づくシンプルなチャットルームダイアログの実装

この記事では、WebSocketを使用して簡単なチャットルームの会話を実装するための具体的なコードを...

Linux コマンドを使用してオーディオ形式を変換および結合する方法

FFmpeg flacをインストールする eric@ray:~$ sudo apt install ...

CSSスタイルシートを効率的に使用するためのヒント: スタイルシートの力を最大限に活用する

インターネット経済の継続的な発展に伴い、インターネット上の専門ウェブサイト、公共サービスウェブサイト...