CData ADO.NET Provider for RabbitMQ はじめに:インストールから接続まで
このガイドでは、CData API Driver for ADO.NET の使い方を詳しく解説します。プロバイダーのインストール、RabbitMQ のデータ への接続設定、そして .NET アプリケーションで ADO.NET パターンを使用した簡単なコマンドの実行方法を学べます。
デスクトップアプリ、Web アプリ、バックグラウンドサービスなど、どのような用途でも、このプロバイダーを使えば API の詳細を手動で管理することなく、ライブの RabbitMQ のデータ に安全かつ高パフォーマンスで接続できます。
インストールとライセンス認証
システム要件
- Windows: Windows 10/11 または Windows Server 2016 以降
- .NET バージョン: .NET Framework 4.0 以降、.NET 6 以降、.NET Standard アセンブリ
- IDE: Visual Studio 2017 以降
ADO.NET Provider のインストール
Windows でのインストール
- CData アカウントまたは評価版ダウンロードページから ADO.NET Provider インストーラーをダウンロードします。
- インストーラーを実行し、ウィザードに従ってインストールを完了します。
- インストーラーがプロバイダーを登録し、すべてのアセンブリを適切な CData インストールフォルダに配置します。
-
インストール中にライセンスキーの入力を求められます:
XXXX-XXXX-XXXX-XXXX-XXXX- Note: 試用版を使用する場合は、代わりにTrial Key を選択してください。
ライセンスの認証
ライセンスの動作は、.NET Framework と .NET Standard のどちらを使用しているかによって異なります。 以下の手順で、お使いの環境でプロバイダーを認証してください。
.NET Framework(Windows)
Windows で .NET Framework を使用する場合、追加の操作は必要ありません。インストーラーまたは NuGet パッケージが開発ライセンスを自動的にインストールします。
.NET Standard(Windows/Mac/Linux)
.NET Core、Mono、Xamarin などの .NET Standard プラットフォームでは、プロバイダーを使用する前に手動でライセンスをインストールする必要があります。
Install-License ツールの使用
ツールキットには、試用版または正規ライセンスを適用するための install-license ユーティリティが
lib/netstandard2.0フォルダに含まれています。
試用版ライセンスをインストールする場合:
dotnet ./install-license.dll
正規版ライセンスを認証する場合:
dotnet ./install-license.dll
ツールを実行すると、開発マシンがライセンス認証され、.NET アプリケーションでプロバイダーを使用できるようになります。
ランタイムライセンス
アプリケーションをデプロイする際は、接続文字列でランタイムキー(RTK)を指定して再配布を有効にします。
| プロパティ | 説明 |
|---|---|
| RTK | デプロイされた ADO.NET アプリケーション用のランタイムキーです。 |
ライセンスに関するよくある質問
ライセンスは複数のマシンで使用できますか?
はい、サブスクリプションプランによります。不明な場合は、注文確認メールを確認するか、[email protected] までお問い合わせください。
ライセンスキーを紛失しました。どうすれば取得できますか?
注文番号を添えて [email protected] までメールでお問い合わせください。
ライセンスを別のマシンに移行できますか?
ライセンス移行リクエストを送信してください:
https://jp.cdata.com/contact/
承認されると、プロダクトキーにアクティベーションが追加され、以前のインストールは無効になります。
ライセンスサポートの詳細については、portal.cdata.com にアクセスするか、[email protected] までお問い合わせください。
接続設定
インストールが完了したら、次のステップとして RabbitMQ への接続を設定します。接続は、.NET アプリケーションのコードまたは構成ファイルで ADO.NET 接続文字列を使用して作成します。
接続マネージャーの作成
- Visual Studio を開きます。
- 表示メニューからサーバー エクスプローラーを選択します。
-
左サイドバーからデータベースへの接続をクリックします。
- 接続の追加ダイアログで、変更をクリックします。
-
CData RabbitMQ のデータ source を選択し、OK をクリックします。
接続プロパティの設定
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 へのアクセスを有効にするには、以下のステップで進めます:
- サーバーで RabbitMQ Management プラグインが有効になっていることを確認します(rabbitmq-plugins enable rabbitmq_management)。
- 既存の管理ユーザーを使用するか、適切な管理タグ(management、policymaker、monitoring、または administrator)を持つユーザーを作成します。
- 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 - 仮想ホスト内の特定のキューのバインディング
接続テスト
- 接続テストをクリックします。
- 接続に成功すると、Visual Studio 内でデータを確認できます。
よくある接続の問題
認証エラー
解決策: RabbitMQ の OAuth 設定、クライアント ID、シークレット、またはトークンの権限を確認してください。サポートが必要な場合は [email protected] までお問い合わせください。
サーバーに接続できない
解決策: ファイアウォール、プロキシ、VPN の設定を確認してください。必要なポート情報については [email protected] までお問い合わせください。
テーブルが見つからない
解決策: RabbitMQ をクエリする際に、正しいスキーマまたはデータベースを選択しているか確認してください。
次のステップ
ADO.NET Provider のインストール、ライセンス認証、接続設定が完了しました。以下のシナリオを参考に、ADO.NET ツールをさらに活用してみてください:
| ADO.NET Providers | 記事タイトル |
|---|---|
| LINQPad | LINQPad でRabbitMQ のデータを操作する方法 |
| Microsoft SSAS | SSAS でRabbitMQ のデータに連携するOLAP Cube を作成 |
| SSRS Server | SSRS レポートサーバーにADO.NET Provider を配置してRabbitMQ 連携 |
| TIBCO Spotfire | ADO.NET 経由でTIBCO Spotfire でRabbitMQ のデータに連携してをビジュアライズ |
| .NET Charts | Visual Studio でチャートコントロールと RabbitMQ をデータバインド |
| Blazor | Blazor でRabbitMQ のデータにリアルタイムで連携するアプリを構築 |
| DevExpress | RabbitMQ のデータをDevExpress Data Grid にデータバインドする。 |
| EF - Code First | Entity Framework 6 からRabbitMQ のデータに連携 |
| EF - LINQ | LINQ を使ってRabbitMQ のデータに連携する方法 |
| EF - MVC | 【徹底解説】RabbitMQ とのデータ連携ができるMVC アプリケーションの作り方 |
| Flexsche | 生産スケジューラFLEXSCHE へRabbitMQ からデータを取り込む |
| Infragistics DataGrid | Infragistics XamDataGrid を使用してRabbitMQ のダイナミックグリッドを作成 |
| OD Server | WCF アプリケーションで RabbitMQ データのOData サービスを公開 |
| Xamarin DataGrid | Infragistics WPF XamDataGrid と RabbitMQ をデータバインド |
| ADO.NET Setup | CData ADO.NET Provider for RabbitMQ はじめに:インストールから接続まで |
| SSIS Task | RabbitMQ をSSIS 経由でSQL サーバーにバックアップする |
サポート
ご不明な点がございましたら、お気軽にお問い合わせください:
- テクニカルサポート: [email protected]
- コミュニティフォーラム: CData Community Site
- ヘルプドキュメント: ローカルにインストールされているほか、オンラインでも参照可能です
よくある質問
インストールとライセンス
-
ADO.NET Provider のインストールには管理者権限が必要ですか?
はい、Visual Studio 全体で使用するコンポーネントをインストールするには管理者権限が必要です。 -
Azure Data Factory にデプロイする際に RTK は必要ですか?
はい。アプリケーションの接続文字列で RTK プロパティを設定してから公開してください。
接続
-
複数の RabbitMQ アカウントを使用できますか?
アカウントごとに個別の接続文字列を作成してください。 -
プロキシ経由で接続できますか?
はい。接続文字列でプロキシ設定を構成できます。 -
接続をテストするにはどうすればよいですか?
接続マネージャー UI で接続テストをクリックしてください。
パフォーマンスとトラブルシューティング
-
クエリのパフォーマンスを改善するにはどうすればよいですか?
フィルターの適用、行数の制限、サーバー側のページングプロパティの活用をお試しください。 -
ログを有効にするにはどうすればよいですか?
接続マネージャーに以下を追加してください:- Logfile: /path/to/logfile.log
- Verbosity: 3
トラブルシューティングの際は、[email protected] にご連絡の上、ログファイルを安全にアップロードしてください。
この FAQ で解決しない場合は、[email protected] までお問い合わせください。