開始方法 - Amazon Athena

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

開始方法

このチュートリアルでは、Amazon Athena を使用してデータをクエリする手順を示します。Amazon Simple Storage Service に保存されたサンプルデータに基づいてテーブルを作成し、テーブルをクエリして、クエリ結果を確認します。

チュートリアルでは、ライブリソースを使用するため、実行したクエリに課金されます。このチュートリアルで使用するロケーションのサンプルデータに対しては課金されませんが、独自のデータファイルを Amazon S3 にアップロードする場合は料金が適用されます。

Prerequisites

  • セットアップ」に従って、アカウントにサインアップします (まだしていない場合)。

  • に使用している同じ AWS リージョン (米国西部 (オレゴン) など) およびアカウントを使用して、Athena からのクエリ結果を保持するための「 でバケットを作成するAmazon S3」。Athena

ステップ 1: データベースの作成

最初に、Athena でデータベースを作成する必要があります。

データベースを作成するには

  1. Athena コンソールを開きます。

  2. Athena コンソールを初めて利用する場合は、開始方法のページが表示されます。[Get Started] を選択してクエリエディタを開きます。初めての利用でない場合は、Athena クエリエディタが開きます。

  3. [ でクエリ結果の場所を設定するAmazon S3] へのリンクを選択します。

    
                        [set up a query result location (クエリ結果の場所の設定)] を選択します。
  4. [Settings (設定)] ダイアログボックスで、クエリ結果用に「Amazon S3」で作成したバケットのパスを入力します。パスの先頭に s3:// を付け、パスの末尾にスラッシュを付けます。

    
                        で Amazon S3 からクエリ結果を受け取る場所を指定する。Athena
  5. [Save] をクリックします。

  6. Athena クエリエディターに、クエリペインが表示されます。クエリとステートメントをここに入力できます。

    
                        コンソールのクエリペイン。Athena
  7. mydatabase という名前のデータベースを作成するには、次の CREATE DATABASE ステートメントを入力します。

    CREATE DATABASE mydatabase
  8. [Run Query (クエリの実行)] を選択するか、Ctrl+ENTER を押します。

  9. カタログの表示が更新され、左側のナビゲーションペインの [mydatabaseデータベース] リストに と表示されていることを確認します。

    
                        作成されたデータベースが Athena コンソールのナビゲーションペインに表示されます。

ステップ 2: テーブルを作成する

データベースが作成されたので、ステートメントを実行してテーブルを作成する準備が整いました。このテーブルは、ロケーション Athena の s3://athena-examples-myregion/cloudfront/plaintext/ サンプルデータに基づきます。 テーブルを作成するステートメントは、データにマッピングする列を定義し、データを区切る方法と、サンプルデータを含む Amazon S3 の場所を指定します。

テーブルを作成するには

  1. [Database (データベース)] で、mydatabase を選択します。

  2. クエリエディタでプラス記号 (+) を選択して、新しいクエリを含むタブを作成します。一度に最大 10 個のクエリタブを開くことができます。

    
                        [+] アイコンを選択して、新しいクエリを作成します。
  3. クエリペインに、次の CREATE TABLE クエリを入力します。クエリの最後にある LOCATION ステートメントで、 を置き換えます。myregion 現在使用している AWS リージョンを持つ us-west-1 (例: )。

    CREATE EXTERNAL TABLE IF NOT EXISTS cloudfront_logs ( `Date` DATE, Time STRING, Location STRING, Bytes INT, RequestIP STRING, Method STRING, Host STRING, Uri STRING, Status INT, Referrer STRING, os STRING, Browser STRING, BrowserVersion STRING ) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe' WITH SERDEPROPERTIES ( "input.regex" = "^(?!#)([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+[^\(]+[\(]([^\;]+).*\%20([^\/]+)[\/](.*)$" ) LOCATION 's3://athena-examples-myregion/cloudfront/plaintext/';
  4. [Run Query] を選択します。

    テーブル cloudfront_logs が作成され、 データベースの [テーブルmydatabase] のリストの下に表示されます。

    
                        コンソールで作成されたテーブル。Athena

ステップ 3: データのクエリ

Amazon S3 のデータに基づいて Athena で cloudfront_logs テーブルを作成したら、このテーブルに対して SQL クエリを実行して、Athena で結果を確認できます。Athena で SQL を使用する方法については、「Amazon Athena の SQL リファレンス」を参照してください。

クエリを実行するには

  1. 新しいクエリタブを開き、クエリペインに次の SQL ステートメントを入力します。

    SELECT os, COUNT(*) count FROM cloudfront_logs WHERE date BETWEEN date '2014-07-05' AND date '2014-08-05' GROUP BY os;
  2. [Run Query] を選択します。

    結果は次のように表示されます。

    
                        コンソールでのクエリ結果の表示。Athena
  3. [.csvResults (結果)] ペインのダウンロードアイコンを選択して、クエリの結果を ファイルに保存できます。

    
                        クエリ結果をCSV形式でダウンロードしています。
  4. [History (履歴)] タブを選択して、以前のクエリを表示します。

    
                        前のクエリを表示するには、[History (履歴)] を選択します。
  5. [Download results (結果のダウンロード)] を選択して、前のクエリの結果をダウンロードします。クエリ履歴は 45 日間保持されます。

    
                        コンソールでクエリ履歴を表示する。Athena

    詳細については、「クエリ結果、出力ファイル、クエリ履歴の使用」を参照してください。

他のデータソースへの接続

このチュートリアルでは、CSV 形式の Amazon S3 データソースを使用しました。AWS Glue、ODBC ドライバー、JDBC ドライバー、外部 Hive メタストア、Athena データソースコネクタを使用して、Athena をさまざまなデータソースに接続できます。詳細については、「データソースへの接続」を参照してください。