各製品の資料を入手。
詳細はこちら →Amazon Athena のデータをBoomi AtomSphere で連携利用する方法:CData JDBC Driver
CData JDBC ドライバを使って、データ統合サービス(iPaaS)のBoomi で Amazon Athena のデータ をノーコードで連携。
最終更新日:2022-05-18
この記事で実現できるAmazon Athena 連携のシナリオ
こんにちは!テクニカルディレクターの桑島です。
Boomi AtomSphere https://boomi.com/は、Boomi 社が提供する、 シングルインスタンス、マルチテナントアーキテクチャを特徴としているデータ統合サービス(iPaaS)です。データ統合機能だけでなく、マスターデータのハブ機能、EDI、APIManagement、WorkFlow といったビジネスユースに必要なデータ連携のすべてを実現する機能をシングルプラットフォームで提供しています。
この記事では、Boomi AtomSphere のオンプレミスAtom deployment 機能を使って、CData JDBC ドライバ経由でAmazon Athena のデータにアクセスする方法を紹介します。CData Drivers を使うことで、RDB のようにBoomi 内でAmazon Athena のデータを扱うことができるようになります。
Boomi のon-Premise Atom depleyment の作成
on-Premise Atom deployment (右上の青部分)を利用する構成としました。この機能を利用することでOn-Premise 側に配置したCData JDBC ドライバ経由でのSaaS 連携を実現します。
- ブラウザからBoomi Atom のManage > Atom Management のタブを開きます。
- +New > Atom を開きます。
- Atom Setup ダイアログが開くので、ブラウザを開いているマシンのOS(本例ではWindows10Pro 64bit)のSetup ファイルをダウンロードします。
- ダウンロードした「atom_install64.exe」を実行するとインストーラが起動します。
- Setup Wizard を進めます。
- ブラウザからBoomi Atom へのログインする時のUser・Password をセットして、Atom Name はデフォルトのまま、次に進みます。
- on-Premise Atom deployment のインストールディレクトリ(デフォルト)を指定して次に進みます。
- Setup Wizard を終了(Finish)します。
- ブラウザからBoomi Atom のManage > Atom Management のタブを開いて、上記で作成したon-Premise Atom Deployment が起動していることを確認します。なお、Windows マシンの場合、サービスからも起動を確認できます。on-Premise Atom deployment の作成は以上です。


Boomi on-Premise Atom deployment モジュールへのJDBC ドライバの配置
次に別途ダウンロード・インストールしたCData JDBC Driver for AmazonAthena をBoomi on-premise Atom モジュールに配置していきます。
- JDBC Drivers ファイルをCData 製品のインストールフォルダからon-Premise Atom deployment インストールパス配下のパスにコピーします。
- cdata.jdbc.amazonathena.jar
- cdata.jdbc.amazonathena.lic (試用版では.lic ファイルは不要)
- コピー元:C:\Program Files\CData\CData JDBC Driver for AmazonAthena 2019J\lib
- コピー先:C:\Boomi AtomSphere\Atom - 10.211.55.9\lib
コピーしたらBoomi Atom をブラウザからリスタート(Restart Atom)してください。作成したon-Premise Atom deployment のInstalledLibraries にJDBCの.jar ファイルが表示されれば成功です。

Amazon Athena のConnectionの作成
Boomi Atom からAmazon Athena のデータソースに接続するためのConnection を作成します。
- Welcom 画面の「Component > Connetion」を選択するとCreate Component ウィザードが開きます。
- Amazon Athena への接続用のConnection 設定として以下の値をセットします。
- Type: Connection
- Component Name: ConnectionCDataAmazonAthena
- Folder: 任意のパス
- Connector: Database
- そしてJDBC Driver の接続設定を行います。
Amazon Athena 接続プロパティの取得・設定方法
Amazon Athena リクエストの認証には、アカウントの管理のクレデンシャルか、IAM ユーザーのカスタムPermission を設定します。 AccessKey にAccess Key Id、SecretKey にはSecret Access Key を設定します。
AWS アカウントアドミニストレータとしてアクセスできる場合でも、AWS サービスへの接続にはIAM ユーザークレデンシャルを使用することが推奨されます。
IAM ユーザーのクレデンシャル取得は以下のとおり:
- IAM コンソールにログイン。
- Navigation ペインで「ユーザー」を選択。
- ユーザーのアクセスキーを作成または管理するには、ユーザーを選択してから「セキュリティ認証情報」タブを選択。
AWS ルートアカウントのクレデンシャル取得は以下のとおり:
- ルートアカウントの資格情報を使用してAWS 管理コンソールにサインイン。
- アカウント名または番号を選択し、表示されたメニューで「My Security Credentials」を選択。
- 「Continue to Security Credentials」をクリックし、「Access Keys」セクションを展開して、ルートアカウントのアクセスキーを管理または作成。
EC2 インスタンスからの認証
EC2 インスタンスからCData 製品を使用していて、そのインスタンスにIAM ロールが割り当てられている場合は、認証にIAM ロールを使用できます。 これを行うには、UseEC2Roles をtrue に設定しAccessKey とSecretKey を空のままにします。 CData 製品は自動的にIAM ロールの認証情報を取得し、それらを使って認証します。
AWS ロールとして認証
多くの場合、認証にはAWS ルートユーザーのダイレクトなセキュリティ認証情報ではなく、IAM ロールを使用することをお勧めします。 代わりにRoleARN を指定してAWS ロールを使用できます。これにより、CData 製品は指定されたロールの資格情報を取得しようと試みます。 (すでにEC2 インスタンスなどで接続されているのではなく)AWS に接続している場合は、役割を担うIAM ユーザーのAccessKeyと SecretKey を追加で指定する必要があります。AWS ルートユーザーのAccessKey およびSecretKey を指定する場合、 ロールは使用できません。
MFA での認証
多要素認証を必要とするユーザーおよびロールには、MFASerialNumber およびMFAToken 接続プロパティを指定してください。 これにより、CData 製品は一時的な認証資格情報を取得するために、リクエストでMFA 認証情報を送信します。一時的な認証情報の有効期間 (デフォルトは3600秒)は、TemporaryTokenDuration プロパティを介して制御できます。
Amazon Athena への接続
AccessKey とSecretKey プロパティに加え、Database、S3StagingDirectory、Region を設定します。Region をAmazon Athena データがホストされているリージョンに設定します。S3StagingDirectory をクエリの結果を格納したいS3内のフォルダに設定します。
接続にDatabase が設定されていない場合は、CData 製品はAmazon Athena に設定されているデフォルトデータベースに接続します。
- Driver Type: Custom
- Class Name: cdata.jdbc.amazonathena.AmazonAthenaDriver
- User Name: 本来であれば不要ですが、空のままだと後の手順でバリデーションエラーが発生するので適当な値をセットします
- Password: 本来であれば不要ですが、空のままだと後の手順でバリデーションエラーが発生するので適当な値をセットします
- Connection URL: jdbc:amazonathena:AccessKey='a123';SecretKey='s123';Region='IRELAND';Database='sampledb';S3StagingDirectory='s3://bucket/staging/';
- Connection の値を設定したら接続テストを行います。右上のTest Connection ボタンをクリックします。実行するAtom を選択する画面が表示されるので、上記手順で作成したon-Premise Atom deployment を選択します。
- テスト接続が成功することを確認してFinish ボタンでウィザードを閉じます。
- 作成した Amazon Athena のデータ への接続Connection を保存(Save)します。


Boomi Atom でのAmazon Athena のデータ Profile の作成
次にProfile を設定していきます。ProfileとはSQL(SELECT/INSERT/UPDATE/DELETE)実行時のフィールド定義です。
- Amazon Athena のデータ のテーブルをSELECT するProfile を作成していきます。
-
- Type: Profle
- Component Name: ProfileCDataAmazonAthena
- Folder: 任意のパス
- Connector: Database
- 二つのパラメータに、Display Name: デフォルト, Type: Select と値をセットしたら右上のImportボタンをクリックします。
- Database Import Wizardが開くので、以下のパラメータをセットして次に進みます。
- Browse in: 上記手順で作成したon-Premise Atom deployment
- Connection: 上記手順で作成した接続Connection
- Amazon Athena のデータ 内のオブジェクトがテーブル一覧として表示されます。取得するテーブルにチェックをオンにして次に進みます。
- テーブル内のカラム一覧が表示されます。使用する項目のチェックをオンにして次に進みます。
- Import ウィザードが完了します。
- DataElements のField アイコンをクリックすると選択テーブル内のカラムが定義されていることを確認できます。また、SQL Script には取得時のSQL(SELECT)が表示されています。作成したProfile を保存します。
- これでAmazon Athena のデータ がBoom Atom で利用できるProfile として登録されました。






Boomi AtomSphere でのAmazon Athena のデータ の利用
あとは、設定されたProfile はRDB と同じようにBoomi Atom 内で利用することができます。カラムにマッピングを行うこともできます。

このようにCData JDBC ドライバをアップロードすることで、簡単にBoomi AtomSphere でAmazon Athena のデータ データをノーコードで連携し、使うことが可能です。
是非、CData JDBC Driver for AmazonAthena 30日の無償評価版 をダウンロードして、お試しください。