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関数導入の詳しい説明

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

推薦する

非常に優れた CSS スキル 10 選のコレクションと共有

ここでは、CSS テクニックを巧みに使用することで、HTML を変更せずにブログやテンプレートの外観...

CSS3で実装された天気アイコンのアニメーション効果

成果を達成する 実装コードhtml <div class="wrapper"...

MySQL データベースを最適化する 8 つの方法の詳細な説明 (必読の定番)

導入:インターネット上にはデータベースの最適化に関する情報や方法が数多くありますが、その多くは品質に...

MacでDockerがホストマシンにpingできない問題を解決する

解決Docker for Macに付属するLinux仮想マシン(軽量ですが、ソケットファイルを使用し...

Docker イメージのエクスポート、インポート、コピーの例の分析

最初の解決策は、イメージを公開イメージリポジトリにプッシュし、それをプルダウンすることです。 2 番...

Linuxでバージョン情報を表示する方法

Linux でバージョン情報を表示する方法。ビット数、バージョン情報、CPU コア情報、CPU 固有...

Linux で PHP curl 拡張機能をインストールする方法の詳細な説明

この記事では、Linux で PHP curl 拡張機能をインストールする方法について説明します。ご...

間違った MySQL コマンドをキャンセルしたい場合はどうすればいいですか?

間違った mysql コマンドを入力したのでキャンセルしたいです。どうすればいいですか? ctrl ...

LDAP ユーザー認証を使用するように Linux を構成する方法

私は CentOS に実装された LDAP ユーザー管理を使用しています。これはインターネット上のほ...

CSS マージンの重複とその防止方法

2 つ以上のブロックレベル ボックスの垂直に隣接するエッジが重なり合っています。結果として得られる境...

VueのkeepAliveコンポーネントの機能と使い方の詳細な説明

序文面接中、多くの面接官は「keep-alive が何をするのか知っていますか?」と質問する際に V...

共通要素のデフォルトのマージンとパディング値に関する議論

今日は、さまざまなブラウザでのデフォルト要素のマージン値が何であるかという問題について説明しました。...

シンプルなカルーセル効果を実現するネイティブ js

この記事では、シンプルなカルーセル効果を実現するためのjsの具体的なコードを参考までに紹介します。具...

ElementUI のネストされたテーブルに基づいて複数選択を実装するためのサンプル コード

序文:私は友人のプロジェクトのバグを修正するのを手伝ったのでこれを書きました。この関数を書くのは初め...

win2008 で mysql8.0.11 を mysql8.0.17 にアップグレードする詳細な手順

アップグレードの背景: MySQLの下位バージョンの脆弱性を解決するために、MySQLはMySQL ...