0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【データ可視化/Redash】EC2でRedashを立ち上げて、Snowflakeのデータを可視化する

Posted at

今回の課題

EC2にRedashを建てて、Snowflakeのデータを参照するまでにつまずいたりしたので、流れを記録する。

ちなみに、これまで下記の記事のようにRDSからスナップショットをparquet形式のファイルでS3にエクスポートし、S3にエクスポートしたファイルをSnowflakeにロードする。ということを行ってきた。
今回はそれらをRedashで可視化してみる。

進めた手順

1)EC2にRedashを立ち上げる

下記の手順でEC2にRedashを立ち上げた

1)-1. リージョン毎に用意されているAMIからインスタンスを立ち上げる

ca-central-1のAMIを使用した。
└また、インスタンスタイプはt2.smallが推奨されていたので、そちらを使った。
※インスタンスタイプを無料枠のt2.microでインスタンスを立ち上げると、ブラウザからRedashにアクセスすることができなかったので注意。
└パブリックIPアドレスの自動割り当ては「有効化」を選択して、パブリックIPアドレスは割り当てておく。

1)-2. 立ち上げたインスタンスのセキュリティグループを設定する

立ち上げたインスタンスのセキュリティグループのインバウンドルールに、
ポート22(SSH), 80(HTTP), 443(HTTPS)を追加する。
これによって、インスタンスにSSH, HTTP, HTTPS接続でアクセスすることができるようになる。

1)-3. Elastic IPを設定する

EC2のパブリックIPアドレスは動的なIPアドレスなので、インスタンスを立ち上げるたびに変ってしまう。
そこで、Elastic IPアドレスをEC2インスタンスに割り当てることで、
EC2インスタンスのアドレスを固定にすることができる。

2)ブラウザからRedashにアクセスしてログインする

ブラウザのアドレスバーに、https://[ECのElastic IPアドレス]を入力して検索することで、Redashのログイン画面にアクセスすることができるので、必要項目を入力してRedashにログインする。

image.png

3)RedashとSnowflakeを接続する

ログインが完了したら、
RedashのトップページのConnect a Data Sourceをクリックして、
Dew Data Sourceに進み、Snowflakeを選択する。
すると下記のような画面に進むので必要な箇所を入力していく。

a9ac9a0ae8b9bae39e31b26f85c06e83.png

入力項目

SnowflakeとRedashを接続する際の、
入力項目が少し分かりずらかったため補足説明をメモ。

  • Name:接続設定につけたい名称を入力する。

  • Account[Locator].[リージョン名].awsを入力する。
    Locatorはworksheets上でshow organization accounts;を実行して、抽出されたデータのaccount_locatorカラムの値と同じ。

  • User:Snowflakeのユーザー名を入力する。

  • Password:Snowflakeのパスワードを入力する。

  • Warehouse:使用したいWarehouseを入力する。

  • Database:Redashに接続したいDatabaseを入力する。

  • Region:入力すると原因不明のエラーが発生するので空欄にする。

4)Redashでクエリを実行してみる

メニューバーのCreate > Queryから、
下記の画像のようなクエリの編集画面に飛ぶことができるので、ここでクエリを実行する。
image.png

また、クエリ編集画面の下の、+ New Visualizationをクリックすることで、
Visualization Editorに飛ぶことができ、データを可視化することができる。
SavePublishボタンを押して、保存することも忘れないようにする。
image.png

まとめ

以上で、Redashでデータを可視化するところまで実装することができた。

おまけ

気になった言葉や参考にした記事など。

AMI(Amazon Machine Image)とは

EC2インスタンスの起動に必要な情報を提供するテンプレート。
OSやボリュームの情報などを提供する。

今回の件では、Redashが用意しているAMI(OSやボリュームなどを提供するテンプレート)を使って、
EC2のインスタンスを構築した。というイメージ。

参考記事

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?