リレーションシップでジョインを効率化
Sigma におけるデータモデリング
Ben Harris
Technical Instructional Designer at Sigma
リレーションシップとは?
ジョインを事前定義
誰でもジョインロジックを使って列を追加可能
リレーションシップとは?
関連テーブルの列が追加されるまでジョインは
実行されない
ウェアハウスコストを削減
→ 必要時のみジョイン
アドホックジョインによる
エラーを削減
リレーションシップ vs. ジョイン
リレーションシップが常にジョインより優れているわけではない
関連データを必要とする場面が限られる場合に最適
リレーションシップ vs. ジョイン
例:
ニッチなトランザクション
データ
主な用途:トランザクションの分析
場合によって
アカウントや顧客情報が必要
リレーションシップ vs. ジョイン
例:
ニッチなトランザクション
データ
3テーブルすべてをジョイン
→ 常に利用可能
ただし
処理が遅く
、多くの用途で
クエリコストが高い
リレーションシップ vs. ジョイン
例:
ニッチなトランザクション
データ
リレーションシップ
が適切:多くの場合ジョイン不要
ユーザーが必要時にアカウント/顧客列を
追加
リレーションシップ vs. ジョイン
ベーステーブルに
ジョイン
と
リレーションシップ
のどちらを使うか決定
デモ
デモ
デモ
デモ
リレーションシップのベストプラクティス
リレーションシップには方向性がある
リレーションシップのベストプラクティス
例:
トランザクション→アカウント:多対一(N:1)リレーションシップ
アカウント→トランザクション:一対多(1:N)リレーションシップ
リレーションシップのベストプラクティス
本コース:
N:1
および
1:1
リレーションシップのみ
では、練習しましょう!
Sigma におけるデータモデリング
Preparing Video For Download...