Amazon Quickの新しいトピックを分析シートで使って、複数データセットのビジュアルを作ってみた

Amazon Quickの新しいトピックを分析シートで使って、複数データセットのビジュアルを作ってみた

Amazon Quickの新しいトピック機能を使うと、複数のデータセットを1つのビジュアルにまとめられるようになりました。実際に店舗売上データで試してみます。
2026.09.09

こんにちは、こーへいです。

Amazon Quickの新しいトピックを分析シートのデータモデルとして使うと、複数のデータセットのフィールドを1つのビジュアルにまとめられるようになりました。

複数のデータをあらかじめ1つに結合したデータセットを作っておかなくても、トピックに関係を定義しておけば、各データセットは元のままでQuick Sightが実行時に結合してくれます(Quick Sight 分析でのトピックの使用)。実際にやってみます。

先に結論をまとめると、こんな感じです。

  • トピックを分析シートのデータモデルにすると、複数データセットのフィールドを1つのビジュアルに置ける
  • あらかじめ1つに結合したデータセットは不要。各データセットは元のまま、定義した関係にもとづいて実行時に結合される
  • 準備として、データセット間の関係の定義が必要。関係が無いとビジュアルは描画できない

使うデータ

架空の店舗売上をテーマに、日付でつながる3つのデータセットを用意しました。サンプルなので中身は単純にしています。

データセット 主な列
sales(売上) 日付 / 売上金額 / 客数
weather(天気) 日付 / 天気 / 最高気温
campaign(キャンペーン) 日付 / キャンペーン / 割引率

売上を中心に、天気とキャンペーンを日付でつなぐ構成です。中身はそれぞれこんなデータにしています。

sales(売上)

日付 売上金額 客数
2026-08-01 120000 300
2026-08-02 150000 360
2026-08-03 90000 220
2026-08-04 200000 480

weather(天気)

日付 天気 最高気温
2026-08-01 晴れ 33
2026-08-02 晴れ 34
2026-08-03 27
2026-08-04 晴れ 35

campaign(キャンペーン)

日付 キャンペーン 割引率
2026-08-01 なし 0
2026-08-02 週末セール 10
2026-08-03 なし 0
2026-08-04 夏の大感謝祭 20

いずれも2026-08-01からの数日分で、3つとも同じ日付を持っています。この日付が結合キーになります。

トピックを作る

データ画面のトピックタブから、Create topicを選びます。今回は新しいトピックを使うので、Create legacy topicではなくCreate topicです。

alt text

トピック名と説明を入れて、追加するデータセットを選びます。今回は「店舗売上分析」という名前にして、sales・weather・campaignの3つを選びました。選んだらCreateします。

alt text

トピックに関係を定義する

作成した直後はまだ関係が定義されていないので、Relationshipsタブは「There are no relationships」の状態です。Editから編集します。

alt text

関係は、データセット同士をどの列でつなぐかを指定するものです。結合列を手で選ぶほか、JSONやYAMLでまとめてアップロードすることもできます(トピック内のデータセット間の関係の定義)。

今回はsalesを中心に、weatherとcampaignをそれぞれ日付でつなぎました。右側のペインで「日付 = 日付」のペアが2つできています。定義できたらSaveします。

alt text

関係を組むには、両側のデータセットに結合できる共通の列が必要です。今回はどのデータセットも日付を持っているので、日付でつなげます。JSONで書くと次のようになります。

{
  "datasetPairs": [
    {
      "datasetLeft": { "datasetName": "sales-csv", "joinColumnNames": ["日付"] },
      "datasetRight": { "datasetName": "weather-csv", "joinColumnNames": ["日付"] }
    },
    {
      "datasetLeft": { "datasetName": "sales-csv", "joinColumnNames": ["日付"] },
      "datasetRight": { "datasetName": "campaign-csv", "joinColumnNames": ["日付"] }
    }
  ]
}

関係を保存できたら、Publishでトピックを公開します。

alt text

分析シートで複数データセットのビジュアルを作る

トピックができたら、分析を作成します。分析の作成ダイアログでトピックタブを開き、「店舗売上分析」を選びます。

alt text

分析シートでは、トピック内のどのデータセットからでもフィールドを選べます。複数データセットのフィールドを1つのビジュアルに置くと、定義した関係にもとづいてQuick Sightが実行時に結合します(Quick Sight 分析でのトピックの使用)。

今回は積み上げ棒コンボグラフで、X軸に日付(campaign)、棒に売上金額(sales)、折れ線に最高気温(weather)を置きました。別々のデータセットのフィールドが1つのビジュアルにまとまって描画されます。

alt text

あらかじめ3つを1つに結合したデータセットを用意していないのに、トピックに定義した関係だけで、売上と気温という別データセットの値を1枚のグラフで並べられました。

関係がないと描画できない

比較のため、関係を定義していない状態も見てみます。トピックから関係を消すと、Relationshipsタブは「There are no relationships」に戻ります。

alt text

この状態で分析シートに複数データセットのフィールドを一緒に置くと、「これらのフィールド間の有効な関係はありません。同じデータセットからフィールドを選択するか、データセット間のリレーションシップを作成してそれらを一緒に使用してください。」というメッセージになって描画できませんでした。

alt text

まとめ

新しいトピックを分析シートのデータモデルにすると、複数データセットのフィールドを1つのビジュアルにまとめられて、あらかじめ1つに結合したデータセットを作らなくてよくなりました。

とはいえ触ってみると、トピックの作成自体が実質的な事前準備だとも感じました。データを1つに結合しておく作業が、トピックで関係を定義する作業に置き換わった、という見方もできます。

それでも私がメリットに感じたのは、つなぎ方を使い分けられる点です。カスタム指示で自然言語でデータの関連性を補足するパターンと、Relationshipsで結合キーをきっちり決めるパターンの2つがあり用途に応じて選べます。

あわせて、意味づけはデータセット側、複数データセットのつなぎはトピック側、というように役割を綺麗に分けられるのも扱いやすいところです。

複数データにまたがるビジュアルを、元のデータセットを作り直さずに用意したい場面で便利だと思います。それでは。

参考リンク

この記事をシェアする

関連記事