CData JDBC Driver を使用して Amazon S3 を IBM WebSphere に接続

Anusha M B
Anusha M B
Technical Marketing Engineer
CData JDBC Driver を使用して Amazon S3 を IBM WebSphere に接続し、シームレスなデータ連携を実現します。

IBM WebSphere は、多くのエンタープライズレベルの Java アプリケーションやサービスを実行する強力なアプリケーションサーバーです。CData JDBC Driver for Amazon S3 と組み合わせることで、IBM WebSphere アプリケーションは複雑な API を使用せずに、標準 SQL クエリで Amazon S3 に接続し、データを操作できます。これにより、連携作業の簡素化、開発工数の削減、重要なビジネスデータへの安全なリアルタイムアクセスが可能になります。

前提条件

  1. Amazon S3 アカウントへのアクセス(API 権限付き)
  2. IBM WebSphere Application Server(構成済みで実行中)
  3. CData JDBC Driver for Amazon S3
  4. デプロイ用の Java Servlet WAR アプリケーション

Note: この記事では Salesforce をデモ用のデータソースとして使用していますが、同じ手順で CData が提供する 250 種類以上の JDBC Driver に接続できます。

はじめに

ステップ1:CData JDBC Driver for Amazon S3 のダウンロードとインストール

CData JDBC Driver for Amazon S3 をダウンロードしてインストールします。インストールすると .jar ファイルが提供されます:cdata.jdbc.amazons3.jar

ステップ2:IBM WebSphere のインストールと構成

  1. IBM 公式サイトから IBM WebSphere のアカウントを作成します。
  2. IBM WebSphere Application Server のドキュメントを参照して、ローカルシステムに IBM WebSphere Application Server をインストール・構成します。
  3. アプリケーションサーバーのインストールが完了したら、ブラウザで管理コンソールを使用して WebSphere Server を起動します:https://your-server:9043/ibm/console

ステップ3:Amazon S3 用の JDBC プロバイダーとデータソースの設定

  1. Resources に移動し、JDBC セクションを展開して、JDBC providers を選択して新しいプロバイダーを作成します
  2. ドロップダウンメニューから適切なスコープを選択します
  3. New をクリックして JDBC プロバイダーを追加します
    • データベースタイプとして User defined を選択します
    • implementation class name として cdata.jdbc.amazons3.AmazonS3ConnectionPoolDataSource を入力します
    • プロバイダーの名前を入力します(例:User defined JDBC Provider)
    • classpath フィールドに JDBC ドライバー JAR ファイルのフルパスを入力します
    • Next をクリックし、Finish をクリックして、マスター構成に変更を保存します
  4. JDBC プロバイダーが作成されたら、JDBC データソースを追加します。
    • Data Source NameJNDI name などの基本情報を入力します
    • 先ほど作成した JDBC provider を選択します(例:CData Amazon S3 Provider)
    • Implementation class name を指定します:cdata.jdbc.amazons3.AmazonS3ConnectionPoolDataSource
    • Data Store Helper Class Name を追加します:com.ibm.websphere.rsadapter.GenericDataStoreHelper
    • 必要に応じて authentication aliases を設定してセキュリティを構成します
    • Summary ページですべての詳細を確認し、Finish をクリックしてデータソースの作成を完了します
  5. 一覧から新しく作成したデータソースを選択し、Custom properties を開きます
  6. URL プロパティに JDBC 接続文字列を追加し、OK を押します。例:

    jdbc:amazons3:RTK=5246...;AccessKey=a123;SecretKey=s123;

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

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

    尚、CData 製品はAmazon S3 のファイルの一覧表示やユーザー管理情報の取得用です。S3 に保管されているExcel、CSV、JSON などのファイル内のデータを読み込みたい場合には、Excel DriverCSV DriverJSON Driver をご利用ください。

    アクセスキーの取得

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

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

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

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

    AWS ロールとして認証

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

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

    SSO 認証

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

    組み込みの接続文字列デザイナー

    JDBC URL の作成には、Amazon S3 JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。

          java -jar cdata.jdbc.amazons3.jar
          

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

    Note: URL プロパティが利用できない場合は、作成してから JDBC 接続文字列を追加してください。

    Tip: URL プロパティに入力する前に、必ずドライバーで接続文字列をテストしてください。
  7. データソースを開き、Test Connection を選択します

ステップ4:Web アプリケーションのビルド

  1. お好みの Java フレームワーク(Servlet、JSP、Spring)を使用して Web アプリケーションをビルドします。生成される .war ファイルは通常、次のような構造になります:
  2. 		Amazon S3ServletApp.war
    		|--webcontent
    		|  |--index.jsp                 -- JSP ページ(エントリーポイント)
    		|  |
    		|  |--WEB-INF/                  -- ブラウザから直接アクセス不可
    		|     |--web.xml                 -- デプロイメント記述子
    		|     |
    		|     |--classes/                  -- コンパイル済み .class ファイル
    		|       |--com/example/Amazon S3/
    		|          |--Amazon S3Servlet.class
    		|
    		|--lib/                      -- 依存 JAR ファイル
    		|--cdata.jdbc.amazons3.jar
    	
  3. JDBC または JPA を使用してデータアクセスロジックを定義し、JNDI 名でデータソースを参照します
  4. この記事では、JDBC 接続の設定と Java Servlet アプリケーションのデプロイについて説明します
  5. プロジェクトを WAR(Web Application Archive)または EAR(Enterprise Archive)ファイルとしてパッケージ化してデプロイします
    • ターミナルで以下のコマンドを使用して Java ファイルをコンパイルします:
      			cd webcontent
      			jar cvf ..\Amazon S3ServletApp.war *
      		

ステップ5:WebSphere に Amazon S3 アプリケーションをデプロイ

  1. WebSphere 管理コンソールで Applications に移動し、Install New Application を選択します
  2. WAR ファイルを参照してアップロードし、インストールウィザードを進めます。

ステップ6:WebSphere から Amazon S3 のデータ を取得

  1. コンテキストルートを使用してアプリケーションにアクセスします:http://hostname:port/context-root/page
  2. Note: ブラウザで開く前に、デプロイしたアプリケーションが起動していることを確認してください。

これでソースから取得したデータを表示できるようになりました。データは IBM WebSphere を通じて直接アクセスできます。このセットアップは、Servlet を WebSphere にデプロイして JDBC ドライバーを使用して Amazon S3 データを取得する方法を示しており、Amazon S3 を活用した高度なエンタープライズアプリケーションを構築するための強固な基盤となります。

Amazon S3 から IBM WebSphere への接続を始めましょう

CData JDBC Connector を使用して、今すぐ Amazon S3 から IBM WebSphere への接続を始めましょう。30日間の無料トライアルをダウンロードして、アプリケーションへの安全でリアルタイムなデータアクセスがいかに簡単に実現できるかをお試しください。ご不明な点がございましたら、サポートチームがいつでもお手伝いします。

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

Amazon S3 Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Amazon S3 Icon Amazon S3 JDBC Driver お問い合わせ

Amazon S3 ファイルストレージデータに連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。