プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
12c (12.2.1.1.0)
E77227-02
目次へ移動
目次

前
前へ
次
次へ

ブリッジ表のモデリング

ブリッジ表では、表間の多対多の関係を解決できます。

たとえば、「従業員」表に従業員に関する情報を格納して、従業員が担当している業務に関する情報を「業務」表に格納するとします。ただし、組織の従業員が複数の業務を担当している場合や、同じ業務を複数の従業員が担当している場合があります。このような状況では、「従業員」表と「業務」表の関係が多対多になります。

この多対多の関係を解決するには、「割当て」というブリッジ表(中間表)を作成します。「割当て」表の各行は一意で、1つの業務を担当する1人の従業員を表します。従業員が複数の業務を担当している場合、「割当て」表にはその従業員について複数の行が設定されます。1つの業務を複数の従業員が担当している場合、「割当て」表にはその業務について複数の行が設定されます。「割当て」表の主キーはコンポジット・キーで、従業員IDが含まれる列と業務IDが含まれる列で構成されます。

「割当て」表は、「業務」表と「従業員」表の間のブリッジ表として機能するため、「割当て」表を使用すると、従業員と業務の多対多の関係を次のように解決できます。

この図は、ブリッジ表および関連するディメンション表の例の物理レイヤー・ビューを示しています。

問合せ処理を効率的にするために、ブリッジ表に追加列として重みファクタを含めて、このファクタがETL時に計算されるようにする必要があります。

次の各項では、物理レイヤーおよびビジネス・モデルとマッピング・レイヤーでブリッジ表をモデリングする方法を説明します。

ブリッジ表とそれに関連するディメンション表に対する物理レイヤーでの結合の作成

物理レイヤーでブリッジ表をモデリングするには、対象のブリッジ表とその関連ディメンション表との間に結合を作成します。

ブリッジ表とそれに関連する表に物理結合を作成するには:

  1. 管理ツールの物理レイヤーで、ファクト表、ブリッジ表および関連するディメンション表を選択します。オブジェクトを右クリックして、「物理図」を選択し、「選択されたオブジェクトのみ」を選択します。
  2. 物理図を表示したまま、ツールバーの「新規結合」をクリックします。ブリッジ表を選択して、ディメンション表を1つ選択します。
  3. 「物理外部キー」ダイアログの「OK」をクリックします。
  4. その他の関連ディメンション表について、手順23を繰り返します。
  5. 必ず、関連ディメンション表の1つがファクト表に結合されるようにします。

    この図は、物理図での物理表の例の間の結合を示しています。

関連するディメンション表の単一ディメンションでのモデリング

ビジネス・モデルとマッピング・レイヤーでは、ブリッジ表に関連付けられている2つのディメンション表を単一ディメンションでモデリングするか、または2つの個別のディメンションでモデリングするかを選択できます。

関連ディメンション表を単一ディメンションでモデリングするには、ブリッジ表と他方のディメンション表にマップする2つ目の論理表ソースを作成し、他方のディメンション表から列を追加します。

2つの個別の論理表ソースを設定することによって問合せがより効率的になります。これは、この設定によって、単一のディメンション表に対する問合せにブリッジ表が関係しなくなるためです。

ブリッジ表に関連付けられているディメンション表を単一ディメンションでモデリングするには:

  1. ブリッジ表、およびファクト表に結合されていない関連ディメンション表以外のオブジェクトを物理レイヤーからビジネス・モデルとマッピング・レイヤーにドラッグします。前述の例では、「割当て」表と「従業員」表以外のすべてのオブジェクトをドラッグします。
  2. 「ビジネス・モデルとマッピング」レイヤーで、ファクト表に結合されているディメンション表(この例では「業務」表)を右クリックして、「新規オブジェクト」「論理表ソース」の順に選択します。
  3. 「論理表ソース」ダイアログで、新しいブリッジ表ソースの名前を入力します。ブリッジ表の名前(たとえば「割当て」)をソースの名前として使用することをお薦めします。
  4. 「論理表ソース」ダイアログの右上隅にある「追加」ボタンをクリックします。「名前」リストからブリッジ表(前述の例では「割当て」)を選択し、「選択」をクリックします。
  5. 追加」ボタンを再度クリックして、ファクト表に結合されていない関連ディメンション表(この例では「従業員」)を選択し、「選択」をクリックします。
  6. 「論理表ソース」ダイアログで「OK」をクリックします。

    この図は、ブリッジ表ソースの「論理表ソース」ダイアログを示しています。

  7. ファクト表に結合されていないディメンション表(この例では「従業員」表)の列を、「物理」レイヤーから、作成したばかりの論理表ソースにドラッグします。

これで、ブリッジ表ソースを伴うものも含め、論理表に基づいてディメンションを作成することができるようになりました。

関連するディメンション表の個別ディメンションでのモデリング

1つのブリッジ表に関連付けられている2つのディメンション表を単一のディメンションでモデリングする処理の代替として、それらのディメンション表を個別のディメンションでモデリングすることができます。

これを実行するには、ファクト表と、ファクト表に物理的には結合されていないディメンション表との間に論理結合を作成して、他の表マッピングを追加するようにその同じディメンション表の論理表ソースを変更します。

ブリッジ表に関連付けられているディメンション表を個別ディメンションでモデリングするには:

  1. 物理レイヤーからビジネス・モデルとマッピング・レイヤーにオブジェクトをドラッグします。ディメンション表を個別ディメンションでモデリングするため、ブリッジ表に関連付けられているディメンション表を両方ともドラッグします。ブリッジ表オブジェクトをドラッグ・アンド・ドロップする必要はありません。
  2. ビジネス・モデルとマッピング・レイヤーで、ファクト表、およびブリッジ表に関連付けられている2つのディメンション表(前述の例では、「ファクト」、「従業員」および「業務」)を選択します。それらのオブジェクトを右クリックして、「ビジネス・モデル図」を選択し、「選択された表のみ」を選択します。
  3. ビジネス・モデル図を表示したまま、ツールバーの「新規結合」をクリックします。ファクト表を選択して、現在ファクト表に結合されてないディメンション表を選択します。
  4. 「論理結合」ダイアログの「OK」をクリックします。

    この図は、ビジネス・モデル図での論理表の例の間の結合を示しています。

  5. 論理結合を作成した論理表の論理表ソースをダブルクリックします(前述の例では、「従業員」)。
  6. 「論理表ソース」ダイアログの右上隅にある「追加」ボタンをクリックします。「名前」リストからブリッジ表(前述の例では「割当て」)を選択し、「選択」をクリックします。
  7. 追加」ボタンを再度クリックして、もう1つの関連ディメンション表(前述の例では「業務」)を選択し、「選択」をクリックします。
  8. 「論理表ソース」ダイアログで「OK」をクリックします。

    この図は、変更したディメンション表ソースの「論理表ソース」ダイアログを示しています。

これで、ブリッジ表に関連付けられている両方の論理表を含め、論理表に基づいてディメンションを作成することができるようになりました。