MongoDB データにSQL を使ってAnypoint からデータ連携

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

MongoDB MuleSoft Connector



MongoDB のJSON エンドポイントを作成するために、HTTP やSQL をCData Mule Connector for MongoDB とともに使用するシンプルなMule アプリケーションを作成します。

CData Mule Connector for MongoDB は、MongoDB をMule アプリケーションから標準SQL でのread 、write。update、およびdelete 機能を可能にします。コネクタを使うことで、Mule アプリケーションでMongoDB のバックアップ、変換、レポートおよび分析を簡単に行えます。

この記事では、Mule プロジェクト内のCData Mule Connector for MongoDB を使用してMongoDB 用のWeb インターフェースを作成する方法を説明します。作成されたアプリケーションを使用すると、HTTP リクエストを使用してMongoDB をリクエストし、結果をJSON として返すことができます。以下のアウトラインと同じ手順を、CData Mule Connector で使用し、240+ の使用可能なWeb インターフェースを作成できます。

  1. Anypoint Studio で新しいMule プロジェクトを作成します。
  2. [Message Flow]にHTTP Connector を追加します。
  3. HTTP Connector のアドレスを設定します。
  4. CData MongoDB Connector をHTTP Connector の後に、同じフロー内に追加します。
  5. 新しい接続を作成または既存の接続を編集し、MongoDB に接続するようにプロパティを構成します。(以下を参照)接続が構成されたら、[Test Connection]をクリックしてMongoDB への接続を確認します。

    MongoDB への接続には、Server、Database、User、Password プロパティを設定します。MongoDB コレクションにテーブルとしてアクセスするには、自動スキーマ検出を使用することができます。もちろんスキーマ定義の.rsd ファイルを編集して自分でスキーマ定義を書くことも可能です。スキーマに縛られないフリーフォーマットクエリを投げることもできます。

  6. CData MongoDB Connector を構成します。
    1. [Operation]を[Select with Streaming]に設定します。
    2. [Query type]を[Dynamic]に設定します。
    3. SQL クエリをSELECT * FROM #[message.inboundProperties.'http.query.params'.get('table')] に設定してURL パラメータtable を解析し、SELECT クエリのターゲットとして使用します。他の潜在的なURL パラメータを参照することにより、クエリをさらにカスタマイズできます。
  7. [Transform Message Component]をフローに追加します。
    1. 入力から出力のMap にPayload をマッピングします。
    2. Payload をJSON に変換するには、Output スクリプトを以下のように設定します。
      %dw 1.0
      %output application/json
      ---
      payload
              
  8. MongoDB を表示するには、HTTP Connector 用に構成したアドレス(デフォルトではlocalhost:8081) に移動し、table のURL parameter はhttp://localhost:8081?table=restaurants としてテーブル名を渡します。
    restaurants データは、Web ブラウザおよびJSON エンドポイントを使用できるその他のツールでJSON として使用できます。

カスタムアプリでMongoDB をJSON データとして操作するためのシンプルなWeb インターフェースと、様々なBI、レポート、およびETL ツールが完成しました。Mule Connector for MongoDB の30日間無料トライアルをダウンロードして今すぐMule Applications でCData の違いを確認してみてください。