この章では、ショートカットの概要およびOracle Data Integratorでのショートカットの使用方法について説明します。
この章には次の項が含まれます:
Oracle Data Integratorは、様々なバージョンのソース・アプリケーションから大規模データ・ウェアハウスへのデータ移入に使用されることがよくあります。同じ表と列、同じ制約、同じ変換など、同じソース・アプリケーションの異なる2つのバージョン間によくある大きな共通性を示すために、Oracle Data Integratorにはショートカットが導入されました。ショートカットは共通のオブジェクトに対して個別の場所で作成されます。これらのショートカットは、デプロイ時(たとえば、設計リポジトリからランタイム・リポジトリへのエクスポート時)に、ソース・アプリケーションの指定バージョンに対する最終オブジェクトとしてマテリアライズされます。
ショートカットは、Oracle Data Integratorオブジェクトへのリンクです。データストア、マッピング、再使用可能マッピング、パッケージおよびプロシージャのショートカットを作成できます。
参照先オブジェクトは、ショートカットによって直接参照されるオブジェクトです。ショートカットの参照先オブジェクトがショートカットである場合もあります。
ベース・オブジェクトは元のベース・オブジェクトです。ショートカットに関連付けられる実際のオブジェクトです。ベース・オブジェクトへの変更は、このオブジェクトに対して作成されたすべてのショートカットに反映されます。
ショートカットをマテリアライズすると、設計リポジトリで、最終的なベース・オブジェクトと同じプロパティを持つ実際のオブジェクトに変換されます。マテリアライズされたショートカットでは、その名前、関係およびオブジェクトIDが保持されます。
特定のタグに基づいてショートカットのマテリアライズを管理するために、リリース・タグが導入されました。リリース・タグは、フォルダおよびモデルに追加できます。
詳細は、「プロジェクトでのショートカットの使用」を参照してください。
ショートカットは、データストア、マッピング、パッケージおよびプロシージャのODIオブジェクトに対して作成できます。
アイコンに表示される矢印によって、ショートカットを元のオブジェクトと区別できます。たとえば、アイコンはプロシージャのショートカットです。
ショートカット参照オブジェクトは、デザイナ・ナビゲータのベース・オブジェクトと同じノードを表示します。
ショートカット作成のためのガイドライン
ショートカットは、通常、参照先オブジェクトと同様に使用されます。ただし、ショートカットを作成する場合は、次のルールが適用されます:
データストア: 異なるモデル/サブモデルにわたってデータストアのオブジェクト・ショートカットを作成できますが、ソース・モデルと宛先モデルは同じテクノロジで定義する必要があります。また、モデルにデータストアや、表名が同じ別のデータストアへのショートカットを含めることはできません。1つのモデル内の2つのショートカットに、同じベース・オブジェクトを含めることはできません。
データストアのショートカットは、マッピングのソースまたはターゲットとして、あるいはパッケージ内のデータストアとして使用できます。データストアのショートカットが含まれているマッピングやパッケージは、ベース・データストアに加え、データストアのショートカットやモデルを参照します。
パッケージ、マッピング、再使用可能マッピングおよびプロシージャ: 特定のODIフォルダに属しているパッケージ、マッピングおよびプロシージャのオブジェクト・ショートカットを作成できます。
プロジェクト内のマッピング、プロシージャおよびパッケージのショートカットは、同じオブジェクトに属しているオブジェクト(マッピング、プロシージャおよびパッケージ)のみを参照できます。
パッケージのショートカットは、ロード計画ステップで使用できます
マッピング・ショートカットは、マッピング、再使用可能マッピング、パッケージまたはロード計画ステップ内で使用できます。
プロシージャのショートカットは、パッケージまたはロード計画ステップで使用できます
ショートカットをロード計画ステップに追加すると、Oracle Data Integratorでシナリオが生成され、シナリオ実行ステップとして追加されます。
ショートカット・エディタには、Oracle Data Integratorでショートカットを編集および管理するための単一の環境が用意されています。図14-1に、ショートカット・エディタの概要を示します。
ショートカット・エディタには、次のタブがあります:
定義
ショートカットの名前、参照先オブジェクトおよびベース・オブジェクトが含まれています
実行(パッケージ、マッピング(再使用可能マッピング以外)およびプロシージャのショートカットの場合のみ)
「直接実行」と「シナリオ実行」タブで構成され、以前の実行結果が表示されます
シナリオ(パッケージ、マッピング(再使用可能マッピング以外)およびプロシージャのショートカットの場合のみ)
このコンポーネント用に生成されたシナリオが表形式で表示されます
バージョン
ショートカットのバージョンを管理するために必要な詳細が含まれています
ショートカット・エディタには、参照を処理するための2つのボタンがあります:
参照先オブジェクトの表示: 参照先オブジェクトのエディタを表示する場合にクリックします
ベース・オブジェクトの表示: ベース・オブジェクトのエディタを表示する場合にクリックします
ショートカットは、ベース・オブジェクトと同じ名前にできます。ショートカット名は変更できますが、オブジェクトを使用およびマテリアライズする際に、ショートカット参照オブジェクト名をベース名のかわりに使用する必要があることに注意してください。
ショートカットは、一度に1つ以上のオブジェクトに対して作成することも、複数の場所で同じオブジェクトに対して作成することもできます。
また、1つのフォルダ内の2つのショートカット・オブジェクトが同じベース・オブジェクトを参照できないことに注意し、「ショートカット作成のためのガイドライン」に従ってください。
ショートカットを作成するには:
デザイナ・ナビゲータで、ショートカットを作成するオブジェクトを選択します。
同じタイプのオブジェクトを複数選択できます。
オブジェクトを右クリックして「コピー」を選択します。
ショートカットを挿入する場所に移動します。挿入する場所は、別のフォルダまたはモデルの親である必要があります。
フォルダまたはモデルを右クリックし、「ショートカットとして貼付け」を選択します。
「ショートカットとして貼付け」メニュー項目は、次の場合にのみ使用可能になります:
前の操作が「コピー」操作でした。
コピーされたオブジェクトが、ショートカットを作成できるオブジェクトです。詳細は、「ショートカット・オブジェクト」を参照してください。
新しい場所はコピーされたオブジェクトに対して有効です。適切な場所は次のとおりです:
データストアのショートカットの場合: ソース・モデルとは異なるモデルまたはサブモデルのノード
マッピング、パッケージおよびプロシージャのショートカットの場合: ソース・フォルダと同じプロジェクトにあるソース・フォルダ以外のフォルダ・ノード
デザイナ・ナビゲータに新しいショートカットが表示されます。
この項では、Oracle Data Integratorプロジェクトでショートカットを使用するときに実行できるアクションについて説明します。次の処理を実行できます。
指定のモデルまたはフォルダ内のオブジェクトに対して、一度に複数のショートカットを作成できます。
モデル・ノードに対して迅速に大量のショートカットを作成すると、新しいモデルは、データストアがすべてショートカットとして作成されたソース・モデルのコピーになります。
フォルダ・ノードに対して迅速に大量のショートカットを作成すると、新しいフォルダは、マッピング、パッケージおよびプロシージャがすべてショートカットとして作成されたソース・フォルダのコピーになります。
迅速に大量のショートカットを作成するには:
デザイナ・ナビゲータで、フォルダまたはモデルのノードを選択します。
右クリックして「ショートカットによる選択の重複」を選択します。
デザイナ・ナビゲータでの現在の選択を参照先オブジェクトに移動する場合は、このアクションを使用します。
参照先オブジェクトにジャンプするには:
デザイナ・ナビゲータで、参照先オブジェクトを検索するショートカットを選択します。
右クリックして「ショートカット」→「ショートカットを辿る」の順に選択します。
デザイナ・ナビゲータで参照先オブジェクトが選択されます。
デザイナ・ナビゲータでの現在の選択をベース・オブジェクトに移動する場合は、このアクションを使用します。
ベース・オブジェクトにジャンプするには:
デザイナ・ナビゲータで、ベース・オブジェクトを検索するショートカットを選択します。
右クリックして「ショートカット」→「ベースにジャンプ」の順に選択します。
デザイナ・ナビゲータでベース・オブジェクトが選択されます。
ショートカットを実行すると、ショートカットが参照している基礎となるプロシージャが実行されます。ショートカットはOracle Data Integratorの他のオブジェクトと同様に実行されます。『Oracle Data Integratorの管理』の統合プロセスの実行に関する項を参照してください。
ショートカットをマテリアライズすると、設計リポジトリで、最終的なベース・オブジェクトと同じプロパティを持つ実際のオブジェクトに変換されます。マテリアライズされたショートカットでは、その名前、関係およびオブジェクトIDが保持されます。ショートカットへの直接参照はすべて新規のオブジェクトを指し示すように自動的に更新されます。これはリリース・タグにも適用されます。マテリアライズされたショートカットにリリース・タグが含まれている場合は、リリース・タグ・フォルダまたはモデル内のベース・オブジェクトに対するすべての参照が、新しいオブジェクトに変更されることになります。
注意: マッピング・ショートカットをマテリアライズする際に、マッピングに複数の論理スキーマ環境がある場合、たとえばマッピングにソース・データストアと同じ論理スキーマのステージング領域がある場合、マテリアライズされたマッピングにフローの変更などのエラーが含まれることがあります。マテリアライズされたマッピングにエラーがないか確認してください。 |
ショートカットは、マテリアライズされたオブジェクトとして、またはショートカットとしてエクスポートおよびインポートできます。
標準および複数エクスポートでは、マテリアライズはサポートされていません。標準または複数エクスポートを使用している場合、ショートカットはショートカット・オブジェクトとしてエクスポートされます。インポートでは、ショートカットはショートカットとしてインポートされます。
スマート・エクスポートを実行する際、そのエクスポートにショートカットが含まれている場合は、ショートカットをマテリアライズするように選択できます:
ショートカットをマテリアライズしないことを選択すると、ショートカットとベース・オブジェクトの両方がエクスポートされます。
ショートカットをマテリアライズするように選択すると、ショートカットがショートカットと同じオブジェクトIDを持つ実際のオブジェクトに変換されてエクスポート・ファイルに格納されます。このエクスポート・ファイルは、別のリポジトリにインポートすることも、元のリポジトリに戻すこともできます。
このエクスポート・ファイルを別のリポジトリにインポートすると、元のショートカット・オブジェクトは実際のオブジェクトになります。
このエクスポート・ファイルを元のリポジトリにインポートすると、マテリアライズされたオブジェクトのIDがショートカットのIDと照合されることになります。この照合プロセスを管理するには、スマート・インポート機能を使用します。スマート・インポート機能は、マテリアライズされたオブジェクトでショートカットを置換できます。
詳細は、「スマート・エクスポートおよびスマート・インポート」を参照してください。
リリース・タグを使用すると、特定のタグに基づいてショートカットのマテリアライズを管理できます。また、リリース・タグを使用して各自のメタデータを整理することも可能です。リリース・タグは、テキスト文字列の形式でフォルダおよびモデル・フォルダに追加できます。
リリース・タグについて、次のことに注意してください:
2つのモデルのリリース・タグと論理スキーマが同じでない可能性があります。リリース・タグは、モデルおよびフォルダに設定されます。
リリース・タグは、マテリアライズおよびエクスポートでのみ使用されます。
フォルダのリリース・タグは、フォルダのパッケージ、マッピングおよびプロシージャの内容にのみ適用されます。リリース・タグは、サブフォルダには継承されません。
新規のリリース・タグを追加したり既存のリリース・タグを割り当てるには:
「デザイナ・ナビゲータ」ツールバーのメニューから、「リリース・タグの編集...」を選択します。
リリース・タグ・ウィザードが開きます。
「リリース・タグ名」フィールドで、次のいずれかの操作を実行します:
新しいリリース・タグ名を入力する
リストからリリース・タグ名を選択する
このリリース・タグ名は、指定のフォルダに追加されます。
使用可能なフォルダが、左側の使用可能リストに表示されます。リリース・タグを追加するフォルダを使用可能リストから選択し、矢印を使用して選択済リストに移動します。
リリース・タグをモデルに追加する場合は、「次」をクリックします。
リリース・タグをモデルに追加しない場合は、「終了」をクリックします。
使用可能なモデルおよびモデル・フォルダが、左側の使用可能リストに表示されます。リリース・タグを追加するモデルまたはモデル・フォルダ(あるいはその両方)を使用可能リストから選択し、矢印を使用して選択済リストに移動します。
「終了」をクリックします。
選択したプロジェクト・フォルダおよびモデルにリリース・タグが追加されます。
ヒント: 指定のリリースのすべてのオブジェクトをスマート・エクスポートに追加するように選択することで、スマート・エクスポートの実行時にリリース・タグを使用できます。詳細は、「スマート・エクスポートの実行」を参照してください。 |
この項では、ショートカットで実行できる拡張アクションについて説明します。次のような拡張アクションがあります:
データストアのショートカットに対するデータ/データの表示アクション
データストアのショートカットに対してデータ・アクションまたはデータの表示アクションを実行し、ショートカットが参照している基礎となるデータストアのデータを表示または編集できます。
ショートカットが参照しているデータストアのデータを表示または編集するには、「データストアのデータの編集および表示」で説明している標準の手順に従ってください。
モデル、サブモデルまたはデータストアのショートカットに対する静的チェックの実行
モデル、サブモデルまたはデータストアのショートカットに対して静的チェックを実行できます。この拡張アクションにより、このショートカットが参照している基礎となるオブジェクトに対して静的チェックが実行されます。
モデル、サブモデルまたはデータストアのショートカットに対して静的チェックを実行するには、「モデル、サブモデルまたはデータストアに対する静的チェックの実行」で説明している標準の手順に従ってください。
データストア・ショートカットのエラー・レコードの確認
データストアのショートカットが参照しているデータストアのエラー・レコードを確認できます。
データストアのショートカットのエラー・レコードを確認するには、「エラーのあるレコードの確認」で説明している標準の手順に従ってください。
ショートカットのシナリオの生成
マッピング(再使用可能マッピング以外)、パッケージおよびプロシージャのショートカットからシナリオを生成できます。この拡張アクションにより、ショートカットが参照している基礎となるオブジェクトのシナリオが生成されます。生成されたシナリオは、デザイナ・ナビゲータの参照先オブジェクトの下ではなく、ショートカットの下に表示されることに注意してください。
ショートカットのシナリオを生成するには、「シナリオの生成」で説明している標準の手順に従ってください。
ショートカットを含むモデルのリバースエンジニアリング
ショートカットを含むモデルは、RKM Oracleを使用してリバースエンジニアリングできます。このナレッジ・モジュールには、データベースから取得する実際の表と同じ表名のショートカットを管理するSHORTCUT_HANDLING_MODEオプションがあります。このオプションには、3つのいずれかの値を使用できます:
ALWAYS_MATERIALIZE: 競合するショートカットが常にマテリアライズされ、データストアがリバースされます(デフォルト)。
ALWAYS_SKIP: 競合するショートカットが常にスキップされ、リバースされません。
PROMPT: 「検出されたショートカット競合」ダイアログが表示されます。競合するショートカットの処理方法を定義できます:
競合するデータストアのショートカットをマテリアライズし、リバースエンジニアリングする場合は、「マテリアライズ」を選択します。
競合するショートカットをスキップする場合は、「マテリアライズ」の選択を解除します。選択を解除したデータストアはリバースされず、ショートカットがそのまま残ります。
注意: データストア・ショートカットを含むモデルをリバースエンジニアリングする際、ショートカットをマテリアライズする場合、リバースエンジニアリング・プロセスでは、データストア・ショートカットとは別の属性を持つデータベース・オブジェクトを増分処理します。たとえば、データストア・ショートカットにデータベース・オブジェクトに存在しない属性がある場合、その属性は他の場所で使用されるという仮定のもとに、リバースおよびマテリアライズされたデータストアから削除されません。他のRKMまたは標準リバース・エンジニアリングを使用してショートカット・モデルをリバース・エンジニアリングする場合、競合するショートカットがマテリアライズされ、データストアがリバースされます。 |
リバースエンジニアリングの詳細は、第3章「データ・モデルおよびデータストアの作成および使用」を参照してください。