Amazon Athenaに接続してデータをインポートする方法

Amazon Athenaに接続してデータをインポートする方法をご紹介します。

前提条件

まずはじめに、ご利用のAWSアカウントに必要な権限を付与してください。(または、管理者に依頼してください。)

AWS IAM マネジメントコンソールにアクセス

権限の付与

以下の権限を付与します。

  • AWSQuickSightListIAM
  • AmazonS3FullAccess
  • AmazonAthenaFullAccess

設定

unixODBCをインストール (Macのみ)

こちらのノートに従って、unixODBCをインストールしてください。

Amazon Athena ODBC ドライバをインストール

まず、Amazon Athena ODBC ドライバをダウンロードして、インストールしてください。

以下はMacOSの例です。

まず、ダウンロードしたdmgファイルをダブルクリックします。

「Continue」をクリックして先に進みます。

「Agree」を選択してライセンスに同意します。

「Install」を選択します。

(必要があれば)管理者で認証します。

「The installation was successful」と表示されたら、インストールの完了です。

設定ファイルの更新 (Macのみ)

以下の設定ファイルをテキストエディタで開きます。

/Library/simba/athenaodbc/lib/simba.athenaodbc.ini

以下の行を追加します。

ODBCInstLib=/usr/local/lib/libodbcinst.dylib

変更を保存します。

コネクションを作成

プロジェクトメニューから、「データコネクション」を選択します。

「追加」ボタンをクリックします。

「Amazon Athena」を選択します。

コネクションを追加するダイアログが開いたら、「コネクション名」、「AWSリージョン」、「S3出力場所」、「ユーザー名」、「パスワード」を入力します。

コネクション名

Amazon Athenaの接続に任意の名前をつけます。

Athena用のODBCドライバ

デフォルトの値 (Simba Athena ODBC Driver)を使います。

AWSリージョン

Amazon Athenaのリージョンを入力します。 (例 us-west-2)

S3出力場所

出力の結果を保存する場所です。書き込みの権限のあるパスを指定してください。 (例 aws-athena-query-results-xxxxxxxxxxx-us-west-2)

VPC エンドポイント

オプショナルのパラメーターです。インターネット経由で接続するのではなく、Virtual Private Cloud (VPC) のインターフェイス VPC エンドポイント (AWS PrivateLink) やAWS Glue VPC エンドポイントを使用して Athena に直接接続する場合に指定します。

インターフェイス VPC エンドポイントを作成した後、エンドポイントのプライベート DNS ホスト名を有効にすると、デフォルトの Athena エンドポイント (https://athena.Region.amazonaws.com) が VPC エンドポイントに解決されます。

プライベート DNS ホスト名を有効にしない場合は、Amazon VPC が以下の形式で使用できる DNS エンドポイント名を指定します。(VPC_Endpoint_IDの部分を実際のIDに置き換えてください。)

VPC_Endpoint_ID.athena.Region.vpce.amazona

ワークグループ

オプショナルのパラメーターです。ワークグループによる制約をつける場合に指定します。

ユーザー名

AWSアクセスキーIDを入力します。

パスワード

AWSシークレットアクセスキーを入力します。

「コネクションをテスト」ボタンをクリックして、接続が成功することを確認してください。

「追加」ボタンをクリックしてコネクションを保存します。

HTTP プロキシ

以下のシステム設定のダイアログでウェブ・プロキシを設定している場合、その設定がAmazon Athenaの接続時に使用されます。

Amazon Athenaのデータソースを作成

データフレームの隣にあるプラス(+)のボタンをクリックして、データベースデータを選択します。

Amazon Athenaを選択します。

SQLクエリー

作成した接続が使用され、スキーマやテーブルが見えるのを確認します。

select * from sampledb.elb_logs
where request_verb = 'GET'
and backend_port = 80

データのインポート

「保存」ボタンをクリックしてデータを取り込んだら、データの分析を開始できます。

Export Chart Image
Output Format
PNG SVG
Background
Set background transparent
Size
Width (Pixel)
Height (Pixel)
Pixel Ratio