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

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

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

Amazon S3 MuleSoft Connector



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

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

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

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

    Amazon S3 リクエストを認可するには、管理者アカウントまたはカスタム権限を持つIAM ユーザーの認証情報を入力します。AccessKey をアクセスキーID に設定します。SecretKey をシークレットアクセスキーに設定します。

    Note: AWS アカウント管理者として接続できますが、AWS サービスにアクセスするにはIAM ユーザー認証情報を使用することをお勧めします。

    アクセスキーの取得

    IAM ユーザーの資格情報を取得するには:

    1. IAM コンソールにサインインします。
    2. ナビゲーションペインで[ユーザー]を選択します。
    3. ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してから[セキュリティ認証情報]タブを選択します。

    AWS ルートアカウントの資格情報を取得するには:

    1. ルートアカウントの資格情報を使用してAWS 管理コンソールにサインインします。
    2. アカウント名または番号を選択し、表示されたメニューで[My Security Credentials]を選択します。
    3. [Continue to Security Credentials]をクリックし、[Access Keys]セクションを展開して、ルートアカウントのアクセスキーを管理または作成します。

    AWS ロールとして認証

    多くの場合、認証にはAWS ルートユーザーのダイレクトなセキュリティ認証情報ではなく、IAM ロールを使用することをお勧めします。RoleARN を指定することでAWS ロールを代わりに使用できます。これにより、本製品は指定されたロールの資格情報を取得しようと試みます。

    (すでにEC2 インスタンスなどで接続されているのではなく)AWS に接続している場合は、ロールを引き受けるIAM ユーザーのAccessKey とSecretKey を追加で指定する必要があります。AWS ルートユーザーのAccessKey および SecretKey を指定する場合、ロールは使用できません。

    SSO 認証

    SSO 認証を必要とするユーザーおよびロールには、RoleARN およびPrincipalArn 接続プロパティを指定してください。各Identity Provider に固有のSSOProperties を指定し、AccessKey とSecretKey を空のままにする必要があります。これにより、本製品は一時的な認証資格情報を取得するために、リクエストでSSO 認証情報を送信します。

  6. CData Amazon S3 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. Amazon S3 を表示するには、HTTP Connector 用に構成したアドレス(デフォルトではlocalhost:8081) に移動し、table のURL parameter はhttp://localhost:8081?table=ObjectsACL としてテーブル名を渡します。
    ObjectsACL データは、Web ブラウザおよびJSON エンドポイントを使用できるその他のツールでJSON として使用できます。

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