ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Data Integratorスタート・ガイド
11g リリース1(11.1.1)
B65041-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

7 パッケージの使用

この章では、Oracle Data Integratorでのパッケージの使用方法について説明します。例としてLoad Sales Administrationパッケージを使用します。パッケージおよびアプリケーション間のデータ統合の自動化の概要を示します。

この章の内容は、次のとおりです。

7.1 概要

この項では、Oracle Data Integratorでのパッケージを使用したデータ統合の自動化の概要を示します。

7.1.1 データ統合フローの自動化

データ統合フローの自動化は、パッケージ内の様々なステップ(インタフェース、プロシージャなど)の実行を順序付け、これらの各ステップの使用準備済コードが含まれた本番シナリオを生成することで行われます。

この章では、様々なステップの実行を順序付ける方法について説明します。本番シナリオの生成方法は、第9章「統合されたアプリケーションのデプロイ」に記載されています。

7.1.2 パッケージ

パッケージは実行ダイアグラム内に編成された一連のステップで構成されます。パッケージは、本番のシナリオの生成に使用される主要なオブジェクトです。データ統合ワークフローを表し、たとえば、次のようなジョブを実行できます。

  • データストアまたはモデルでのリバースエンジニアリング・プロセスの起動

  • 管理者への電子メールの送信

  • ファイルのダウンロードと解凍

  • インタフェースの実行順序の定義

  • パラメータを変更しながら実行コマンドを繰り返すループの定義

このスタート・ガイドの例では、インタフェースの順序を使用してSales Administrationアプリケーションをロードします。このアプリケーションの表の間に参照制約があるため、あらかじめ定義された順序でターゲット表をロードする必要があります。たとえば、TRG_CITY表が先にロードされていないと、TRG_CUSTOMER表をロードできません。

第7.2項「Load Sales Administrationパッケージの例」で、Demoプロジェクトに含まれているインタフェースおよび第6章「統合インタフェースの使用」で作成したインタフェースを含むパッケージを作成して実行します。

7.1.2.1 シナリオ

シナリオは、ソース・コンポーネント(インタフェース、パッケージ、プロシージャ、変数)を本番に移行するために設計されます。シナリオは、そのコンポーネントのコード(SQL、シェルなど)の生成により、生成されます。

生成されると、ソース・コンポーネントのコードが固定され、シナリオが作業リポジトリ内に格納されます。シナリオはエクスポートして他の本番環境にインポートできます。


注意:

生成後、シナリオのコードは固定され、作成に使用されたパッケージやデータ・モデルのその後の変更によって影響されません。シナリオを更新する必要がある場合(インタフェースの1つが変更された場合など)、新しいバージョンのシナリオをパッケージから生成する必要があります。


詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のシナリオの使用に関する項を参照してください。

第9章「統合されたアプリケーションのデプロイ」で、LOAD_SALES_ADMINISTRATIONシナリオをパッケージから生成し、このシナリオをOracle Data Integrator Studioで実行します。

7.2 Load Sales Administrationパッケージの例

この項の内容は、次のとおりです。

7.2.1 目的

Load Sales Administrationパッケージの目的は、Sales Administrationアプリケーションをロードするためのワークフロー全体を定義し、実行順序を設定することです。

7.2.2 Oracle Data Integratorに用意されている開発物

デモ・リポジトリには、多数の開発物が含まれています。Demoプロジェクトには、図7-1に示す次の開発物が含まれます。

  • 7つのインタフェース:

    • Pop.TRG_CITY: TRG_CITY表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

    • Pop.TRG_COUNTRY: TRG_COUNTRY表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

    • Pop.TRG_CUSTOMER: TRG_CUSTOMER表にデータを移入するインタフェース。このインタフェースは、第6.1項「Pop. TRG_CUSTOMERインタフェースの例」で作成されます。

    • Pop.TRG_PRODUCT: TRG_PRODUCT表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

    • Pop.TRG_PROD_FAMILY: TRG_PROD_FAMILY表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

    • Pop.TRG_REGION: TRG_REGION表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

    • Pop.TRG_SALES: TRG_SALES表にデータを移入するインタフェース。このインタフェースは、第6.2項「Pop. TRG_SALESインタフェースの例」で作成されます。

  • 1つのプロシージャ:

    Delete Targetsプロシージャは、Sales Administrationアプリケーション内のすべての表を空にします。この操作は、各表でDelete文を使用して行われます。

図7-1 Demoプロジェクト

図7-1については周囲のテキストで説明しています。

7.2.3 問題の分析

Sales Administrationアプリケーションを適切に(参照整合性制約に則して)ロードするには、次の順序でタスクを実行する必要があります。

  1. Sales Administrationの表をDelete Targetsプロシージャを使用して空にします。

  2. 次のものを使用してTRG_COUNTRY表をロードします: Pop.TRG_COUNTRYインタフェース

  3. 次のものを使用してTRG_REGION表をロードします: Pop.TRG_REGIONインタフェース

  4. 次のものを使用してTRG_CITY表をロードします: Pop.TRG_CITYインタフェース

  5. 次のものを使用してTRG_PROD_FAMILY表をロードします: Pop.TRG_PROD_FAMILYインタフェース

  6. 次のものを使用してTRG_PRODUCT表をロードします: Pop.TRG_PRODUCTインタフェース

  7. 次のものを使用してTRG_CUSTOMER表をロードします: Pop.TRG_CUSTOMERインタフェース

  8. 次のものを使用してTRG_SALES表をロードします: Pop.TRG_SALESインタフェース

このような統合プロセスは、Oracle Data Integratorではパッケージ形式で構築されます。

7.2.4 パッケージの作成

この項では、Load Sales Administrationパッケージの作成方法について説明します。Load Sales Administrationパッケージを作成するには、次の手順を実行します:

  1. 新規パッケージの作成

  2. パッケージでのステップの挿入

  3. パッケージ内のステップの順序の定義

7.2.4.1 新規パッケージの作成

新規パッケージを作成するには:

  1. デザイナ・ナビゲータで、「プロジェクト」アコーディオンの「Demo」プロジェクト・ノードを展開します。

  2. 「Sales Administration」ノードを展開します。

  3. 図7-2に示すように、「Sales Administration」フォルダで「パッケージ」ノードを右クリックし、「新規パッケージ」を選択します。

    図7-2 新規パッケージの挿入

    図7-2については周囲のテキストで説明しています。

    パッケージ・エディタが表示されます。

  4. パッケージ・エディタの「定義」タブで、パッケージの名前(Load Sales Administration)を「名前」フィールドに入力します。

  5. 「ファイル」メイン・メニューから「保存」を選択します。

7.2.4.2 パッケージでのステップの挿入

Load Sales Administrationパッケージにステップを挿入するには:

  1. パッケージ・エディタで「ダイアグラム」タブに移動します。

  2. 「ダイアグラム」タブの「プロジェクト」アコーディオンで、次のコンポーネントを1つずつ選択し、ダイアグラムにドラッグ・アンド・ドロップします。

    • Delete Targets(プロシージャ)

    • Pop.TRG_COUNTRY

    • Pop.TRG_REGION

    • Pop.TRG_CITY

    • Pop.TRG_CUSTOMER

    • Pop.TRG_PROD_FAMILY

    • Pop.TRG_PRODUCT

    • Pop.TRG_SALES

    これらのコンポーネントがパッケージに挿入され、ダイアグラムにステップとして表示されます。ステップはまだ順序付けられていないことに注意してください。

7.2.4.3 パッケージ内のステップの順序の定義

ステップを作成した後は、データ処理チェーンにおける各ステップの順序を再設定する必要があります。このチェーンには、次のルールがあります。

  • ステップは、「最初のステップ」として定義された一意のステップで開始します。

  • 各ステップには、成功または失敗という2つの終了状態があります。

  • 失敗または成功したステップは、別のステップに続けるか、パッケージの終点にできます。

  • 失敗した場合の再試行回数を定義できます。

パッケージの始点(最初のステップ)は1つですが、終了ステップは複数設定できます。

Load Sales Administrationパッケージには、成功時のステップのみ含まれています。

最初のステップの定義

Load Sales Administrationパッケージの最初のステップを定義するには:


注意:

第7.2.4.2項「パッケージでのステップの挿入」で、定義された順序でパッケージのコンポーネントをドラッグ・アンド・ドロップした場合、Delete Targetプロシージャが最初のステップとしてすでに識別されており、最初のステップの記号がステップのアイコンに表示されています。この場合、成功時の次のステップを定義します。


  1. 「Delete Target」プロシージャ・ステップを選択し、右クリックします。

  2. コンテキスト・メニューから「最初のステップ」を選択します。

緑色の小さな矢印がこのステップに表示されます。

成功時の次のステップの定義

成功時の次のステップを定義するには:

  1. パッケージのツールバー・タブで、「成功時の次のステップ」を選択します。ink_ok.gifについては周囲のテキストで説明しています。

  2. 「Delete Targets」ステップを選択します。

  3. マウスのボタンを押したまま、成功時の次のステップのアイコンまでカーソルを移動し(ここではPop.TRG_COUNTRYステップ)、マウス・ボタンを放します。

    ステップ間の成功パスを表す緑色の矢印が、「OK」ラベル付きで表示されます。

  4. この操作を繰り返し、成功時の一連の経路に配置するすべてのステップをリンクします。この順序は次のとおりです。

    • Delete Targets(最初のステップ)

    • Pop.TRG_COUNTRY

    • Pop.TRG_REGION

    • Pop.TRG_CITY

    • Pop.TRG_CUSTOMER

    • Pop.TRG_PROD_FAMILY

    • Pop.TRG_PRODUCT

    • Pop.TRG_SALES

    パッケージ・ダイアグラムでの結果の順序は、図7-3に示すようになります。

    図7-3 Load Sales Administrationパッケージ・ダイアグラム

    図7-3については周囲のテキストで説明しています。
  5. 「ファイル」メイン・メニューから「保存」を選択します。

これで、パッケージを実行する準備ができました。