Power BI Desktop でリアルタイム RabbitMQ のデータ のレポートを作成

Cameron Leblanc
Cameron Leblanc
Senior Technology Evangelist
CData ODBC Driver for RabbitMQ を使って、Power BI Desktop でRabbitMQ のデータを可視化。

CData ODBC ドライバは、Microsoft Windows のODBC ネイティブサポートにより、Microsoft Power BI などのセルフサービス分析ツールとシームレスに連携できます。CData ODBC Driver for RabbitMQ を使えば、Power BI レポートをRabbitMQ のデータにリンクし、ダッシュボードでRabbitMQ のデータをモニタリングできます。スケジュール更新やオンデマンド更新を設定することで、分析結果に常にリアルタイムのRabbitMQ のデータを反映させることも可能です。この記事では、ODBC ドライバを使用して Microsoft Power BI Desktop でRabbitMQ のデータのリアルタイムビジュアライゼーションを作成し、Power BI にアップロードする方法をご紹介します。

CData ODBC ドライバは、ドライバーに組み込まれた最適化されたデータ処理により、Power BI でリアルタイムRabbitMQ のデータを操作するための優れたパフォーマンスを実現します。Power BI から RabbitMQ に複雑な SQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされている SQL 操作を RabbitMQ に直接プッシュし、組み込み SQL エンジンを利用してサポートされていない操作(主に SQL 関数や JOIN 操作)をクライアント側で処理します。組み込みの動的メタデータクエリ機能により、Power BI ネイティブのデータ型を使用してRabbitMQ のデータを可視化・分析できます。

RabbitMQ にODBC データソースとして接続

まだ設定していない場合は、ODBC DSN(データソース名)で接続プロパティを指定します。これはドライバーインストールの最後のステップです。Microsoft ODBC データソースアドミニストレーターを使用して、ODBC DSN を作成・設定できます。

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 - 仮想ホスト内の特定のキューのバインディング

データのビジュアライゼーションを作成

ODBC DSN を作成したら、以下の手順で Power BI Desktop から RabbitMQ ODBC DSN に接続します。

  1. Power BI Desktop を開き、データを取得 -> その他... をクリックして [データを取得] ウィンドウを開きます。
  2. [データを取得] ウィンドウで その他 -> ODBC を選択します。
  3. メニューから DSN を選択します。データをインポートするための SQL クエリがわかっている場合は、[詳細オプション] ノードを展開し、[SQL ステートメント]ボックスにクエリを入力できます。それ以外の場合は OK をクリックして続行します。
  4. 認証オプションとして デフォルトまたはカスタム を選択し、接続 をクリックします。
  5. [ナビゲーター] ダイアログでテーブルを選択します。
  6. データの変換 をクリックしてクエリを編集します。インポートしたテーブルがPower Query エディターに表示されます。Power Query エディターでは、RabbitMQ のデータ のローカルコピーを他のデータソースで充実させたり、RabbitMQ のカラムをピボットしたりできます。Power BI は、ドライバーが取得した RabbitMQ メタデータから各カラムのデータ型を検出します。

    Power BI は、クエリへの変更を [適用したステップ] セクションに記録し、リモートRabbitMQ のデータに対して実行される基になるデータ取得クエリを調整します。[閉じて適用] をクリックすると、Power BI がデータ取得クエリを実行します。

    または、読み込み をクリックしてデータを Power BI に取り込みます。

データのビジュアライゼーションを作成

データを Power BI に取り込んだら、[フィールド] ペインからキャンバスにフィールドをドラッグして、[レポート] ビューでデータビジュアライゼーションを作成できます。以下の手順で円グラフを作成してみましょう(Salesforce の例)。

  1. [ビジュアライゼーション] ペインで円グラフアイコンを選択します。
  2. [フィールド] ペインでディメンションを選択します。例: Name
  3. [フィールド] ペインでメジャーを選択します。例: Annual Revenue

チャートの省略記号(...)ボタンをクリックすることで、並べ替えオプションを変更できます。並べ替えカラムの選択や並べ替え順序の変更オプションが表示されます。

ハイライトとフィルタリングの両方を使用してデータにフォーカスできます。フィルタリングはフォーカス外のデータをビジュアライゼーションから削除し、ハイライトはフォーカス外のデータを薄暗く表示します。 フィールドをクリックしてハイライトできます。

[フィルター] ペインにフィールドをドラッグすることで、ページレベル、レポートレベル、または単一のビジュアライゼーションにフィルターを適用できます。フィールドの値でフィルタリングするには、[フィルター] ペインに表示される値のいずれかを選択します。

[最新の情報に更新]をクリックして、データの変更をレポートに同期します。

無料トライアル・詳細情報

RabbitMQ のデータを Microsoft Power BI や ODBC 接続をサポートするその他のアプリケーションから接続することに興味がある方は、CData ODBC Driver for RabbitMQ の 30日間無料トライアル をダウンロードしてお試しください。ご不明な点がございましたら、サポートチーム までお気軽にお問い合わせください。

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

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

RabbitMQ に接続