この演習では、ディスカバー関数を実行することにより、ソース要素とターゲット要素間の関係を検索およびマップする方法を学習します。
ソース要素とターゲット要素間の関係を検索するには、以下のようにします。
- 「データ・プロジェクト・エクスプローラー」ビューで mytestproject プロジェクトを展開して、「マッピング」フォルダーを展開します。
- 前の演習で作成した myfirstmapping.msl マッピング・モデルをダブルクリックし、3 つのペインからなるマッピング・エディターを開きます。 2 つのスキーマ (これらのスキーマは 2 つの異なるデータ・ソースを表すことができます) の統合をモデリングするために、2 つの表で類似していると思われる列の間のマッピングを作成します。この例では、DEPARTMENT 表の MGRNO 列と PROJECT 表の MAJPROJ 列の間にプロジェクト番号の関係があることを知っていると想定します。
- 「ソース」ペインで DEPARTMENT 表の MGRNO 列を選択し、「ターゲット」ペインで PROJECT 表の MAJPROJ 列を選択します。
- マッピング・エディターの任意の場所を右クリックし、「マッピングの作成」を選択します。
エディターには、2 つの列の間に、正方形として表示されるハブの付いたマッピング線が表示されます。
ディスカバー関数を使用してソースとターゲット間の関係を検索することもできます。
- 「ソース」ペインで DEPARTMENT 表を選択し、「ターゲット」ペインで PROJECT 表を選択します。
まず、字句の類似性および名前の意味のアルゴリズムを使用するようにディスカバー関数を設定します。ここでは、名前またはテキスト値を使用してソース要素およびターゲット要素の一致を検索するためです。
- マッピング・エディターの中央ペインで、右クリックします。
- を選択します。
- アルゴリズムの表で、「字句の類似性」および「名前の意味」を選択します。 これらのアルゴリズムでは、テキストおよび名前を検索して、一致を見つけます。
- 「シーケンスを基準にした構成」ラジオ・ボタンを指定し、字句の類似性アルゴリズムが名前の意味のアルゴリズムよりも先に使用されるようにします。 現行シーケンスがその順になっているので、アルゴリズムの順序を変更する必要はありません。
- 「完了」をクリックします。 次に、ディスカバー関数を実行して、モデル内のすべての要素の間で最適の一致を見つけます。
- マッピング・エディターの中央ペインを右クリックして、を選択します。
- 「スコープを指定して関係をディスカバー」ページで、ディスカバー関数のスコープを選択します。 マッピング・エディターの中央ペインからディスカバー関数を起動したため、ソースおよびターゲット表の両方の、すべての要素が選択されています。
スコープはディスカバー関数を起動する方法によって変わります。チェック・ボックスをクリアすると、その要素を関係の検索対象から除外することができます。この例では、すべての要素を選択されたままにしておきます。
- オプション: このウィンドウを再び表示したくない場合は、「次回から関係の検索中はこのウィンドウを表示しない」チェック・ボックスを選択できます。
この例では、チェック・ボックスを選択しないでください。
- 「完了」をクリックします。 「マッピング・エディター」ビューで、発見に成功した一致の間にマッピング線が表示されます。これらは提案された、または発見されたマッピングです。発見されたマッピングのハブが大括弧として表示されていることに注目してください。
- DEPARMENT 表の DEPTNO 列と PROJECT 表の DEPTNO 列の間にあるマッピング線を選択します。線を右クリックして、「マッピングの受け入れ」を選択します。 提案されたマッピングを受け入れると、線の色および線のハブが変わったことに注目してください。
- マッピング・エディターの中央ペインで右クリックして、「すべてのマッピングを拒否」を選択します。 受け入れたマッピングと手動で作成したマッピングの両方がエディター内に残ります。
マッピング・エディターは、マップされた関係のビジュアル表示を行います。