MCN Learning Community > ナレッジ集 > Data 360 > リレーションとカーディナリティ

リレーションとカーディナリティ

リレーションとカーディナリティ – MCN Learning Community

🍀 リレーションとカーディナリティ

リレーションとは、 DMO同士を紐づける関係 のことです。

そして、リレーションを設計するときに重要になるのが、 カーディナリティ です。

カーディナリティとは、 DMO同士が「1対1」「1対多」「多対1」のどの関係で結び付くかを表すものです。
カーディナリティの基本概念

カーディナリティの種類

1:1

1対1

一方のレコードに対して、 もう一方のレコードが1件だけ紐づく関係です。

1:N

1対多

1件のレコードに対して、 複数のレコードが紐づく関係です。

N:1

多対1

複数のレコードが、 1件のレコードを参照する関係です。

⚠️ カーディナリティの考え方

  • 1つのDMOに紐づいているDMOの総数を表すものではありません。
  • 関連付けるDMOの組み合わせごとに定義します。
  • 業務上の関係が何対何になるかを基準に判断します。
カーディナリティの正しい考え方と誤った考え方

販売注文と注文明細の例

販売注文DMO → 注文明細DMO

1回の販売注文には、 複数の商品が含まれることがあります。

そのため、販売注文DMOから注文明細DMOを見た場合、 カーディナリティは 1:N(1対多) となります。

販売注文DMOと注文明細DMOの1対多の関係

販売注文と個人の例

販売注文DMO → Individual DMO

1件の販売注文は、 通常1人の顧客に紐づきます。

一方で、1人の顧客は複数回注文を行うことができます。

そのため、販売注文DMOからIndividual DMOを見た場合、 カーディナリティは N:1(多対1) となります。

この構造では、 複数の販売注文レコードが同じIndividualを参照します。

販売注文DMOとIndividual DMOの多対1の関係

設計するときのポイント

カーディナリティを決めるときに確認すること

  • 業務上、1件に対して何件のレコードが紐づくか
  • どちらのDMOが参照元で、どちらが参照先になるか
  • 同じキーを持つレコードが複数存在する可能性があるか
  • セグメントや集計でどの方向にデータをたどるか
  • 後続処理にどのような影響があるか

⚠️ 設定後の変更に注意

カーディナリティを変更する必要がある場合は、 既存のリレーションを削除して再作成する必要があります。

リレーションを作成する前に、 業務要件とデータ構造を十分に確認しておきましょう。

✅ カーディナリティは、DMO同士が「何対何」で結び付くかを表します。 リレーションの向きと業務上の関係を確認して設定しましょう。