ヤマムギ

growing hard days.

*

TuneCoreの売上データCSVをS3に格納してAthenaのクエリをRe:dashのデータソースにして可視化する

      2017/06/06

先日参加しましたAWS Summit Tokyo 2017で、
[JapanTaxi] Athena 指向アナリティクス 〜真面目に手を抜き価値を得よ〜(AWS Summit Tokyo 2017)を聞いてきました
ので、S3->Athen->Re:dashの構成をやってみたくなりましたのでやってみました。

TuneCoreという国内外の音楽配信サービスのディストリビューターとして一括で仲介してくれるサービスに個人的にお世話になっておりまして、その月次レポートをS3->Athen->Re:dashで可視化してみました。

S3の設定

特に設定するところはありません。
バケットを作成して、TuneCoreからダウンロード出来るCSVをアップロードしました。
CSVは1行目とフッタにあるコメント行を削除してShift-JISからUTF-8に変換しました。

Athenaの設定

[Add Table]からウィザードを使ってCSV選択で1カラムだけのテーブル作成のSQLを生成して、そこにカラムを手書きで足しました。

こんなSQLになりました。

Re:dash用のIAMの作成

Re:dash Help Center Amazon Athena Setupに準じて設定します。

アタッチするポリシーは
AWSQuicksightAthenaAccess

次のポリシーです。
「my-bucket」はAthenaの[Setting] – [Query result location]を設定しました。

Re:dashの設定

Re:dashのバージョンは1.0.3+b2850です。

ここからは手間取りましたが、最終的にこちらの2サイトの通りにやって出来ました。
ありがとうございます。

[Docker] ubuntu 14.04/16.04にDockerをインストール

Redash での Amazon Athena 連携に関して

Re:dashサーバにDockerをインストール

ubuntuは14.04です。

Athena ProxyサーバをDockerで起動するためにRe:dashサーバ(ubuntu)にDockerをインストールします。

Re:dashサーバでredash-amazon-athena-proxyを起動

IMAGE IDを確認して次のコマンドで使用

Re:dashの .envに環境変数を追加

※環境にもよりますがイメージからRe:dashを作っている場合は、 /opt/redash/.env

Re:dashでAthenaをデータソースに設定

Re:dashのデータソースでAmazon Athenaが選択出来るようなりました。

  • Name : 任意
  • Type : Amazon Athena
  • AWS Secret Key : 事前に作成したIAMユーザのシークレットキー
  • AWS Region : Athenaのリージョン
  • AWS Access key : 事前に作成したIAMユーザのアクセスキー
  • S3 Staging Path : Athenaの[Setting] – [Query result location]

これでクエリーが実行出来て、ビジュアライゼーションが作成出来て、ダッシュボードに設定出来ます。

ストア別とか、曲別とか、一覧とか作ってみて、、、、、
出来た!


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS, BI , , ,

  関連記事

S3 Intelligent-Tieringで高頻度階層(FREQUENT)に戻る「アクセス」にS3 SelectとGlueクローラーが該当するのか確認してみました

ユーザーガイドのS3 Intelligent-Tiering のしくみには、「低 …

S3をトリガーにしたときのLambdaのリソースベースポリシー

LambdaのトリガーでS3を設定したとき、自動的にLambdaのリソースベース …

AWS Organizations組織の移動

AWS Organizations組織の移動 やりたいことは、Organizat …

Pentaho Communitation EditionをAWS EC2 Amazon Linux にインストールしてみました

BIというか、簡単なグラフが表示出来ればいいレベルでいいので、商用のBIを購入す …

AWS BackupでRDSスナップショットをクロスリージョンコピー

クロスリージョンでコピーしたい対象と理由 このブログはブログのアーキテクチャをコ …

オンプレミスに見立てたオハイオリージョンにVyOSインスタンスを起動して東京リージョンからVPN接続

AWSクイックスタートのActive Directory Domain Serv …

Amazon CloudSearchにAWS Lambda(Python)からデータをアップロードする

このブログはゆるっとアドベントカレンダー Advent Calendar 201 …

前からできましたっけ??CloudWatch Logsの保持設定を複数まとめて設定

AWSの個人アカウントで要らなさそうなリソースの断捨離をしてます。 CloudW …

webフォームからの問い合わせをRedmineに自動登録して対応状況を管理する(API Gateway + Lambda)

先日、検証目的で作成したRedmineの冗長化の一機能として、webフォームから …

別アカウントのVPCからAWS PrivateLinkを使う

VPC エンドポイントサービス (AWS PrivateLink)を参考にしまし …