2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【30日でAWSをマスターするハンズオン問題集】Day18:Amazon Quick Suite (Amazon Quick Sight)でレビュー分析ダッシュボードを作ろう

Posted at

こちらの投稿は2025 Japan AWS Jr.Championsの有志メンバーで作成した『30日間で主要AWSサービスを構築できるようになる』をテーマにした初学者向けのハンズオン問題集のDAY16になります!
問題集の趣旨や作成に至るまでの経緯は以下の記事をご覧いただければと思います。
https://qiita.com/satosato_kozakana/items/446971c2deca7e27d0aa

概要

項目 内容
所要時間 約1時間
メインサービス Amazon Quick Suite (※特に Amazon Quick Sight)
学べること Amazon Quick Suite環境の立ち上げ、データセット作成、分析画面作成、ダッシュボードの共有方法
想定費用 25USD(作成者/月)+3USD(閲覧者/月)

※ AWSアカウント内で初めて有効化される場合、ユーザー4人分・30日間の無料トライアルが提供されます。

⚠️ 注意:以下のリソースを削除し忘れると課金が継続します。

課題内容

S3に置かれたレビューCSVをもとに、Amazon Quick Sight で分析を作成し、ダッシュボードとして共有された状態にします。

Amazon QuickSightは、2025年10月に、Amazon Quick Suite (以下 Quick Suite)に統合されました。
Quick Suiteは、AIによるデータリサーチ(Quick Research)、ワークフロー自動化(Quick Flows・Quick Automate)、データ可視化機能(Amazon Quick Sight (以下 Quick Sight))など、複数の機能を単一のワークスペースから操作可能になります。今回のハンズオンでは、Quick Sight機能を用いてデータの可視化を行います。

📊 アーキテクチャ図

qs-architecture

🔧 実装機能

  • S3上のCSVをQuick Sight上でデータセット化する
  • 分析画面(グラフ・表など)を作成し、ダッシュボード化
  • 共有フォルダを作成・設定し、作成したダッシュボードを追加
  • 別のQuick Sightユーザーから、ダッシュボードを閲覧

💡 実装のヒント

Quick Suite の環境構築

Quick Sight を利用するには、Quick Suite の環境が必要です。
Quick Suite 環境を有効化するために、IAMユーザーでサインインし、サービスの有効化を行います。

有効化の際に、S3 や Athena などのデータソースへのアクセス権限、SPICE 容量、VPC 接続設定 などを確認します。

初回セットアップが完了すると、Quick Suite の管理画面から
ユーザーの追加、データソースの登録、ダッシュボード共有設定などを行えるようになります。

⚠️ 後述の「解答・構築手順」> 「ステップ2:Quick Suite環境構築」も含めてご確認ください。

データセットの作成方法 初めて利用するS3バケットの場合、Quick Suiteの管理コンソールから、当該S3バケットへの参照権限を振る必要があります。 また、S3を直接参照する場合は、マニフェストファイルと呼ばれる設定ファイルが必要です。

カラム名やデータ型などは、この段階で扱いやすい形に変更しておくことが望ましいです。
QuickSightユーザーガイド - Amazon S3 のマニフェストファイルでサポートされている形式

Athenaからデータを参照できる場合は、Athenaをデータソースとするデータセットを作成することも可能です。
QuickSightユーザーガイド - Amazon Athena データを使用したデータセットの作成

分析作成 分析画面は自由に作成ください。

例としては、以下のようなグラフが考えられます。

  • 平均評価と年齢層の散布図
  • 平均件数をカテゴリ別に棒グラフで表示 (上位10件)
  • 年別レビュー件数の折れ線グラフ
  • 上位製品ランキング(平均評価順)
  • フィルターで購入確認済み(Y/N)を切り替え
ダッシュボード共有 個々のデータセット、分析、ダッシュボードなどに権限を振ることも可能ですが、共有フォルダを利用すると一括での権限付与が可能です。
  1. 分析をダッシュボードとして公開
  2. 共有フォルダを作成し、ダッシュボードを追加
  3. 確認用に新規ユーザーを作成し、フォルダからユーザーに対して権限を付与
  4. 新規ユーザーでダッシュボードが閲覧できることを確認

ユーザーグループなどを作成している場合は特に、フォルダでの権限管理を行う方が一般的です。


完成後のチェックポイント

  • S3のCSVデータがQuick Sightから見える
  • 分析にグラフ・フィルターが含まれている
  • 作成した分析がダッシュボード化され、共有フォルダに追加されている
  • 閲覧者ユーザーでダッシュボードを閲覧できる (ダッシュボードが共有されている)

使用資材

サンプルデータ:handson_reviews_data.csv

こちらのリンク先のデータをコピーし、handson_reviews_data.csv という名前でファイルを作成して、S3にアップロードしてください。

データ構造

  • marketplace: マーケットプレイス(JP)
  • customer_id: 顧客ID
  • gender: 性別(M/W)
  • age: 年齢
  • review_id: レビューID
  • product_id: 商品ID
  • product_parent: 商品親ID
  • product_title: 商品名
  • product_category: 商品カテゴリ
  • star_rating: 評価(1-5の整数)
  • helpful_votes: 役立った投票数
  • total_votes: 総投票数
  • vine: Vineプログラム(Y/N)
  • verified_purchase: 購入確認済み(Y/N)
  • review_headline: レビュータイトル
  • review_body: レビュー本文
  • review_date: レビュー日付

なお、データはオリジナルで作成しても構いません。

🔗 リファレンスリンク

解答・構築手順(クリックで開く)

ステップ1:S3バケットの作成とデータアップロード を見る

ステップ1:S3バケットの作成とデータアップロード

まずはデータの参照元となるストレージまたはデータベースを用意する必要があります。安価なAmazon S3は大規模データ分析基盤のファーストステップとして優れています。

  1. AWS マネジメントコンソールで「S3」を開きます。

  2. 「バケットを作成」をクリックし、一意のバケット名(例: handson-quicksight-<アカウントID>-<日付>)を入力してバケットを作成します。バケット名以外はデフォルト設定で構いません。

  3. 「使用資材」のリンクから handson_reviews_data.csv をダウンロードし、S3にアップロードします。(「アップロード」 > 「ファイルを追加」 > 選択 > 「アップロード」)
    s3-data-upload

  4. S3のデータアクセスに必要となる、マニフェストファイル(handson_s3_manifest.json)を作成します。
    handson_reviews_data.csv のS3URIをコピーし、以下のURIsを書き換えます。

handson_s3_manifest.json

{
    "fileLocations": [
        {
            "URIs": [
                "s3://<your-bucket-name>/handson_reviews_data.csv"
            ]
        }
    ]
}

handson_reviews_data.csvの場合、S3URIのみで問題ありません。
囲み文字や特殊な区切り文字を利用している場合には、追加の設定が必要です。

参考:Amazon S3 のマニフェストファイルでサポートされている形式

ステップ2:Quick Suite環境構築 を見る

ステップ2:Quick Suite環境構築

Quick Suite環境が未整備の場合、以下の手順で有効化を行います。

  1. AWSコンソールからQuickiSightを検索して開きます。

    qs-setup1
  2. 「Amazon Quick Suite にサインアップ」を押下します。

    qs-setup2
  3. 以下の通りセットアップし、「アカウントを作成」します。
  • リージョン:任意(東京リージョン推奨:ap-northeast-1)
  • アカウント名:任意(グローバルでユニークな名前)
  • メール:任意
  • その他の設定はデフォルトのまま
    qs-setup3
  1. 数分待ち、正常に作成されると以下のような画面になります。

    「Amazon Quick Suite に移動」を押下します。

    qs-setup4
  2. QuickSuiteのコンソール画面(ホーム画面)へ遷移します。

    qs-setup5
ステップ3:S3への参照権付与 を見る

ステップ3:S3への参照権付与

Quick SightがS3のデータを参照できるよう、Quick Sightが持つ権限を設定します。

  1. QuickSuiteのコンソール画面から、右上のユーザーアイコンを押下し、「Quick Suite を管理」を開きます。

    qs-s3-setup1
  2. 左のメニューバーから「AWSリソース」を開きます。

    qs-s3-setup2
  3. 「S3バケットを選択する」 を押下

    qs-s3-setup3
  4. S3バケットへの参照権・書き込み権を付与します。
  • S3バケット:アクセス対象としたいS3バケットすべてにチェック

     ※ ステップ1でhandson_reviews_data.csv を配置したS3バケットが選択されている必要があります。
  • AthenaWorkgroupの書き込みアクセス権:Athenaを利用する際、「Athenaのクエリ保存先」`として利用する、書き込みアクセス権が必要なバケットのみ選択

    qs-s3-setup4
  1. 「S3バケット」 にチェックが入っていることを確認し、「保存」します。

    qs-s3-setup5
ステップ4:データセット作成 を見る

ステップ4:データセット作成

  1. 左メニューから「データセット」→「データセットを作成」を選択します。

    qs-dataset1
  2. 「データソースを作成」を選択します。

    qs-dataset2
  3. 「Amazon S3」を選択します。

    qs-dataset3
  4. 以下の通り、新規データソースを作成します。
  • データソース名:任意
  • マニフェストファイル:アップロードを選択し、フォルダアイコンから、ステップ1で作成したマニフェストファイル(handson_s3_manifest.json)をアップロードします。
    qs-dataset4
  1. 正常に作成されると、このような画面となります。

    「データの編集/プレビュー」から、データセットを編集します。

    このまま「視覚化する」で分析作成に進んでも構いませんが、カラム名やデータ型などを調整し、扱いやすい形にする方が望ましいです。

    qs-dataset5
  2. データセットを編集します。(ポップアップが出る場合には×を押します)
  • データセット名:画面上部から変更可能です。
  • データ型:デフォルトの変換のままで構いません。(キャプチャの場合、「Change datatype 1」)
  • フィールド名(カラム名):必要に応じて、分かりやすい名称を利用します。画面左側の「列の名前を変更」→「+追加」から変更可能です。

    編集後、右上の「保存して公開」の「▼」から「視覚化して保存」を選択して、分析画面の作成に移ります。

    qs-dataset6

データセットはQuick Sight上で利用できるデータのまとまり、データソースは、データセットが参照するデータの接続先情報(S3バケット,Athenaテーブル,Redshiftテーブルなど)です。

ステップ5:分析作成 を見る

ステップ5:分析・ダッシュボード作成

  1. 「インタラクティブシート」が選択された状態で、「作成」します。

    qs-analysis1
  2. 初期画面です。

    qs-analysis2
  • ①:データセットが持つフィールド(カラム)一覧
  • ②:ビジュアルタイプ(テーブル、円グラフ、棒グラフ等)の選択
  • ③:グラフ表示エリア
  1. 自由に分析を作成します。

    例としては、以下のようなグラフが挙げられます。
  • 平均評価と年齢層の散布図
  • 平均件数をカテゴリ別に棒グラフで表示 (上位10件)
  • 年別レビュー件数の折れ線グラフ
  • 上位製品ランキング(平均評価順)
  • フィルターで購入確認済み(Y/N)を切り替え
    qs-analysis3

    qs-analysis4

    qs-analysis5
  1. 分析画面右上から、「公開」を行います。これにより、ダッシュボードとして公開することが可能になります。

    qs-analysis6
ステップ6:ダッシュボードの共有(共有フォルダ) を見る

ステップ6:ダッシュボードの共有方法(共有フォルダ)

個々のデータセット、分析、ダッシュボードなどに権限を振ることも可能ですが、共有フォルダを利用すると一括での権限付与が可能です。

事前準備:共有確認用ユーザ作成

  1. 画面右上のユーザーアイコンを押下し、「Quick Suite を管理」を開きます。

    qs-folder1
  2. メニューから「ユーザーを管理」を開き、「ユーザーを招待」を押下します。

    qs-folder2
  3. 任意のユーザー名を入力し「+」を押下します。

    qs-folder3
  4. メールアドレスを入力し、ロールを「閲覧者」に変更して「招待」します。

    メールアドレスは、現在のユーザーと同じでも問題ありません。(ロールが異なるため)

    qs-folder4
  5. メールを確認し、QuickSuiteユーザー登録を行います。
  6. 共有フォルダを作成します。

    QuickSuiteコンソールから、「共有フォルダ」→「新しいフォルダ」を選択します。

    qs-folder5
  7. 任意のフォルダ名を入力し、「作成」します。

    qs-folder6
  8. フォルダ名の横の三点リーダをクリックして、「共有」を開き、先ほど作成したユーザー名を検索・選択します。

    qs-folder7
  9. 許可内容を確認して「共有」を行います。

    qs-folder8
  10. メニューバーから「ダッシュボード」を開き、共有するダッシュボードの三点リーダから、「フォルダに追加」を選択します。

    qs-folder9
  11. 先ほど作成したフォルダを選択し、「追加」を行います。

    qs-folder10
  12. 別ブラウザなどで、作成したユーザーでログインし、ダッシュボードが閲覧できれば完了です。

片付け

S3バケットの削除

  1. 不要なデータおよびS3バケットを削除します。

QuickSuite環境の削除

  1. 画面右上のユーザーアイコンを押下し、「Quick Suite を管理」を開きます。

    qs-folder1
  2. 「アカウント設定」の「管理」を押下します。

    qs-cleanup1
  3. アカウントの終了保護を外し、アカウントを削除します。

    qs-cleanup2
  • 環境ごと削除しない場合は、不要なQuick Suiteユーザーを削除し、ロールを最小限にします。

    例)管理者プロ → 管理者

おつかれさまでした!

この課題では、Quick Sightを用いたデータ可視化の一連の流れを体験いただきました。
ユーザー作成やフォルダ共有設定を通じて、実際の運用に近い形で権限管理を学ぶこともできたと思います。

Quick Sightでは、パラメータと呼ばれる変数や、計算フィールドの活用による制御も可能です。
実際にデータ可視化を行う場合には、これらの機能を組み合わせ、目的に合わせた分析・可視化へ発展させていきましょう。

2
0
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
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?