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部構成になっています。
デフォルトでは、TabGoはRapidMiner AI Hubのdocker-composeテンプレートに含まれていないことに注意してください。TabGoがすでにインストールされている (且つテストされている) 場合は、ステップ2に進んでください。
RapidMiner AI Hubへのコネクタのインストール
以下の手順は、RapidMiner AI Hubのインストールにdocker-composeを用いた場合を想定しています。RapidMiner AI Hubが、HTTPSかHTTPのどちらを使用するよう構成されているかによって、設定が若干異なります。
ですが、環境変数の記述は同じです。どちらでも、以下の内容を.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 DesktopとTableau 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上で、分析接続を有効にしたいサイトへの管理者としてログインします。
- 設定を開き、拡張機能タブに移動します。
- 分析拡張機能で、Enable analytics extension for site(サイトの分析拡張機能を有効にする)を選択します。
- 上記のTableau Desktopで説明したように、RapidMiner AI Hubの接続の詳細を入力します。
Tableau Serverの設定画面内から接続をテストすることはできません。設定を検証するには、TabGoを使用してTableauダッシュボードを作成する必要があります。
分析拡張機能の接続を作成すると、次のように設定に表示されます。