JDBC で RabbitMQ データソースから Informatica マッピングを作成

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
標準の JDBC 接続プロセスを使用して、Informatica で RabbitMQ データオブジェクトを作成します。JAR をコピーして接続するだけです。



Informatica は、データの転送と変換を行う強力でエレガントな手段を提供します。CData JDBC Driver for RabbitMQ を使用することで、業界で実績のある標準に基づいたドライバーにアクセスでき、Informatica の強力なデータ転送および操作機能とシームレスに統合できます。このチュートリアルでは、Informatica PowerCenter で RabbitMQ のデータ を転送および参照する方法を説明します。

ドライバーのデプロイ

ドライバーを Informatica PowerCenter サーバーにデプロイするには、インストールディレクトリの lib サブフォルダにある CData JAR ファイルと .lic ファイルを、次のフォルダにコピーします:Informatica インストールディレクトリ\services\shared\jars\thirdparty。

Developer ツールで RabbitMQ のデータ を使用するには、インストールディレクトリの lib サブフォルダにある CData JAR ファイルと .lic ファイルを、次のフォルダにコピーする必要があります:

  • Informatica インストールディレクトリ\client\externaljdbcjars
  • Informatica インストールディレクトリ\externaljdbcjars

JDBC 接続の作成

Informatica Developer から接続するには、次の手順に従います:

  1. Connection Explorer ペインで、ドメインを右クリックし、Create a Connection をクリックします。
  2. 表示される New Database Connection ウィザードで、接続の名前と ID を入力し、Type メニューで JDBC を選択します。
  3. JDBC Driver Class Name プロパティに、次のように入力します:
    cdata.jdbc.api.APIDriver
  4. Connection String プロパティに、RabbitMQ の接続プロパティを使用して JDBC URL を入力します。

    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
    

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

    一般的な接続文字列は次のとおりです:

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

RabbitMQ テーブルの参照

ドライバー JAR をクラスパスに追加し、JDBC 接続を作成したら、Informatica で RabbitMQ エンティティにアクセスできます。RabbitMQ に接続してテーブルを参照するには、次の手順に従います:

  1. リポジトリに接続します。
  2. Connection Explorer で、接続を右クリックし、Connect をクリックします。
  3. Show Default Schema Only オプションのチェックを外します。

これで、Data Viewer で RabbitMQ テーブルを参照できます。テーブルのノードを右クリックし、Open をクリックします。Data Viewer ビューで、Run をクリックします。

RabbitMQ データオブジェクトの作成

プロジェクトに RabbitMQ テーブルを追加するには、次の手順に従います:

  1. RabbitMQ でテーブルを選択し、テーブルを右クリックして Add to Project をクリックします。
  2. 表示されるダイアログで、各リソースに対してデータオブジェクトを作成するオプションを選択します。
  3. Select Location ダイアログで、プロジェクトを選択します。

    マッピングの作成

    マッピングに RabbitMQ ソースを追加するには、次の手順に従います:

    1. Object Explorer で、プロジェクトを右クリックし、New -> Mapping をクリックします。
    2. RabbitMQ 接続のノードを展開し、テーブルのデータオブジェクトをエディターにドラッグします。
    3. 表示されるダイアログで、Read オプションを選択します。

    RabbitMQ カラムをフラットファイルにマッピングするには、次の手順に従います:

    1. Object Explorer で、プロジェクトを右クリックし、New -> Data Object をクリックします。
    2. Flat File Data Object -> Create as Empty -> Fixed Width を選択します。
    3. RabbitMQ オブジェクトのプロパティで、必要な行を選択し、右クリックして copy をクリックします。フラットファイルのプロパティに行を貼り付けます。
    4. フラットファイルデータオブジェクトをマッピングにドラッグします。表示されるダイアログで、Write オプションを選択します。
    5. クリック&ドラッグでカラムを接続します。

    RabbitMQ のデータ を転送するには、ワークスペース内で右クリックし、Run Mapping をクリックします。

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

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

RabbitMQ に接続