7 パッケージの作成および使用
この章の内容は次のとおりです。
7.1 パッケージの概要
パッケージはOracle Data Integratorの大きい実行単位です。パッケージは実行ダイアグラム内に編成された一連のステップで構成されます。
各ステップは、成功または失敗の実行結果となります。ステップは、実行結果(成功または失敗)に従って別のステップに分岐できます。
7.1.1 ステップの概要
次の表に、様々なステップのタイプを示します。その他の詳細情報の参照先も示しています。
表7-1 ステップのタイプ
タイプ | 説明 | 参照項目 |
---|---|---|
フロー(マッピング) |
マッピング・ステップの追加 | |
プロシージャ |
プロシージャを実行します。 |
|
変数 |
変数の値を宣言、設定、リフレッシュまたは評価します。 |
|
Oracle Data Integratorツール |
ツールボックスから使用可能なこれらのツールは、Oracle Data IntegratorのすべてのAPIコマンドへのアクセスを提供し、オペレーティング・システム・コールを実行します。 |
|
モデル、サブモデルおよびデータストア |
これらのオブジェクトに対してジャーナル化、静的チェックまたはリバースエンジニアリング操作を実行します。 |
たとえば、上の図に表示されている「Load Customers and Invoice」というパッケージの例は、次のアクションを実行します。
-
なんらかのバックアップ操作を実行する「System Backup」プロシージャを実行します。
-
顧客グループ・データストアをロードする「Customer Group」マッピングを実行します。
-
顧客データストアをロードする「Customer」マッピングを実行します。
-
製品データストアをロードする「Product」マッピングを実行します。
-
「Last Invoice ID」ステップの変数をリフレッシュし、この変数の値をパッケージで後で使用できるように設定します。
-
請求書ヘッダー・データストアをロードする「Invoice Headers」マッピングを実行します。
-
請求書データストアをロードする「Invoices」マッピングを実行します。
-
前述のいずれかのステップが失敗となると、このパッケージは、Oracle Data Integratorのツールを使用して電子メールを管理者に送信する「OdiSendMail 2」ステップを実行します。
7.1.2 パッケージの作成の概要
パッケージはパッケージ・ダイアグラム・エディタで作成されます。詳細は、「パッケージ・エディタの概要」 を参照してください。
パッケージの作成は、次の主なステップで構成されます。
- 新規パッケージを作成します。詳細は、「新規パッケージの作成」 を参照してください。
- パッケージでステップを使用します(追加、複製、削除など)。詳細は、「ステップの使用」 を参照してください。
- ステップの順序を定義します。詳細は、「ステップの順序の定義」 を参照してください。
- パッケージを実行します。詳細は、「パッケージの実行」 を参照してください。
7.1.3 パッケージ・エディタの概要
パッケージ・エディタには、パッケージを設計するための単一の環境が用意されています。次の図に、パッケージ・エディタの概観を示します。
表7-2 パッケージ・エディタの各セクション
セクション | 図の中の位置 | 説明 |
---|---|---|
パッケージ・ダイアグラム |
中央 |
マッピング、プロシージャ、データストア、モデル、サブモデル、変数などのコンポーネントにステップを作成するために、デザイナ・ナビゲータからパッケージ・ダイアグラムに、これらのコンポーネントをドラッグします。 このダイアグラムでは、ステップの順序の定義やステップの編成を実行することもできます。 |
「パッケージ」ツールボックス |
パッケージ・ダイアグラムの左側 |
ツールボックスには、Oracle Data Integratorの使用可能なツールのリストが表示され、このリストからパッケージにツールを追加できます。これらのツールは、タイプ別にグループ化されています。 |
「パッケージ」ツールバー |
パッケージ・ダイアグラムの最上部 |
パッケージ・ツールバーには、パッケージ内のステップを編成したり、ステップの順序を指定するツールがあります。 |
「プロパティ」パネル |
パッケージ・ダイアグラムの下 |
このパネルには、パッケージ・ダイアグラムで選択されているオブジェクトのプロパティが表示されます。 |
7.2 新規パッケージの作成
新規パッケージを作成するには:
- デザイナ・ナビゲータの「プロジェクト」ツリーで、パッケージを作成するフォルダの「パッケージ」ノードをクリックします。
- 右クリックして「新規パッケージ」を選択します。
- 「新規パッケージ」ダイアログで、パッケージの「名前」と「説明」(オプション)を入力します。「OK」をクリックします。
- 「概要」タブを使用して、パッケージのプロパティを設定します。
- 「ダイアグラム」タブを使用してパッケージを設計し、「ステップの使用」の説明に従ってステップを追加します。
- 「ファイル」メニューから「保存」をクリックします。
7.3 ステップの使用
パッケージは、編成された一連のステップです。パッケージの定義の大部分は、このパッケージのステップを使用することで構成されます。
7.3.1 ステップの追加
ステップの追加は、挿入するステップの性質によって異なります。ステップの各タイプの詳細は、表7-1を参照してください。次に、様々なタイプのステップを追加する手順を示します。
7.3.1.1 マッピング・ステップの追加
マッピング・ステップを挿入するには:
- パッケージ・エディタを開き、「ダイアグラム」タブに移動します。
- デザイナ・ナビゲータで、プロジェクト・ノード、マッピング・ノードの順に展開して、このプロジェクトのマッピングを表示します。
- マッピングをダイアグラムにドラッグ・アンド・ドロップします。「フロー(マッピング)」ステップ・アイコンがダイアグラムに表示されます。
- ダイアグラムでステップのアイコンをクリックします。プロパティ・パネルにマッピングのプロパティが表示されます。
- プロパティ・パネルで、必要に応じてマッピングのプロパティを変更します。
- 「ファイル」メニューから「保存」を選択します。
7.3.1.2 プロシージャ・ステップの追加
プロシージャ・ステップを挿入するには:
- パッケージ・エディタを開き、「ダイアグラム」タブに移動します。
- デザイナ・ナビゲータで、プロジェクト・ノード、プロシージャ・ノードの順に展開して、このプロジェクトのプロシージャを表示します。
- プロシージャをダイアグラムにドラッグ・アンド・ドロップします。「プロシージャ」ステップ・アイコンがダイアグラムに表示されます。
- ダイアグラムでステップのアイコンをクリックします。プロパティ・パネルにプロシージャのプロパティが表示されます。
- プロパティ・パネルで、必要に応じてプロシージャのプロパティを変更します。
- 「ファイル」メニューから「保存」を選択します。
7.3.1.3 変数ステップ
Oracle Data Integratorには、変数の様々なステップ・タイプがあります。
-
変数の宣言: 変数をパッケージ(またはパッケージ内で使用されるトポロジの要素)で使用する場合は、パッケージに変数の宣言ステップを挿入することをお薦めします。このステップは、パッケージの変数を明示的に宣言します。
-
変数のリフレッシュ: この変数ステップは、変数定義に指定されている問合せを実行して、変数をリフレッシュします。
-
変数の設定: このステップには2つの機能があります。
-
割当てでは、変数の現在の値を設定します。
-
増分では、指定の分量ずつ数値を増減します。
-
-
変数の評価: この変数ステップ・タイプは、変数の値と指定された値をオペレータに従って比較します。条件を満たすと、評価ステップはtrueとなり、それ以外の場合はfalseとなります。このステップを使用して、パッケージ内を分岐できます。
変数ステップの追加
(任意のタイプの)変数ステップを追加するには:
7.3.1.4 Oracle Data Integratorツール・ステップの追加
Oracle Data Integratorには、パッケージで単純な操作を実行する際に使用できるツールが用意されています。ツールは、組込みツール、またはData Integratorツールボックスを拡充できるオープン・ツールにできます。
Oracle Data Integratorツール・ステップを挿入するには:
Oracle Data Integratorパッケージでは、次のツールがよく使用されます。
-
OdiStartScen: Oracle Data Integratorシナリオを同期または非同期で開始します。OdiStartScenステップを作成するには、デザイナ・ナビゲータからダイアグラムにシナリオを直接ドラッグ・アンド・ドロップします。
-
OdiInvokeWebService: Webサービスを呼び出し、レスポンスをXMLファイルに保存します。OdiInvokeWebServiceは、HTTPアナライザ・ツールを使用してツール・パラメータを設定およびテストします。詳細は、「HTTPアナライザの使用」を参照してください。
-
OSコマンド: オペレーティング・システム・コマンドをコールします。オペレーティング・システム・コマンドを使用すると、作成したパッケージがプラットフォーム依存となる可能性があります。
Oracle Data Integratorのツールのリストは、Oracle Data Integrator Toolリファレンスを参照してください。
ノート:
ステップ・プロパティ・パネルを使用してツールのパラメータを設定する場合は、グラフィカルなヘルパーにより、簡単に使用できる方法で値を選択できます。たとえば、パラメータにプロジェクト識別子が必要な場合は、グラフィカル・マッピングで識別子の表現が再設計され、選択肢としてプロジェクト名のリストが表示されます。「コマンド」タブに切り替えることで、コマンドと識別子を確認できます。
7.3.2 ステップの削除
警告:
パッケージ・ダイアグラムでの削除操作は元に戻すことができません。
ステップを削除するには:
- パッケージ・ツールバーのタブで、「自由選択」ツールを選択します。
- 削除するステップをダイアグラムで選択します。
- 右クリックして「ステップの削除」を選択します。または、キーボードの[Delete]キーを押します。
- 続行するには、「はい」をクリックします。
ダイアグラムからステップが消去されます。
7.3.3 ステップの複製
ステップを複製するには:
- パッケージ・ツールバーのタブで、「自由選択」ツールを選択します。
- 複製するステップをダイアグラムで選択します。
- 右クリックして「ステップの複製」を選択します。
ステップのコピーがダイアグラムに表示されます。
7.3.5 ステップのリンクされたオブジェクトの編集
ステップのリンクされたオブジェクトは、ステップの作成元であるマッピング、プロシージャ、変数などのオブジェクトを指します。このオブジェクトは、パッケージ・ダイアグラムで編集できます。
ステップのリンクされたオブジェクトを編集するには:
- パッケージ・ツールバーのタブで、「自由選択」ツールを選択します。
- 編集するステップをダイアグラムで選択します。
- 右クリックして「リンクされたオブジェクトの編集」を選択します。
リンクされたオブジェクトのエディタが開きます。
パッケージ以外のODIオブジェクトから生成されたシナリオで、コンテキスト・メニューから「リンクされたオブジェクトの編集」オプションにアクセスすると、次のメッセージが表示されます。「ODIツールにはリンクされたオブジェクトがありません。プロパティ・パネルを使用して、このステップのタイプを変更してください。」これは予期されており、ツールのプロパティ・ウィンドウからシナリオの詳細(バージョンやコンテキストなど)を変更することが提案されます。パッケージから生成されたシナリオで、コンテキスト・メニューから「リンクされたオブジェクトの編集」オプションにアクセスすると、ソース・パッケージが開きます。
7.4 ステップの順序の定義
ステップを作成した後は、データ処理チェーンにおける各ステップの順序を設定する必要があります。このチェーンには、次のルールがあります。
-
ステップは、「最初のステップ」として定義された一意のステップで開始します。
-
各ステップには、成功または失敗という2つの終了状態があります。
-
失敗または成功したステップは、別のステップに続けるか、パッケージの終点にできます。
-
失敗した場合の再試行回数を定義できます。
パッケージの始点(最初のステップ)は1つですが、終了ステップは複数設定できます。
失敗条件
次の表に、ステップが失敗状態になる条件を示します。これ以外の状況では、ステップは成功状態で終了します。
ノート:
デフォルトでは、オープン・トランザクションは失敗の状態ではロールバックされません。この動作は、物理エージェント・プロパティ「ステップ失敗時にすべてのオープン・トランザクションをロールバック」を使用して変更できます。詳細は、ODI Studioのオンライン・ヘルプを参照してください。
ステップ・タイプ | 失敗条件 |
---|---|
フロー |
|
プロシージャ |
プロシージャ・コマンドでエラーが発生しました。 |
変数のリフレッシュ |
リフレッシュ問合せの実行時にエラーが発生しました。 |
変数の設定 |
変数の設定時にエラーが発生しました(無効な値)。 |
変数の評価 |
ステップに定義された条件に一致しません。 |
変数の宣言 |
このステップには失敗条件がなく常に成功します。 |
Oracle Data Integratorツール |
Oracle Data Integratorツールのリターン・コードがゼロではありません。このツールがOSコマンドの場合、ゼロ以外のコマンドのリターン・コードが失敗ケースです。 |
データストア、モデルまたはサブモデルのジャーナル化 |
ジャーナル化コマンドでエラーが発生しました。 |
データストア、モデルまたはサブモデルのチェック |
チェック・プロセスでエラーが発生しました。 |
モデルのリバース |
リバースエンジニアリング・プロセスでエラーが発生しました。 |
順序の定義
パッケージの最初のステップを定義するには:
-
パッケージ・ツールバーのタブで、「自由選択」ツールを選択します。
-
ダイアグラムで最初のステップとして設定するステップを選択します。
-
右クリックして「最初のステップ」を選択します。
ステップのアイコンに、最初のステップであることを示す記号が表示されます。
成功時の次のステップを定義するには:
-
パッケージ・ツールバーのタブで、「成功時の次のステップ」ツールを選択します。
-
マウスを使用して、あるステップから別のステップに線をドラッグします。
-
この操作を繰り返し、成功時の一連の経路に配置するすべてのステップをリンクします。この経路は、「最初のステップ」で定義したステップから開始する必要があります。
経路が正常に設定されたことを示す緑色の矢印が、ステップの間に「OK」ラベル付きで表示されます。変数の評価ステップの場合は、「true」のラベルが付きます。
失敗時の次のステップを定義するには:
-
パッケージ・ツールバーのタブで、「失敗時の次のステップ」ツールを選択します。
-
マウスを使用して、あるステップから別のステップに線をドラッグします。
-
この操作を繰り返し、ワークフロー論理に従ってステップをリンクします。
経路が正常に設定されていないことを示す赤色の矢印が、ステップの間に「ko」ラベル付きで表示されます。変数の評価ステップの場合は、緑色の矢印に「false」のラベルが付きます。
失敗時のパッケージの最終ステップを定義するには:
デフォルトでは、成功または失敗条件の後に別のステップにリンクされていないステップは、この成功または失敗の条件を満たすとパッケージを終了することになります。この動作は、ステップの動作を編集することで設定できます。
- パッケージ・ツールバーのタブで、「自由選択」ツールを選択します。
- 編集するステップを選択します。
- プロパティ・パネルで、「拡張」タブを選択します。
- 「失敗後の処理」または「成功後の処理」で、「終了」を選択します。ダイアグラムで、ステップの後ろのリンクが消去されます。
- 必要に応じて、ステップの再試行回数と再試行間隔を「試行回数」および「試行間隔」に設定します。