【ノーコード】SpagoBI でAmazon Athena に連携する方法

古川えりか
古川えりか
コンテンツスペシャリスト
複雑なSpagoBI × Amazon Athena データ連携をノーコードで。JDBCの設定からレポート配信まで手順を詳しく解説。データ分析・レポーティング環境をすぐに構築できます。

CData JDBC Driver for AmazonAthena はJDBC 標準をサポートするビジネスインテリジェンスおよびデータマイニングツールからリアルタイムAmazon Athena に接続することを可能にします。この記事では、Amazon Athena をSpagoBI Studio のレポートに統合し、SpagoBI サーバーでホストする方法を説明します。

SpagoBI サーバーのJDBC ドライバーをデプロイ

以下のステップに従ってSpagoBI サーバーでJDBC data source for AmazonAthena を作成します。

  1. ドライバーJAR を%CATALINA_BASE%/lib にコピーします。これらのファイルは、インストールディレクトリのlib サブフォルダにあります。
  2. Amazon Athena ドライバーリソースをコンテクストに追加します。以下のリソース定義をserver.xml の[GlobalNamingResources]要素に追加できます。

    
    <Resource name="jdbc/amazonathena" auth="Container" type="javax.sql.DataSource" driverclassname="cdata.jdbc.amazonathena.AmazonAthenaDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxactive="20" maxidle="10" maxwait="-1"/>

  3. 以下のリソースリンクを追加し、Web アプリケーションへのアクセスを許可します。この記事では、SpagoBI のMETA-INF\context.xml に次の行を追加します。
    
    <ResourceLink global="jdbc/amazonathena" name="jdbc/amazonathena" type="javax.sql.DataSource"/>
    
  4. サーバーを再起動します。

SpagoBI サーバーのリソースにドライバーを追加した後、データソースを追加します。SpagoBIで[Resources]->[Data Source]->[Add]と進み、以下の情報を入力します。

  • Label:ドライバーに独特の識別子を入力します。
  • Description:ドライバーにディスクリプションを入力します。
  • Dialect:デフォルトの方言を選択します。
  • Read Only:読み取り専用オプションを選択します。このオプションは、データソースがエンドユーザーによって作成された、データセットを保存するためのデフォルトデータベースであるかどうかを決定します。
  • Type:[JDBC]を選択します。
  • URL:
  • 必要な接続文字列プロパティを使用してJDBC URLを入力します。

    Amazon Athena 接続プロパティの取得・設定方法

    それでは、早速Athena に接続していきましょう。

    データに接続するには、以下の接続パラメータを指定します。

    • DataSource:接続するAmazon Athena データソース。
    • Database:接続するAmazon Athena データベース。
    • AWSRegion:Amazon Athena データがホストされているリージョン。
    • S3StagingDirectory:クエリの結果を保存するS3 フォルダ。

    Database またはDataSource が設定されていない場合、CData 製品はAmazon Athena の利用可能なデータソースからすべてのデータベースのリスト化を試みます。そのため、両方のプロパティを設定することでCData 製品のパフォーマンスが向上します。

    Amazon Athena の認証設定

    CData 製品は幅広い認証オプションに対応しています。詳しくはヘルプドキュメントの「はじめに」を参照してみてください。

    AWS キーを取得

    IAM ユーザーの認証情報を取得するには、以下のステップお試しください。

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

    AWS ルートアカウントの資格情報を取得するには、以下のステップをお試しください。

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

    その他の認証オプションについては、ヘルプドキュメントの「Amazon Athena への認証」を参照してください。

    ビルトイン接続文字列デザイナ

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

    java -jar cdata.jdbc.amazonathena.jar
    

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

    Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

    以下は一般的なJDBC URL です。

    jdbc:amazonathena:AccessKey='a123';SecretKey='s123';Region='IRELAND';Database='sampledb';S3StagingDirectory='s3://bucket/staging/';
    
  • Driver:ドライバーのクラス名にcdata.jdbc.amazonathena.AmazonAthenaDriver を入力します。
The configuration for the Amazon Athena JDBC data source.(Salesforce is shown.)

SpagoBI Studio でレポートを作成

以下のステップに従い、SpagoBI StudioでAmazon Athena に基づいたレポートを作成します。SQL クエリの結果をチャートに挿入するデータセットを作成します。次のセクションでは、このレポートをSpagoBI サーバーでホストします。

初めに、SpagoBI Studio のレポートからAmazon Athena に接続してください。

  1. SpagoBI Studio で、[File]->[New]->[Project]とクリックしていき、[Business Intelligence and Reporting Tools]フォルダで[Report Project]を選択します。
  2. [File]->[New]->[Report]と進み、[Blank Report]を選択します。
  3. [Data Explorer]ビューで[Data Sources]を右クリックし、[New Data Source]をクリックします。
  4. [JDBC Data Source]を選択し、データソース名を入力します。
  5. [Manage Drivers]をクリックし、[Add]をクリックしてドライバーJAR(cdata.jdbc.amazonathena.jar) を追加します。
  6. ドライバーJAR は、インストールディレクトリのlib サブフォルダにあります。
  7. [Driver Class]メニューでドライバークラス(cdata.jdbc.amazonathena.AmazonAthenaDriver)を選択します。
  8. [Database URL]ボックスに、[JDBC URL]を入力します。以下は一般的な接続文字列です。
    jdbc:amazonathena:AccessKey='a123';SecretKey='s123';Region='IRELAND';Database='sampledb';S3StagingDirectory='s3://bucket/staging/';
    
    必要な接続プロパティを取得するためのガイドについては、ドライバーヘルプの[Getting Started]チャプターを見てください。 The JDBC data source.(Salesforce is shown.)

Amazon Athena に接続した後、SQL クエリの結果を含むデータセットを作成します。

  1. [DataSet]フォルダを右クリックし、[New Data Set]をクリックします。JDBC data source for AmazonAthena を選択し、データセットの名称を入力します。
  2. SQL クエリを構築します。ここでは、このクエリを使用してダッシュボードにチャートを追加します。例:
    SELECT Name, TotalDue FROM Customers
    
    The query to be used to populate a chart.(Salesforce is shown.)

データセットを使用して、レポートオブジェクトにデータを入力できます。以下のステップに従って、チャートを作成します。

  1. [Palette]ビューで、チャートをキャンバスにドラッグします。
  2. [Select Chart Type]タブで棒グラフを選択します。
  3. [Select Data]タブで[Use Data From]オプションをクリックし、メニューからAmazon Athena のデータセットを選択します。
  4. Name をテーブルからx 軸の系列にドラッグします。
  5. TotalDue をテーブルからy 軸の系列にドラッグします。 Columns in the dataset defined as the x- and y-axes for the chart.(Salesforce is shown.)

SpagoBI サーバーに関するホストAmazon Athena レポート

以下のステップに従って、SpagoBI サーバーでリアルタイムAmazon Athena に基づいてドキュメントをホストできます。前のセクションで作成したレポートをテンプレートとして使用します。レポートユーザーがリアルタイムデータにアクセスできるようにするには、サーバー上のAmazon Athena JDBC データソースに置き換えられるプレースホルダパラメータを作成します。

  1. 未実行の場合、SpagoBI Studio で[Report Design]パースペクティブで開きます。
  2. [Data Explorer]ビューで[Report Parameters]フォルダを右クリックし、[New Parameter]をクリックします。url パラメータを追加し、それに空の値を割り当てます。このパラメータはSpagoBI サーバー上のJDBC データソースのプレースホルダです。
  3. Amazon Athena のデータソースを右クリックし、[Edit]をクリックします。
  4. [Property Binding]ノードで、JDBC Driver のURL バインディングプロパティurl パラメータに設定します。プロパティのボックスをクリックします。[Category]セクションで[Report Parameters]を選択します。[Subcategory]セクションで[All]を選択し、パラメータをダブルクリックします。

    JavaScript構文に以下のように入力することもできます。

    params["url"].value
    
    Placeholder values in the report for the JDBC data source on the server.

続いて、SpagoBI サーバーでレポート用の新しいドキュメントを作成します。

  1. SpagoBI サーバーで、[Documents Development]->[Create Document]->[Generic Document]と進みます。[Document Details]ページが表示されます。
  2. 以下の情報を入力し、ドキュメントを作成します。
    • Label:ドキュメントに独自の識別子を入力します。
    • Name:ドキュメントのわかりやすい名前を入力します。
    • Type:メニューから[Report]を選択します。
    • Engine:[BIRT Report Engine]を選択します。
    • Data Source:SpagoBI サーバーのCreate a JDBC Data Source for AmazonAthena で作成したAmazon Athena Data Source を選択します。
  3. [Show Document Templates]セクションで、ドキュメントを格納したいフォルダを選択します。
  4. [Template]セクションで、[Choose File]をクリックします。レポートプロジェクトを含むフォルダに移動します。.rptdesign ファイルを選択します。

    Noteプロジェクトへのパスは、プロジェクトプロパティで確認できます。

  5. [Save]ボタンをクリックします。
The document using the report as a template.(Salesforce is shown.)

サーバーでレポートを実行すると、プレースホルダurl パラメータがサーバーで定義されたJDBC URL に置き換えられます。

The chart running on the SpagoBI Server.(Salesforce is shown.)

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

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

 ダウンロード

詳細:

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

Amazon Athena 連携のパワフルなJava アプリケーションを素早く作成して配布。