Tomcat のコネクションプールで CData JDBC Driver for Adobe Analytics を構成

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Tomcat のコネクションプールから Adobe Analytics のデータ に接続。

CData JDBC Driver は、JVM 上で動作するWeb アプリケーションと連携するための標準JDBC インターフェースをサポートしています。ここでは、Tomcat のコネクションプールから Adobe Analytics のデータ に接続する方法を説明します。

Tomcat のコネクションプールから Adobe Analytics のデータ に接続

  1. CData JAR ファイルと CData .lic ファイルを $CATALINA_HOME/lib にコピーします。CData JAR ファイルは、インストールディレクトリの lib サブフォルダにあります。
  2. コンテキストにリソースの定義を追加します。ここでJDBC URL を指定します。

    Adobe Analytics への接続

    それでは、Adobe Analytics に接続していきましょう。接続するには、GlobalCompanyId およびRSID を識別する必要があります。デフォルトでは、ドライバーが会社とレポートスイートの識別を自動で試みますが、これらの値を明示的に指定することも可能です。詳しい手順については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「Adobe Analytics への接続」セクションをご確認ください。

    Adobe Analytics への認証

    続いて、認証方法を設定しましょう。Adobe Analytics はOAuth 認証標準を利用しており、OAuth またはサービスアカウントで認証できます。

    ユーザーアカウント(OAuth)

    ユーザーアカウントでの認証では、すべてのフローでAuthSchemeOAuth に設定する必要があります。詳しい認証手順については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「Adobe Analytics への認証」セクションをご参照ください。

    サービスアカウント

    サービスアカウントではサイレント認証が利用でき、ブラウザでのユーザー認証が不要です。このフローを使用するには、アプリケーションを作成する必要があります。アプリケーションの作成および認可については、ドキュメントの「カスタムOAuth アプリの作成」をご確認ください。これにより、サービスアカウントにアクセス権があるAdobe Analytics データに接続できるようになります。

    サービスアカウントを使用したServer-to-Server OAuth で認証するには、AuthSchemeOAuthClient に設定します。接続には以下のプロパティを設定してください。

    • InitiateOAuthGETANDREFRESH に設定
    • OAuthClientId:アプリケーション設定のクライアントId に設定
    • OAuthClientSecret:アプリケーション設定のクライアントシークレットに設定

    接続すると、CData 製品がサービスアカウントでのOAuth フローを以下の手順で完了します。

    1. クライアントクレデンシャルOAuth フローで指定されたOAuthClientId およびOAuthClientSecret を使用して、アクセストークンを取得します
    2. OAuthSettingsLocation にOAuth 値を保存し、接続間で永続化されるようにします
    3. トークンが期限切れになった際に、新しいアクセストークンを要求します

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

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

    java -jar cdata.jdbc.adobeanalytics.jar
    

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

    以下のリソース定義で指定されたJDBC URL を確認できます。

    
    <Resource name="jdbc/adobeanalytics"   auth="Container" type="javax.sql.DataSource" driverClassName="cdata.jdbc.adobeanalytics.AdobeAnalyticsDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" url="jdbc:adobeanalytics:GlobalCompanyId=myGlobalCompanyId; RSID=myRSID; OAuthClientId=myOauthClientId; OauthClientSecret=myOAuthClientSecret; CallbackURL=myCallbackURL;" maxActive="20" maxIdle="10" maxWait="-1" />
    

    特定のアプリケーションのみに Adobe Analytics のデータ へのアクセスを許可するには、上記のコードをアプリケーションのMETA-INF ディレクトリにあるcontext.xml に追加します。

    共有リソースの構成の場合は、上記のコードを $CATALINA_BASE/conf にあるcontext.xml に追加します。共有リソースの構成では、すべてのアプリケーションが Adobe Analytics に接続できるようになります。

  3. アプリケーションの web.xml にリソースへの参照を追加します。
    
      Adobe Analytics のデータ JSP
      jdbc/AdobeAnalytics
      javax.sql.DataSource
      Container
    
    
  4. コネクションプールから接続を初期化します。
    Context initContext = new InitialContext();
    Context envContext  = (Context)initContext.lookup("java:/comp/env");
    DataSource ds = (DataSource)envContext.lookup("jdbc/AdobeAnalytics");
    Connection conn = ds.getConnection();
      

Tomcat との連携について

上記の手順では、シンプルなコネクションプーリングのシナリオで Adobe Analytics のデータ に接続する方法を説明しました。その他のユースケースや詳細については、Tomcat のドキュメントに記載されている JNDI Datasource How-To を参照してください。

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

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

 ダウンロード

詳細:

Adobe Analytics Icon Adobe Analytics JDBC Driver お問い合わせ

Adobe Analytics のMetrics、Users、Reports、Segments にデータ連携するJava アプリケーションを簡単に構築。