AI注目記事のキュレーターページ

← 一覧へ戻る

重要度 高2026-07-07 17:07:39

Amazon QuickSightのマルチデータセット関係におけるデータモデリングパターン

サマリー

Amazon QuickSightのマルチデータセット関係におけるデータモデリングパターンについて解説しています。各シナリオに対する具体的な実装ガイダンスやサンプルSQLが提供され、データモデルの設計に役立つ情報が含まれています。特に、異なるスキーマパターンや運用能力に焦点を当てています。

本文

このシリーズの第1部では、Amazon QuickSightのマルチデータセット関係を紹介し、次元モデリングの基本概念、クリーンなデータモデルを設計するためのベストプラクティス、ランタイム結合と事前結合データセットを使用する際の意思決定フレームワークについて説明しました。まだ第1部を読んでいない方は、まずそちらをお勧めします。
この投稿では、概念からパターンに移行します。各スキーマについて、テーブル構造、ユースケース、実装手順、サンプルSQLクエリを示します。また、追加のモデリングステップが必要な高度なシナリオの回避策についても説明し、現在の制限事項の要約で締めくくります。
注意:現在のリリースのすべてのマルチデータセット関係は内部結合を使用します。両方のデータセットで一致するキーを持つ行のみがクエリ結果に表示されます。データモデルをそれに応じて設計してください。
サポートされているパターン
以下の7つのシナリオは、QuickSightのマルチデータセット関係によってネイティブにサポートされています。各シナリオは一般的なデータモデリングパターンにマッピングされ、具体的な実装ガイダンスとサンプルSQLが提供されます。
シナリオ1:シンプルなスタースキーマ
最も一般的で推奨されるパターンです。中央のファクトデータセットが複数の次元データセットに関連しています。


テーブル
タイプ
カーディナリティ
キー列
属性/測定


SALES_FACT
ファクト
高:数百万から数十億行
sale_id (PK) customer_id (FK) product_id (FK) time_id (FK) store_id (FK)
quantity revenue cost


CUSTOMER_DIM
次元
中:数千から数百万行
customer_id (PK)
name, email, city, state, country, segment


PRODUCT_DIM
次元
低:数百から数千行
product_id (PK)
product_name, category, brand, unit_price


TIME_DIM
次元

time_id (PK)
date, month, quarter, year, day_of_week


STORE_DIM
次元
低から中
store_id (PK)
store_name, region, manager, sqft


ユースケース
顧客セグメントと地域別の総売上。
製品カテゴリー別の月次収益トレンド。
平均注文額によるトップ10店舗。

実装
各ファクトおよび次元テーブルのために別々のデータセットを作成します。
一致するキーを介して関係を定義します:

SALES_FACT.CUSTOMER_ID → CUSTOMER_DIM.CUSTOMER_ID
SALES_FACT.PRODUCT_ID → PRODUCT_DIM.PRODUCT_ID
SALES_FACT.TIME_ID → TIME_DIM.TIME_ID
SALES_FACT.STORE_ID → STORE_DIM.STORE_ID

すべての結合は単一ホップ(ファクトから次元)であり、チェーンは必要ありません。
非正規化された次元は、追加の結合なしで高速なGROUP BY操作をサポートします。

サンプルクエリ
顧客セグメントと地域別の総売上:

SELECT c.segment, c.region,
SUM(f.revenue) AS total_revenue,
COUNT(DISTINCT f.sale_id) AS order_count
FROM sales_fact f
JOIN customer_dim c ON f.customer_id = c.customer_id
GROUP BY c.segment, c.region
ORDER BY total_revenue DESC;

シナリオ2:スノーフレークスキーマ
スノーフレークスキーマは、次元テーブルをチェーンに正規化することでスタースキーマを拡張します。たとえば、顧客次元は地理テーブルにリンクし、地理テーブルは地域テーブルにリンクすることがあります。各テーブルはそれぞれの粒度を維持します。

(以下、シナリオ3〜7の詳細が続きます)

Contact us

ご質問・ご相談等ございましたらお気軽にご相談ください。

  • フォームでのご相談
    フォームでのご相談

    ホームページ制作、運用・更新における
    ご相談はお気軽にご連絡ください。

    お問い合わせ・ご相談
  • お電話でのお問い合わせ
    お電話でのお問い合わせ

    お電話でのご相談も随時受け付けております。
    見積依頼などもお気軽にご連絡ください。

    052-700-8712 平日 10:00~19:00