Viewの作成

Athenaのセットアップ

Amazon Athenaのコンソール画面 (https://console.aws.amazon.com/athena/) を開きます。

Amazon Athenaの利用が初めての方はセットアップの必要があります。以下のリンクに従いセットアップを行います。リンク先ドキュメントの項目「5.[Save] をクリックします。」まで完了させてください。 https://docs.aws.amazon.com/ja_jp/athena/latest/ug/getting-started.html

セットアップ済みの方は次の手順へ進んでください。

テレメトリーデータのクエリ

AWS Glueで作成したtelemetryテーブルに対して以下の手順でクエリを実行します。

  • 左のデータベースからcvradb-{NAME}を選択。(例: cvradb-twatanabe)
  • クエリエディタに以下のクエリを入力します。Ctrl+Enterでクエリを実行します。

    select * from telemetry limit 20;
    
  • 以下のような結果が出力されることを確認します。

テレメトリーデータのコンバート

テレメトリーデータの分析のために、値の型変換を行います。 クエリエディタの+タブを選択して、新しいクエリエディタに以下のクエリをペーストして、Ctrl+Enterでクエリを実行します。

SELECT vin,
         trip_id,
    max(CASE WHEN name = 'vehicle_speed' THEN cast(value as double) END) AS vehicle_speed,
    max(CASE WHEN name = 'acceleration' THEN cast(value as double) END) AS acceleration,
    max(CASE WHEN name = 'gear_lever_position' THEN value END) AS gear_lever_position,
    max(CASE WHEN name = 'engine_speed' THEN cast(value as double) END) AS engine_speed,
    max(CASE WHEN name = 'odometer' THEN cast(value as double) END) AS odometer,
    max(CASE WHEN name = 'ignition_status' THEN value END) AS ignition_status,
    max(CASE WHEN name = 'fuel_level' THEN cast(value as double) END) AS fuel_level , substr(timestamp, 1, 19) AS timeInterval
FROM telemetry
GROUP BY  trip_id, vin, substr(timestamp, 1, 19)

トリップViewの作成

クエリエディタ下の作成を押下して、クエリからビューを作成を選択します。表示されたポップアップのビューの名前にtripView-{NAME}と入力します。 (例: tripView-twatanabe)

Viewはクエリ内容を仮想的なテーブルとして登録する機能です。Viewを実行すると、裏側で元のテーブルに対してクエリが実行されるため、複雑なクエリを直接テーブルに対して実行する必要がありません。

トリップロケーションViewの作成

クエリエディタの+タブを選択して、新しいクエリエディタに以下のクエリをペーストして、Ctrl+Enterでクエリを実行します。 ロケーションビューを作成します。必ず{NAME}部分を置き換えてください。

CREATE OR REPLACE VIEW "tripLocation-{NAME}" AS
select trip_id, vin, latitude, longitude, timestamp from telemetry where name = 'location'