AWS再入門ブログリレー Amazon QuickSight編

当エントリは弊社コンサルティング部による『AWS 再入門ブログリレー 2019』の6日目のエントリです。

このブログリレーの企画は、普段AWSサービスについて最新のネタ・深い/細かいテーマを主に書き連ねてきたメンバーの手によって、今一度初心に返って、基本的な部分を見つめ直してみよう、解説してみようというコンセプトが含まれています。

AWSをこれから学ぼう!という方にとっては文字通りの入門記事として、またすでにAWSを活用されている方にとってもAWSサービスの再発見や2019年のサービスアップデートのキャッチアップの場となればと考えておりますので、ぜひ最後までお付合い頂ければ幸いです。

では、さっそくいってみましょう。6日目のテーマは『Amazon QuickSight(以下、QuickSight)』です。

目次

QuickSightとは

管理不要で自動的にスケールするビジネス分析(BI)サービスです。

Athena、Redshift、S3等、多数のデータソース(データ供給元)に対応しており、管理者がデータソースから、データセット(データソース内の特定のデータ)を定義し、QuickSightのユーザに公開することが可能です。QuickSightのユーザは、データセットを元に分析を行うことが可能になります。

13

QuickSightとSPICE

QuickSightにはSPICEというインメモリ型の高速データベースが内蔵されています。S3やPC上のファイルをデータソースにする場合は、SPICEに取り込むことで分析が可能になります。

Athena、Redshift等は、SPICEを使わず直接クエリ(SQL)を発行して利用することが可能です。また、何度も参照するような直近のデータだけをSPICEに取り込むこと事も可能です。SPICEに取り込むことで、クエリ速度の向上と、データソースへの負荷低減にもつながります。

14

1ユーザあたり10GBのSPICEが利用可能になります。(無料ユーザは1GB)また、SPICEにインポートできる1データセットの最大サイズは25GB以下である必要があります。詳細については以下をご確認ください。

サポートされているデータソース

リレーショナルデータソース

AWS上にホストされているAthena、Aurora、Redshift等、多数のデータソースに対応しています。その他、サポートされいてるデータソースについては以下をご確認ください。

ファイルデータソース

QuickSight​では以下形式のファイルがサポートされています。

  • CSV/TSV、ELF/CLF、JSON、XLSX

zipまたは、gzipで圧縮されたS3内のファイルは、そのままQuickSight​に取り込むことができます。別の圧縮プログラムで圧縮されたファイルは、取り込む前に解凍しておく必要があります。詳細については以下をご確認ください。

SaaSデータソース

GitHubや、JIRA等、SaaSのデータソースにも対応しています。詳細については以下をご確認ください。

Editionにおける機能と料金体系

QuickSightではStandardとEnterpriseの2つのEditionがあり、機能と料金体系が異なります。Standard Editionと比べ、Enterprise Editionの方が多くの機能を提供しています。

機能 Standard Edition Enterprise Edition
データレイク、ビジネスアプリケーションへの接続 Yes Yes
AutoGraph による容易なデータ分析 Yes Yes
迅速でスケーラブルな可視化 Yes Yes
アクセス用のダッシュボードの公開 Yes Yes
SAML または OpenID Connect によるシングルサインオン Yes Yes
ウェブおよびモバイルアクセス Yes Yes
詳細情報へのドリルダウンおよびフィルターのカスタマイズ Yes Yes
AWS CloudTrail による監査ログの有効化 Yes Yes
閲覧者(READER) No Yes
メールレポート No Yes
VPC、オンプレミスのデータへのアクセス No Yes
行レベルセキュリティ No Yes
SPICE 1 時間ごとのリフレッシュ No Yes
SPICE保管中のデータの暗号化 No Yes
Active Directory連携 No Yes
ダッシュボードの埋め込みとAPIサポート No Yes
ML インサイトの使用 No Yes

Enterprise Edition料金

Enterprise Editionでは、Author(製作者)とReader(閲覧者)というユーザ種別があり、それぞれ料金が異なります。

Author(製作者)

データセットの作成や、可視化するダッシュボードを作成することが可能です。QuickSightをフルに活用できるユーザです。契約期間により利用料金が異なります。以下、1ユーザあたりの料金になります。

  • 年間契約… $18
  • 月契約… $24

Reader(閲覧者)

ダッシュボードを閲覧しデータの分析が可能です。Readerは使った分だけの利用料金なります。(Pay-Per-Session)1セッション(ログインしてから30分)あたり$0.3かかり、最大で$5となります。つまり、まったく利用しなければ料金はかからず、どんなに利用しても場合でも$5になるので、利用するかどうかわからないユーザに対しても、料金を気にせずQuickSight​を提供することが可能になります。

Enterprise Editionの詳細については、以下をご確認ください。

Standard Edition

Standard Editionでは、Enterprise EditionのようなReaderのプライスの設定はありません。以下、1ユーザあたりの料金になります。

  • 年間契約… $9
  • 月契約… $12

StandardとEnterprise、どちらのEditionを利用しても、60日間の試用期間(Free Trial)と、期限なしで適用される無料枠(Free Tier)が提供されます。詳細については、以下をご確認ください。

ハンズオンキットで理解を深めよう

QuickSightでは、ハンズオンキットが公開されています。こちらのハンズオンキットを利用すると、QuickSight + SPICE、QuickSight + Athenaの可視化を自習形式で体験できます。日本語で記載されたマニュアルや、分析に利用するデータが同梱されています。以下よりダウンロードすることが可能です。

以降は、ハンズオンキットの実施内容について触れていきたいと思います。同梱されたマニュアルに手順が記載されているため、ここでは、詳細な手順については割愛しています。

ハンズオン1:CSVファイルをアップロードしQuickSightで分析

手元の株価データ(CSV ファイル)をQuickSightにアップロードして、クイックに可視化、分析を体験するハンズオンです。

データソースはCSVファイルのため、SPICEに取り込む必要があります。取り込み実施前のSPICEの使用容量は0バイトになります。

01

データセットを作成します。株価データはcsvファイルのため、ファイルをアップロードします。

02

データを取り込んだ後は、データセットに名前を付け、可視化するデータの表示名や、表示させる項目を選択します。(ここではAdj Closeは除外しています。)

03

データセットを作成すると、SPICEに取り込まれていますので、使用容量が増えていることが確認できます。データセットが作成できましたので、以降は可視化や分析を行います。

04

ビジュアルタイプを選択し、可視化するデータをドラッグ&ドロップで作成していきます。

05

パラメータフィルタを利用することで、表示させるデータをある特定の期間にすることも可能です。

06

ハンズオン2:大規模データをAthena経由でクエリし可視化する

S3上に配置された巨大データに対して、Athenaを通じてクエリ(SQL実行)できるように設定し、その環境にQuickSightでアクセスして可視化することを体験するハンズオンです。

Athenaからサンプルデータをクエリする

可視化するデータ(米国国内線の発着データ)はAWS側のS3バケットに保存されており、gzip圧縮されたTSVファイルとなります。

Athenaでデータベース(ここではqshandson)を作成し、指定したS3上のデータに対するテーブル(ここではflightdata1)を作成しました。

07

レコード数を数えるSQLを発行しました。約2,000万件のデータがあり、実行時間は約30秒です。

08

クエリ速度改善のためにAthenaにてパーティション分割をしたテーブル(ここではflightdata2)を作成しました。先程と同様のSQLを発行すると、実行結果は同様ですが実行時間は約3秒で、クエリ速度の改善が確認できました。これでデータソース(Athena)の準備は完了です。

09

QuickSightからAthenaに接続する

Athena上に作成したflightdata2テーブルのデータを可視化していきます。QuickSightからアクセス可能なリソース(ここではAthenaとS3)を設定します。

10

Athenaのデータセットを作成します。

11

データセットが作成後は可視化を行っていきます。ここでは複数のグラフを使い、以下のような可視化を行いました。

12

さいごに

以上、『AWS サービス別 再入門ブログリレー 2019』の6日目のエントリ『Amazon QuickSight編』でした。 QuickSightには、試用期間(Free Trial)が設けられていますので、紹介しましたハンズオン等、実際にその手で触って動作を確かめていただくと、より理解が深まるかと思います。

明日(7/9)はの「IAM(AWS Identity and Access Management)」の予定です。お楽しみに!

参考