RapidMiner(ラピッドマイナー)はデータ可視化、データ加工、モデル作成、評価、運用まで一括サポートする機械学習プラットフォームです。KSKアナリティクスはRapidMinerの正規販売代理店です。

Tableauコネクタ

このドキュメントは、Tableauコネクタ(TabGo) のセットアップドキュメントになります

ユーザーガイドについては、Tableauダッシュボードをご覧ください。

Tableau Analytics Extension APIを使用することで、TableauのダッシュボードにRapidMiner Goのモデルや、RapidMinerのwebサービスを統合することが可能になります。同じAPIが、Python統合用にTableauが独自に開発したTabPyでも使用されています。

以降では、RapidMinerでのAPI実装をTabGoと呼びます。TabGoは、RapidMiner AI Hubのオプションモジュールで、TableauとRapidMiner間の変換レイヤーとして機能します。TabGo自体は、予測ロジックを実行したり、分析を実行することはありません。

以下のセットアップドキュメントは、2部構成になっています。

  1. RapidMiner AI Hubへのコネクタのインストール
  2. TableauをRapidMiner AI Hubに接続

デフォルトでは、TabGoはRapidMiner AI Hubのdocker-composeテンプレートに含まれていないことに注意してください。TabGoがすでにインストールされている (且つテストされている) 場合は、ステップ2に進んでください。

RapidMiner AI Hubへのコネクタのインストール

以下の手順は、RapidMiner AI Hubのインストールにdocker-composeを用いた場合を想定しています。RapidMiner AI Hubが、HTTPSHTTPのどちらを使用するよう構成されているかによって、設定が若干異なります。


ですが、環境変数の記述は同じです。どちらでも、以下の内容を.envファイルに記述する必要があります。


# ############################################
#
# TabGo
#
# ############################################

# Used for both TabGo and the TabGo proxy.
TABGO_VERSION=9.9

# Proxy specific settings.
TABGO_PROXY_PORT=4443
TABGO_BACKEND=http://rm-tabgo-svc

# Settings for the TabGo service.
TABGO_MAX_MEMORY=384m
TABGO_PORT=8090
# Rate limit for small requests (e.g., scoring a single data row). The default
# values limit the rate to 10 requests per 5 seconds.
TABGO_SMALL_REQUEST_LIMIT=10
TABGO_SMALL_REQUEST_INTERVAL=5
# Change the log level to DEBUG to log HTTP traffic routed through TabGo.
TABGO_LOG_LEVEL=INFO
# Additional Java options should only be used for debugging.
TABGO_JAVA_OPTIONS=

調整が必要な項目が2つあります。

  • TabGoを使用して、数万行をもつテーブルのような大規模なデータセットを処理する場合や、多くのユーザーが並行して操作を行うことが予想される場合は、TABGO_MAX_MEMORYの値を増やすことを検討してください。
  • 多数のTabGoユーザーが並行して使用することが予想される場合、TABGO_SMALL_REQUEST_LIMITの数値を増やすことを検討してください。この制限が存在する理由として、もし制限がなければ、誤って構成されたダッシュボードが多数の小さなリクエストを送信し、ソフトウェアが応答しなくなるほどTableauの動作が遅くなってしまうかもしれません。問題を引き起こす動作の多くは、テーブルの計算が一回のバッチ処理ではなく、1行ごとに計算されることによるものです。詳細については、table calculationsのCompute Usingオプションをご覧ください。

注意点として、TABGO_LOG_LEVELはトラブルシューティングのために一時的に変更することを想定しています。DEBUGに変更すると、TabGoのパフォーマンスに影響を与え、機密情報が洩れる可能性があります。

HTTPS設定

RapidMiner AI HubでHTTPS接続を使用している場合は、TabGoは既存のその情報を取得し、Tableauとの通信を保護します。以下に示す2つのサービスをdocker-compose.ymlファイルに追記することで、他のRapidMiner AI Hubコンポーネントと同じ証明書を使用するようにTabGoが構成されます。


  rm-tabgo-svc:
    image: ${REGISTRY}rapidminer-tabgo:${TABGO_VERSION}
    restart: always
    hostname: rm-tabgo-svc
    environment:
      - TABGO_MAX_MEMORY=${TABGO_MAX_MEMORY}
      - TABGO_RMS_HOSTNAME=${RAPIDMINER_SERVER_URL}
      - TABGO_GO_HOSTNAME=${PUBLIC_URL}
      - TABGO_SMALL_REQUEST_LIMIT=${TABGO_SMALL_REQUEST_LIMIT}
      - TABGO_SMALL_REQUEST_INTERVAL=${TABGO_SMALL_REQUEST_INTERVAL}
      - TABGO_LOG_LEVEL=${TABGO_LOG_LEVEL}
      - _JAVA_OPTIONS=${TABGO_JAVA_OPTIONS}
    networks:
      rm-platform-int-net:
        aliases:
         - rm-tabgo-svc

  rm-tabgo-proxy-svc:
    image: ${REGISTRY}rapidminer-tabgo-proxy:${TABGO_VERSION}
    hostname: rm-tabgo-proxy-svc
    restart: always
    environment:
      - HTTPS_CRT_PATH=${HTTPS_CRT_PATH}
      - HTTPS_KEY_PATH=${HTTPS_KEY_PATH}
      - TABGO_BACKEND=${TABGO_BACKEND}
      - TABGO_PORT=${TABGO_PORT}
    ports:
      - ${TABGO_PROXY_PORT}:443
    depends_on:
      - rm-proxy-svc
    volumes:
      - ./ssl:/etc/nginx/ssl
    networks:
      rm-platform-int-net:
        aliases:
         - rm-tabgo-proxy-svc

新規にサービスを起動すると、TabGoは.envファイルで指定したTABGO_PROXY_PORTのポートで通信を行います。

HTTP設定

RapidMiner AI HubでHTTP接続を使用している場合は、以下のサービスをdocker-compose.ymlファイルに追記することで、TabGoが有効になります。


  rm-tabgo-svc:
    image: ${REGISTRY}rapidminer-tabgo:${TABGO_VERSION}
    restart: always
    hostname: rm-tabgo-svc
    ports:
        ${TABGO_PORT}:${TABGO_PORT}
    environment:
      - TABGO_MAX_MEMORY=${TABGO_MAX_MEMORY}
      - TABGO_RMS_HOSTNAME=${RAPIDMINER_SERVER_URL}
      - TABGO_GO_HOSTNAME=${PUBLIC_URL}
      - TABGO_SMALL_REQUEST_LIMIT=${TABGO_SMALL_REQUEST_LIMIT}
      - TABGO_SMALL_REQUEST_INTERVAL=${TABGO_SMALL_REQUEST_INTERVAL}
      - TABGO_LOG_LEVEL=${TABGO_LOG_LEVEL}
      - _JAVA_OPTIONS=${TABGO_JAVA_OPTIONS}
    networks:
      rm-platform-int-net:
        aliases:
         - rm-tabgo-svc

新規にサービスを起動すると、TabGoは.envファイルで指定したTABGO_PORTのポートで通信を行います。

デプロイのテスト

TabGoはどのwebブラウザからも呼び出せる単純な/infoエンドポイントを提供します。以下のテーブルの1列目にRapidMiner AI Hubのデプロイされたロケーション、2列目に/infoエンドポイントを示します。

RapidMiner AI Hub /infoエンドポイント
HTTPS https://aihub.company.test/ https://aihub.company.test:4443/info
HTTP http://aihub.company.test/ http://aihub.company.test:8090/info

どちらの場合も、エンドポイントの応答メッセージは以下の形式になります。


{
    "name": "TabGo",
    "description": "Tableau analytics connector to RapidMiner Go",
    "creation_time": 1602592657,
    "server_version": "9.9.0",
    "versions": {
        "v1": {
            "features": {}
        }
    }
}

TableauをRapidMiner AI Hubに接続

TabGoは、Tableau DesktopTableau Serverで使用できます。必要なものは、TabGoが到達可能なエンドポイントのみです。

Tableau Desktop

Tableau Desktop内で、ヘルプ > 設定とパフォーマンス > 分析拡張機能の接続の管理 でTabGoへの分析拡張機能の接続を設定します。

  • Server – RapidMiner AI Hubのホスト名を使用
  • Port – TabGoから提供されるポートを使用(デフォルトではHTTPSの場合は4443、HTTPの場合は8090)
  • Require SSL – HTTPSを使用している場合はこのボックスにチェックを入れます

テスト接続をクリックし、Tableau DesktopがTabGoへ接続できるかを確認します。

Tableau Server

Tableau Server上で、分析接続を有効にしたいサイトへの管理者としてログインします。

  1. 設定を開き、拡張機能タブに移動します。
  2. 分析拡張機能で、Enable analytics extension for site(サイトの分析拡張機能を有効にする)を選択します。
  3. 上記のTableau Desktopで説明したように、RapidMiner AI Hubの接続の詳細を入力します。

Tableau Serverの設定画面内から接続をテストすることはできません。設定を検証するには、TabGoを使用してTableauダッシュボードを作成する必要があります。

分析拡張機能の接続を作成すると、次のように設定に表示されます。

API認証に失敗しました メールまたはパスワードが正しくありません メールアドレスは必須です パスワードは必須です
キャンセル