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

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

推薦する

Reactでのイベントバインディングの実装は3つの方法を指しています

1. 矢印関数1. 矢印関数自体はこれをバインドしないという事実を利用します。 2. render(...

MySQLトランザクションが効率に与える影響の分析と概要

1. データベース トランザクションによりデータベースのパフォーマンスが低下します。データの一貫性と...

React NativeとiOSの相互作用の詳細な説明

目次前提条件RNはiOSに価値を渡す方法1: ネイティブに値を通常通り渡す方法2: コールバック関数...

Vueアイコンセレクターのサンプルコード

出典: http://www.ruoyi.vip/ 'vue' から Vue をイン...

MySQL MHA のセットアップと切り替えに関するいくつかのエラー ログの概要

1: masterha_check_repl レプリカ セット エラー レプリケートが構成ファイルで...

CentOS で MySQL 5.1 を 5.5.36 にアップグレードする

CentOS 6.4 環境で MySQL 5.1 を 5.5.36 にアップグレードする手順を記録し...

Centos8.3、dockerデプロイメントspringbootプロジェクトの実際のケース分析

導入現在、k8s は非常に人気があり、それについて学ぶために本を購入しました。しかし、k8s では数...

nginx-naxsi ホワイトリストルールの詳細な説明

ホワイトリストルールの構文:基本ルール wl:ID [否定] [mz:[$URL:target_ur...

Vue のルータールーティングの 2 つのモード (ハッシュと履歴) の詳細な説明

ハッシュモード(デフォルト)動作原理:ウェブページのハッシュ値の変化を監視する—> onhas...

Nginx rtmp モジュールのコンパイル ARM バージョンの問題

目次1. 準備: 2. ソースコードのコンパイル1. 設定する2. コンパイルエラー3. ターゲット...

Bash で山括弧を使用するその他の方法

序文この記事では、山括弧のその他の用途をさらに詳しく見ていきます。前回の記事では、山括弧 (<...

Elementはスクリプトを使用して新しいコンポーネントを自動的に構築します

目次背景element-ui の自動構築はどのように機能しますか?メイクファイル新しい.jsファイル...

HTML でフォーム入力やその他のテキスト ボックスを読み取り専用にして編集不可にする方法

場合によっては、フォーム内のテキスト ボックスを読み取り専用にして、ユーザーがその中の情報を変更でき...

Bootstrap Webページレイアウトグリッドの実装

目次1. Bootstrapグリッドシステムの仕組み1.1 12グリッドシステム1.2 Bootst...