RapidMiner からRabbitMQ のデータに連携

古川えりか
古川えりか
コンテンツスペシャリスト
RabbitMQ をRapidMiner Studio の標準コンポーネント及びデータソース構成ウィザードと統合します。



この記事では、CData JDBC Driver for API をRapidMiner のプロセスと簡単に統合する方法を示します。この記事では、CData JDBC Driver for API を使用してRabbitMQ をRapidMiner のプロセスに転送します。

RapidMiner のRabbitMQ にJDBC Data Source として接続する

以下のステップに従ってRabbitMQ へのJDBC 接続を確認できます。

  1. RabbitMQ 用の新しいデータベースドライバーを追加します。[Connections]->[Manage Database Drivers]とクリックします。
  2. 表示されるウィザードで[Add]ボタンをクリックし、接続に名前を入力します。
  3. JDBC URL のプレフィックスを入力します。
    jdbc:api:
    
  4. インストールディレクトリのlib サブフォルダにあるcdata.jdbc.api.jar ファイルにパスを入力して下さい。
  5. ドライバークラスを入力します。
    cdata.jdbc.api.APIDriver
    
    The JDBC driver configuration.(Salesforce is shown.)
  6. 新しいRabbitMQ 接続を作成します。[Connections]->[Manage Database Connections]とクリックします。
  7. 接続の名前を入力します。
  8. データベースシステムの場合は、以前構成したRabbitMQ ドライバーを選択します。
  9. Host ボックスで接続文字列を入力します。

    RabbitMQ Management HTTP API について

    RabbitMQ は、複数のメッセージングプロトコルをサポートするオープンソースのメッセージブローカーです。RabbitMQ Management HTTP API は、RabbitMQ サーバーの管理データと監視データに HTTP 経由でアクセスする手段を提供します。この API では、仮想ホスト、エクスチェンジ、キュー、バインディング、コネクション、チャネル、コンシューマー、ユーザー、権限、ポリシー、クラスター全体の統計情報を取得できます。

    HTTP API を利用するには、RabbitMQ サーバーで Management プラグインを有効化する必要があります。デフォルトでは、管理インターフェースはポート 15672 でリッスンします。

    Basic 認証の設定

    RabbitMQ Management HTTP API は HTTP Basic 認証を使用します。RabbitMQ 管理ユーザーのユーザー名とパスワードを指定する必要があります。

    管理 API へのアクセスを有効にするには、以下のステップで進めます:

    1. サーバーで RabbitMQ Management プラグインが有効になっていることを確認します(rabbitmq-plugins enable rabbitmq_management)。
    2. 既存の管理ユーザーを使用するか、適切な管理タグ(management、policymaker、monitoring、または administrator)を持つユーザーを作成します。
    3. RabbitMQ Management HTTP API の完全なベース URL を控えておきます(例:http://localhost:15672)。

    RabbitMQ サーバーを設定したら、以下の接続プロパティを設定して接続します:

    • AuthScheme:Basic に設定します。
    • URL:RabbitMQ Management HTTP API のベース URL に設定します(例:http://localhost:15672)。
    • User:RabbitMQ の管理ユーザー名に設定します(例:guest)。
    • Password:RabbitMQ の管理パスワードに設定します。

    接続文字列の例:

    Profile=C:\profiles\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
    

    利用可能なテーブル

    RabbitMQ プロファイルでは、以下のテーブルにアクセスできます:

    • Overview - クラスター全体の統計情報と RabbitMQ ノードに関する情報
    • Nodes - RabbitMQ クラスター内の個々のノードに関する情報
    • NodeMemory - 特定のクラスターノードの詳細なメモリ使用状況の内訳
    • Connections - ブローカーへのすべてのオープンな AMQP コネクションの一覧
    • Channels - すべてのコネクションにわたるオープンな AMQP チャネルの一覧
    • Consumers - すべてのキューに登録されたコンシューマーの一覧
    • Exchanges - すべての仮想ホストで宣言されたエクスチェンジの一覧
    • Queues - すべての仮想ホストで宣言されたキューの一覧
    • Bindings - エクスチェンジとキュー間のすべてのバインディングの一覧
    • VirtualHosts - ブローカーに設定された仮想ホストの一覧
    • VhostPermissions - 特定の仮想ホスト内のユーザー権限
    • Users - すべての RabbitMQ ユーザーの一覧
    • Permissions - すべての仮想ホストにわたる全ユーザーの権限レコード
    • TopicPermissions - 全ユーザーのトピックレベルの権限レコード
    • Policies - 仮想ホスト内のキューおよびエクスチェンジに適用されたポリシーの一覧
    • OperatorPolicies - 仮想ホスト内のキューに適用されたオペレーターポリシーの一覧
    • Parameters - 仮想ホストごとのコンポーネントパラメータ(例:federation、shovel)の一覧
    • GlobalParameters - すべての仮想ホストに適用されるグローバルパラメータの一覧
    • VhostLimits - 特定の仮想ホストに設定されたリソース制限
    • UserLimits - 特定のユーザーに設定されたリソース制限
    • FeatureFlags - フィーチャーフラグの一覧と、ノード上での有効/無効の状態
    • DeprecatedFeatures - 非推奨機能の一覧と、その使用状態
    • AuthAttempts - ノードの認証試行統計
    • ClusterName - RabbitMQ クラスターの名前
    • WhoAmI - 現在認証されている管理ユーザーに関する情報
    • ExchangeBindingsSource - 特定のエクスチェンジがソースとなっているバインディング
    • ExchangeBindingsDestination - 特定のエクスチェンジが宛先となっているバインディング
    • QueueBindings - 仮想ホスト内の特定のキューのバインディング

    ビルトイン接続文字列デザイナ

    JDBC URL の構成については、RabbitMQ JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

    java -jar cdata.jdbc.api.jar
    

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

    以下は一般的な接続文字列です。

    Profile=C:\profiles\\RabbitMQ.apip;AuthScheme=Basic;URL=http://localhost:15672;User=guest;Password=guest;
    
  10. 必要であればユーザー名とパスワードを入力します。 The connection to the JDBC data source.(Salesforce is shown.)

プロセス内の様々なRapidMiner オペレーターとのRabbitMQ 接続を使用できます。RabbitMQ を取得するには、[Operators]ビューから[Retrieve]をドラッグします。 A Retrieve operation to select data.(Salesforce is shown.) [Retrieve]オペレータを選択した状態で、[repository entry]の横にあるフォルダアイコンをクリックして[Parameters]ビューで取得するテーブルを定義できます。表示されるRepository ブラウザで接続ノードを展開し、目的のサンプルセットを選択できます。

The Repository Browser window you can use to select an example set.(Salesforce is shown.)

最後に、[Retrieve]プロセスから結果に出力をワイヤリングし、プロセスを実行してRabbitMQ を確認します。

The results of the Retrieve operation.(Salesforce is shown.)

はじめる準備はできましたか?

API Driver で RabbitMQ のライブデータに接続

RabbitMQ に接続