この章では、ロード計画の概要について説明します。ロード計画の作成方法について説明し、ロード計画の使用方法に関する情報を提供します。
この章では、次の項目について説明します。
Oracle Data Integratorは、大規模データ・ウェアハウスへのデータ移入に使用されることがよくあります。このようなユースケースでは、一般的に、何百ものシナリオを使用して、何千もの表にデータが移入されます。これらのシナリオの実行は、ソースからターゲットへのデータ・スループットが、バッチ・ウィンドウ内で最も効率的になるような方法で編成する必要があります。ロード計画は、このようなユースケースについて、シナリオの実行を順次ステップおよびパラレル・ステップの階層に編成するために役立ちます。
ロード計画は、Oracle Data Integratorの実行可能オブジェクトであり、並列または順次で、条件付きで実行可能なステップの階層を含めることができます。この階層のリーフはシナリオです。パッケージ、インタフェース、変数およびプロシージャは、実行用にシナリオの形式でロード計画に追加できます。詳細は、14.2項「ロード計画の作成」を参照してください。
ロード計画では複数のレベルで変数の設定と使用が可能です。詳細は、14.2.3項「ロード計画での変数の使用」を参照してください。また、ロード計画では、シナリオがエラーで終了した場合の例外処理計画もサポートされています。詳細は、14.2.4項「ロード計画の例外および再開可能の処理」を参照してください。
ロード計画は、コマンドライン、Oracle Data Integrator Studio、Oracle Data IntegratorコンソールまたはWebサービス・インタフェースから開始、停止および再開できます。また、ランタイム・エージェントの組込みスケジューラまたは外部スケジューラを使用してスケジュールできます。ロード計画を実行すると、ロード計画インスタンスが作成されます。このロード計画インスタンスを実行する各試行は、別々のロード計画実行です。詳細は、14.3項「ロード計画の実行」を参照してください。
ロード計画は本番環境で変更でき、本番のニーズに応じてステップを有効または無効にできます。ロード計画オブジェクトは、デザイナ・ナビゲータとオペレータ・ナビゲータで設計および表示できます。開発作業リポジトリに接続している場合は様々な設計操作(作成、編集、削除など)を実行できますが、実行作業リポジトリでは一部の設計操作は使用できません。詳細は、14.2.2.2項「ロード計画ステップの編集」を参照してください。
作成したロード計画は作業リポジトリに格納されます。ロード計画は、エクスポートして別のリポジトリにインポートし、異なるコンテキストで実行できます。また、バージョニングすることもできます。詳細は、14.4.3項「ロード計画のエクスポート、インポートおよびバージョニング」を参照してください。
ロード計画は、デザイナ・ナビゲータおよびオペレータ・ナビゲータの「ロード計画とシナリオ」アコーディオンに表示されます。ロード計画実行は、オペレータ・ナビゲータの「ロード計画実行」アコーディオンに表示されます。
ロード計画の実行時またはスケジュール時に、このロード計画実行に使用する変数値、コンテキストおよび論理エージェントを指定します。
ロード計画を実行すると、ロード計画インスタンスと最初のロード計画実行が作成されます。このロード計画インスタンスは、元のロード計画から切り離されており、ロード計画実行はこのインスタンスの最初の実行試行に対応します。実行が再開されると、このロード計画インスタンスの下に新しいロード計画実行が作成されます。この結果、ロード計画インスタンスの各実行試行は、別々のロード計画実行としてログに保持されます。詳細は、14.3項「ロード計画の実行」を参照してください。
ロード計画は、Oracle Data Integratorの最大の実行可能オブジェクトです。そのステップではシナリオが使用されます。実行可能オブジェクトがロード計画で使用される場合、そのオブジェクトはシナリオに自動的に変換されます。たとえば、パッケージはロード計画ではシナリオの形式で使用されます。ロード計画自体はロード計画に追加できないことに注意してください。ただし、OdiStartLoadPlanツールを使用して、別のロード計画を開始するシナリオ実行ステップの形式でシナリオを追加することは可能です。
ロード計画は、パッケージまたはシナリオの代替オブジェクトではなく、パッケージおよびシナリオの実行を上位レベルで編成するために使用されます。
パッケージとは異なり、ロード計画は、並列性、再開可能および例外処理をネイティブでサポートします。ロード計画は本番にそのまま移行されるのに対して、パッケージはシナリオの形式で移行されます。また、ロード計画は本番環境で作成できます。
ロード計画インスタンスとロード計画実行はセッションに類似しています。相違点は、セッションは、再開時に新規実行が既存のセッションを上書きする点です。これに対し、新規ロード計画実行は既存のロード計画実行を上書きせず、このロード計画インスタンスに対する前のロード計画実行の後に追加されます。ロード計画インスタンスは実行時に変更できないことに注意してください。
ロード計画は、一連の複数タイプのステップで構成されます。各ステップには、複数の子ステップを含めることができます。ステップ・タイプに応じて、ステップを並列または順次で、条件付きで実行できます。デフォルトで、ロード計画には空のルート・シリアル・ステップが含まれます。このルート・ステップは必須であり、ステップ・タイプは変更できません。
表14-1に、ロード計画ステップの様々なタイプと使用可能な子ステップを示します。
表14-1 ロード計画ステップ
タイプ | 説明 | 使用可能な子ステップ |
---|---|---|
シリアル・ステップ |
その子ステップのシリアル実行を定義します。子ステップには順序が設定され、子ステップは前の子ステップが終了した後でのみ実行されます。 ルート・ステップはシリアル・ステップです。 |
|
パラレル・ステップ |
その子ステップのパラレル実行を定義します。子ステップは、優先度順に即時に開始されます。 |
|
シナリオ実行ステップ |
シナリオの実行を開始します。 |
このタイプのステップには子ステップを設定できません。 |
Caseステップ Whenステップ Elseステップ |
これらのステップの組合せによって、変数の値に基づいた条件ブランチが可能になります。 注意: Caseステップの下に複数のWhenステップがある場合は、条件を満たす最初に有効なWhenステップが実行されます。条件を満たすWhenステップがない場合、またはCaseステップにWhenステップが含まれていない場合は、Elseステップが実行されます。 |
Caseステップの場合
Whenステップの場合
Elseステップの場合
|
例外ステップ |
ステップ階層の関連ステップで例外が発生した場合に実行されるステップのグループを定義します。同じ例外ステップをステップ階層内の複数のステップに関連付けることができます。 |
|
図14-1に、Oracle Data Integratorで作成されたロード計画のサンプルを示します。このサンプルのロード計画では、データ・ウェアハウスがロードされます。
複数のディメンションが並列してロードされます。ロードされるのは、LOAD_TIME_DIM、LOAD_PRODUCT_DIM、LOAD_CUSTOMER_DIMの各シナリオ、地理的ディメンション、およびODI_VAR_SESS1変数の値に応じてCUST_NORTHシナリオまたはCUST_SOUTHシナリオです。
地理的ディメンションは一連の3つのシナリオ(LOAD_GEO_ZONE_DIM、LOAD_COUNTRIES_DIM、LOAD_CITIES_DIM)で構成されます。
これらのディメンションがロードされた後、2つのファクト表が並列してロードされます(LOAD_SALES_FACTシナリオとLOAD_MARKETING_FACTシナリオ)。
ロード計画エディタは、ロード計画を設計するための単一の環境を提供します。図14-2では、ロード計画エディタの概要を示しています。
ロード計画ステップは、ロード計画エディタの「ステップ」タブで追加、編集および編成します。ステップ階層表では、ロード計画のステップの編成を定義します。この表の各行はステップを表し、その主なプロパティが表示されます。
パッケージ、統合インタフェース、変数、プロシージャ、シナリオなどのコンポーネントをデザイナ・ナビゲータからステップ階層表にドラッグして、これらのコンポーネントのシナリオ実行ステップを作成できます。
ステップ追加ウィザードまたはクイック・ステップ・ツールを使用して、このロード計画にシナリオ実行ステップや他のタイプのステップを追加することもできます。詳細は、14.2.2.1項「ロード計画ステップの追加」を参照してください。
ステップ階層表の上部にあるロード計画エディタのツールバーには、ロード計画のステップを作成、編成および順序付けするためのツールが用意されています。図14-2は、様々なツールバー・コンポーネントの詳細を示しています。
表14-2 「ロード計画」エディタのツールバー
アイコン | 名前 | 説明 |
---|---|---|
![]() |
検索 |
ステップ階層表でステップを検索します。 |
![]() |
すべて展開 |
ステップ階層表内のすべてのツリー・ノードを開きます。 |
![]() |
すべて縮小 |
ステップ階層表内のすべてのツリー・ノードを閉じます。 |
![]() |
ステップの追加 |
「ステップの追加」メニューを開きます。ステップ追加ウィザードまたはクイック・ステップ・ツールのいずれかを選択して、ステップを追加できます。詳細は、14.2.2.1項「ロード計画ステップの追加」を参照してください。 |
![]() |
ステップの削除 |
選択したステップおよびそのすべての子ステップを削除します。 |
![]() |
並べ替え矢印: 上に移動、下に移動、外に移動、内に移動 |
並べ替え矢印を使用して、選択したステップを必要な位置に移動します。 |
ステップ階層表の下にあるプロパティ・パネルには、ステップ階層表で選択したオブジェクトのプロパティが表示されます。
この項では、ODI Studioで新規ロード計画を作成する方法について説明します。
新規ロード計画を作成します。詳細は、14.2.1項「新規ロード計画の作成」を参照してください。
ロード計画にステップを追加し、ロード計画の順序を定義します。詳細は、14.2.2項「ロード計画ステップの順序の定義」を参照してください。
例外の処理方法を定義します。詳細は、14.2.4項「ロード計画の例外および再開可能の処理」を参照してください。
ロード計画は、デザイナ・ナビゲータまたはオペレータ・ナビゲータから作成できます。
新規ロード計画を作成するには:
デザイナ・ナビゲータまたはオペレータ・ナビゲータで、「ロード計画とシナリオ」アコーディオンのツールバーにある「新規ロード計画」をクリックします。ロード計画エディタが表示されます。
ロード計画エディタで、「名前」と「説明」にこのロード計画に対する値を入力します。
オプションで、次のパラメータを設定します:
ログ・セッション: ロード計画によって開始されるセッションに対するセッション・ログの保持方法を選択します。可能な値は次のとおりです。
常時: 常にセッション・ログを保持します(デフォルト)。
なし: セッション・ログを保持しません。「失敗したステップから再開」または「失敗したタスクから再開」として構成されているシナリオ実行ステップの場合、再開のためにセッション全体を保持する必要があるため、エージェントはパラメータが「エラー」に設定されている場合と同様に動作します。
エラー: セッションがエラー状態で完了した場合のみ、セッション・ログを保持します。
ログ・セッション・ステップ: ロード計画によって開始される各セッションのセッション・ステップに対するログの保守方法を選択します。このプロパティは、セッション・ログを保持する場合のみ適用されます。可能な値は次のとおりです。
シナリオ設定別: シナリオ設定に応じてセッション・ステップ・ログが保持されます。パッケージから作成されたシナリオの場合、「ジャーナルへのステップのログ」という拡張ステップ・プロパティでステップを保持するかどうかを指定できます。他のシナリオでは、すべてのステップが保持されます(デフォルト)。
なし: セッション・ステップ・ログを保持しません。「失敗したステップから再開」または「失敗したタスクから再開」として構成されているシナリオ実行ステップの場合、再開のためにセッション全体を保持する必要があるため、エージェントはパラメータが「エラー」に設定されている場合と同様に動作します。
エラー: ステップがエラー状態の場合のみ、セッション・ステップ・ログが保持されます。
セッション・タスクのログ・レベル: セッションのログ・レベルを選択します。この値は、単位シナリオの開始時の「ログ・レベル」の値に対応します。デフォルトは5です。シナリオ実行ステップが「失敗したステップから再開」または「失敗したタスクから再開」として構成されている場合、再開のためにセッション全体を保持する必要があるため、このパラメータは無視されます。
キーワード: このロード計画から開始されるセッションに対して設定されるキーワードのカンマ区切りのリストを入力します。これらのキーワードによって、セッション・フォルダや自動分類によるODIログの編成が容易になります。これらのキーワードは、子ステップのレベルで上書きできることに注意してください。詳細は、22.3.3項「ログの管理」を参照してください。
「ステップ」タブに移動し、14.2.2項「ロード計画ステップの順序の定義」の説明に従ってステップを追加します。
ロード計画に条件ブランチが必要な場合、またはシナリオで変数が使用される場合は、「変数」タブに移動し、14.2.3.1項「ロード計画の変数の宣言」の説明に従って変数を宣言します。
ロード計画ステップが失敗した場合に使用される例外ステップを追加するには、「例外」タブに移動し、14.2.4.1項「例外フローの定義」の説明に従って例外ステップを定義します。
「ファイル」メニューから「保存」をクリックします。
ロード計画が「ロード計画とシナリオ」アコーディオンに表示されます。関連するロード計画とシナリオを、ロード計画とシナリオ・フォルダにグループ化して、ロード計画を編成できます。
ロード計画は、子ステップを階層に編成したものです。この階層では、ステップの条件付き処理が並列または順次で行えます。
実行フローは2つのステージで構成できます:
設計時。ステップ階層の定義時に構成できます。
ロード計画にステップを追加する際に、ステップ・タイプを選択します。ステップ・タイプによって、使用可能な子ステップとこれらの子ステップの実行方法が定義されます。実行方法には、並列、順次、変数の値に基づく条件付き(Caseステップ)があります。ステップ・タイプの詳細は、表14-1を参照してください。
ロード計画にステップを追加する際に、ステップの挿入位置も決定します。子ステップを追加、選択したステップの後に兄弟ステップを追加、または選択したステップの前に兄弟ステップを追加できます。詳細は、14.2.2.1項「ロード計画ステップの追加」を参照してください。
また、ステップを必要な位置にドラッグするか、またはステップ表のツールバーにある矢印を使用して、ロード計画ステップの順序を再編成することもできます。詳細は、表14-2を参照してください。
設計時および実行時。ステップを有効または無効にして構成できます。ステップ階層表で、ステップを有効または無効にできます。あるステップを無効にすると、そのすべての子ステップも無効になることに注意してください。無効にしたステップとそのすべての子ステップは、ロード計画の実行時に実行されません。
この項の内容は次のとおりです。
ロード計画ステップを追加するには、ステップ追加ウィザードを使用するか、または特定のステップ・タイプ用のクイック・ステップ・ツールを選択します。ロード計画ステップの各タイプの詳細は、表14-1を参照してください。シナリオ実行ステップを作成するには、パッケージ、統合インタフェース、変数、プロシージャまたはシナリオなどのコンポーネントを、デザイナ・ナビゲータからステップ階層表にドラッグすることもできます。Oracle Data Integratorによって、挿入したコンポーネントに対するシナリオ実行ステップが自動的に作成されます。
追加したロード計画ステップは、必要最小限の設定でステップ階層に挿入されます。ロード計画ステップの構成方法の詳細は、14.2.2.2項「ロード計画ステップの編集」を参照してください。
ステップ追加ウィザードを使用したロード計画ステップの追加
ステップ追加ウィザードを使用してロード計画ステップを挿入するには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層表のステップを選択します。
ロード計画エディタのツールバーで、「ステップの追加」→「ステップ追加ウィザード」の順に選択します。
ステップ追加ウィザードで、次の項目を選択します。
「ステップ・タイプ」。使用可能なステップ・タイプは、シリアル、パラレル、シナリオ実行、Case、WhenおよびElseです。各種ステップ・タイプの詳細は、表14-1を参照してください。
「ステップの場所」。このパラメータは、ステップが追加される場所を定義します。
子ステップを選択に追加: 選択したステップの下にステップが追加されます。
兄弟ステップを選択の後に追加: 選択したステップの後に同じレベルでステップが追加されます。
兄弟ステップを選択の前に追加: 選択したステップの前に同じレベルでステップが追加されます。
注意: 現在の選択に対して有効な値のみが「ステップ・タイプ」および「ステップの場所」に表示されます。 |
「次へ」をクリックします。
追加しているステップ・タイプに対する表14-3の指示に従います。
表14-3 ステップの追加ウィザードのアクション
ステップのタイプ | 説明と必須作業 |
---|---|
シリアル・ステップまたはパラレル・ステップ |
新しいロード計画ステップのステップ名を入力します。 |
シナリオ実行ステップ |
|
Case |
|
When |
|
Else |
「ステップ名」には、ステップ・タイプが自動的に移入されます。オプションで、ステップ名を変更します。 詳細は、14.2.2.2項「ロード計画ステップの編集」を参照してください。 |
「終了」をクリックします。
ステップがステップ階層に追加されます。
注意: ステップを必要な位置にドラッグするか、またはステップ表のツールバーにある並べ替え矢印を使用してステップ階層のステップを移動して、ロード計画ステップの順序を再編成できます。 |
クイック・ステップ・ツールを使用したロード計画ステップの追加
クイック・ステップ・ツールを使用してロード計画ステップを挿入するには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層で、子ステップを作成するロード計画ステップを選択します。
ステップのツールバーで、「ステップの追加」を選択し、追加するステップ・タイプに対応するクイック・ステップのオプションを選択します。表14-4に、クイック・ステップ・ツールのオプションを示します。
表14-4 クイック・ステップ・ツール
クイック・ステップ・ツールのオプション | 説明と必須作業 |
---|---|
|
選択項目の後にシリアル・ステップを追加します。デフォルト値が使用されます。これらの値は、ステップ階層表またはプロパティ・インスペクタで変更できます。詳細は、14.2.2.2項「ロード計画ステップの編集」を参照してください。 |
|
選択項目の後にパラレル・ステップを追加します。デフォルト値が使用されます。これらの値は、ステップ階層表またはプロパティ・インスペクタで変更できます。詳細は、14.2.2.2項「ロード計画ステップの編集」を参照してください。 |
![]() |
選択項目の後にシナリオ実行ステップを追加します。表14-3のシナリオ実行ステップに関する指示に従います。 |
![]() |
選択項目の後にCaseステップを追加します。表14-3のCaseステップに関する指示に従います。 |
![]() |
選択項目の後にWhenステップを追加します。表14-3のWhenステップに関する指示に従います。 |
![]() |
選択項目の後にElseステップを追加します。表14-3のElseステップに関する指示に従います。 |
注意: クイック・ステップ・ツールでは、現在の選択項目に対して有効なステップ・タイプのみが有効になります。 |
ロード計画ステップを編集するには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層表で、変更するロード計画ステップを選択します。プロパティ・インスペクタにステップのプロパティが表示されます。
必要に応じて、ロード計画ステップのプロパティを編集します。
次の操作は、ステップ編集時の一般的なタスクです:
シナリオ実行ステップのシナリオの変更
シナリオを変更するには:
「ステップ」または「例外」タブのステップ階層表で、シナリオ実行ステップを選択します。
プロパティ・インスペクタの「ステップ・プロパティ」セクションで、「ルックアップ・シナリオ」をクリックします。シナリオ実行ステップの変更ウィザードが開きます。
シナリオ実行ステップの変更ウィザードで、「ルックアップ・シナリオ」をクリックし、表14-3のシナリオ実行ステップに対応する指示に従います。
シナリオ実行ステップの拡張オプションの設定
プロパティ・インスペクタで、シナリオ実行ステップの次のプロパティを設定できます:
優先度: シナリオを並列して開始する必要がある場合のこのステップの優先度。0から100 (100が最も高い優先度)の整数値です。デフォルトは0です。シナリオ実行ステップの優先度は、実行中のロード計画内のすべての実行可能シナリオの間で評価されます。優先度が最も高いシナリオ実行ステップが最初に実行されます。
コンテキスト: ステップ実行に使用されるコンテキスト。デフォルト・コンテキストは、ロード計画の実行時に「ロード計画の開始」ダイアログで定義されるロード計画コンテキストです。コンテキストのみを指定して、論理エージェントの値を指定しない場合、ステップは、ロード計画を開始した同じ物理エージェントで開始されますが、この指定したコンテキスト内で開始されます。
論理エージェント: ステップ実行に使用される論理エージェント。デフォルトでは、ロード計画の実行時に「ロード計画の開始」ダイアログで定義される論理エージェントが使用されます。論理エージェントのみを設定してコンテキストを設定しない場合、ステップは、ロード計画の開始時に指定したコンテキストで解決された、指定の論理エージェントに対応する物理エージェントで開始されます。論理エージェント値を指定しない場合、ステップは、ロード計画を開始した同じ物理エージェントで開始されます(ステップにコンテキストを指定しているかどうかは関係ありません)。
シナリオ実行ステップのリンクされたオブジェクトを開く
シナリオ実行ステップは、パッケージ、統合インタフェース、変数、プロシージャまたはシナリオに対して作成できます。シナリオ実行ステップが作成されると、元のオブジェクトのオブジェクト・エディタを開いてシナリオ実行ステップを編集できます。
シナリオ実行ステップのリンクされたオブジェクトを表示および編集するには:
「ステップ」または「例外」タブのステップ階層表で、シナリオ実行ステップを選択します。
右クリックして「リンクされたオブジェクトを開く」を選択します。
リンクされたオブジェクトのオブジェクト・エディタが表示されます。
Caseステップのテスト変数の変更
WHEN文で定義されたテストの評価に使用する変数を変更するには:
「ステップ」タブまたは「例外」タブのステップ階層表で、Caseステップを選択します。
プロパティ・インスペクタの「ステップ・プロパティ」セクションで、「ルックアップ変数」をクリックします。「Caseステップの変更」ダイアログが開きます。
「Caseステップの変更」ダイアログで、「ルックアップ変数」をクリックし、Caseステップに対応する表14-3のCaseステップに対応する指示に従います。
例外および再開動作の定義
例外および再開の動作は、ステップ階層表のステップに設定できます。詳細は、14.2.4項「ロード計画の例外および再開可能の処理」を参照してください。
シナリオの再生成
特定のロード計画ステップのシナリオをその子ステップのシナリオも含めてすべて再生成するには:
「ステップ」タブまたは「例外」タブのステップ階層表から、ロード計画ステップを選択します。
右クリックして「再生成」を選択します。このオプションは、バージョン番号が-1
のシナリオには使用できないことに注意してください。
「OK」をクリックします。
注意: シナリオの再生成は元に戻すことができません。重要なシナリオの場合は、新しいバージョン番号を使用してシナリオを生成することをお薦めします。 |
シナリオの最新バージョンへのリフレッシュ
特定のロード計画ステップのシナリオ・ステップをその子ステップのシナリオも含めてすべて変更し、シナリオのバージョンを各シナリオに使用可能な最新バージョンに設定するには:
「ステップ」タブまたは「例外」タブのステップ階層表から、ロード計画ステップを選択します。
右クリックして「シナリオを最新バージョンにリフレッシュ」を選択します。最新のシナリオ・バージョンは、シナリオ作成タイムスタンプによって決定されることに注意してください。ODIエージェントの実行中の最新のシナリオの決定では、シナリオ・バージョン文字列の値がアルファベットの昇順でソートされ、そのリストの最後のシナリオが選択されます。
注意: このオプションは、バージョン番号が |
「OK」をクリックします。
ステップを削除するには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層表で、削除するステップを選択します。
ロード計画エディタのツールバーで、「ステップの削除」選択します。
ステップとその子ステップがステップ階層表から削除されます。
注意: ステップ階層表での削除操作は元に戻すことができません。 |
ステップを複製するには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層表で、複製するステップを右クリックして「選択の複製」を選択します。
子ステップも含めたこのステップのコピーが作成され、元のステップの後の兄弟ステップとしてステップ階層表に追加されます。
これで、このステップを移動および編集できます。
ロード計画で使用するプロジェクト変数とグローバル変数は、ロード計画エディタでロード計画変数として宣言されます。これらの変数はすべてのステップで自動的に使用可能になり、その値がロード計画ステップに渡されます。
変数の値は、ロード計画の開始時に起動パラメータとしてロード計画に渡されます。ステップ・レベルでは、変数値を設定するか、またはリフレッシュを強制的に実行して、ステップとその子ステップの変数値を上書きできます。
注意: 開始時に、ロード計画では変数のデフォルト値、または実行コンテキスト内の変数の履歴化された値/最新値は考慮されません。変数の値は、ロード計画の開始時に指定した値、またはロード計画内で設定/リフレッシュした値です。 |
変数は、シナリオ実行ステップ(変数の値は起動パラメータとしてシナリオに渡されます)、または条件付きブランチのCase/When/Elseステップで使用できます。
この項の内容は次のとおりです。
ロード計画変数を宣言するには:
ロード計画エディタを開き、「変数」タブに移動します。
ロード計画エディタのツールバーから、「変数の追加」を選択します。「ルックアップ変数」ダイアログが表示されます。
「ルックアップ変数」ダイアログで、ロード計画に追加する変数を選択します。
変数は、ロード計画エディタの「変数」タブと各ステップのプロパティ・インスペクタに表示されます。
ステップ内の変数の値は、親ステップの値から継承されます。つまり、最終的にはロード計画の開始時に変数に指定した値から継承されます。
ElseステップとWhenステップを除く各ステップの場合、変数値を上書きすることもでき、このステップとその子ステップに使用される値を変更することもできます。
ステップ・レベルで変数値をオーバーライドするには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層表で、変数値を上書きするステップを選択します。
プロパティ・インスペクタで、「変数」セクションに移動します。このロード計画に対して定義されている変数がこの変数表にリストされます。次の変数パラメータを変更できます。
このステップとすべての子ステップの変数値を指定する場合は、「上書き」を選択します。変数値の上書きを選択すると、次のいずれかを実行できます。
「値」フィールドに新しい変数値を設定できます。
「リフレッシュ」を選択して、ステップの実行前にこの変数をリフレッシュできます。「リフレッシュ」オプションを選択できるのは、変数値をリフレッシュするために「問合せの選択」が定義されている変数のみです。
ロード計画には、実行フローでエラーを処理するために、例外と再開可能の2つの機能が用意されています。
例外
例外ステップには、ロード計画エディタの「例外」タブで定義されたステップの階層が含まれます。
特定の例外ステップをロード計画の1つ以上のステップに関連付けることができます。ロード計画のステップでエラーが発生した場合は、関連付けられている例外ステップが自動的に実行されます。
必要に応じて、失敗したステップの親ステップに対して例外を生成するように設定できます。例外を生成すると、親ステップが失敗するため、親ステップの例外ステップを実行できます。
再開可能
ロード計画実行が失敗後に再開されるとき、失敗したロード計画ステップは、「再開タイプ」パラメータに応じて再開されます。たとえば、パラレル・ステップでそのすべての子ステップを再開するか、または失敗した子ステップのみを再開するかを定義できます。
この項の内容は次のとおりです。
例外ステップは、ロード計画エディタの「例外」タブで作成および定義します。
このタブには、例外ステップのリストが含まれます。各例外ステップは、ロード計画ステップの階層に存在します。「例外」タブは、ロード計画エディタの「ステップ」タブに類似しています。主な相違点は次のとおりです。
例外ステップ階層にルート・ステップはありません。各例外ステップは、個別のルート・ステップになります。
シリアル、パラレル、シナリオ実行およびCaseの各ステップには、「ステップ」タブで同じプロパティを設定できますが、例外処理のプロパティ・グループは設定されません。エラーが発生した例外ステップによって他の例外ステップを生成することはできません。
例外ステップは、ステップ追加ウィザードを使用するか、またはロード計画エディタのツールバーで「ステップの追加」→「例外ステップ」を選択することによって、クイック・ステップ・ツールで作成できます。デフォルトで、例外ステップは、「例外」というステップ名で作成されます。この名前は、ステップ階層表またはプロパティ・インスペクタで変更できます。
ステップ追加ウィザードを使用して例外ステップを作成するには:
ロード計画エディタを開き、「例外」タブに移動します。
ロード計画エディタのツールバーで、「ステップの追加」→「ステップ追加ウィザード」の順に選択します。
ステップ追加ウィザードで、「ステップ・タイプ」リストから「例外」を選択します。
注意: 「ステップ・タイプ」には、現在の選択項目に対して有効な値のみが表示されます。 |
「次へ」をクリックします。
「ステップ名」フィールドに、例外ステップの名前を入力します。
「終了」をクリックします。
例外ステップがステップ階層に追加されます。
これで、この例外ステップの下に新しいステップを追加して階層を編成することによって、例外フローを定義できます。
ロード計画ステップの例外処理の定義では、このロード計画ステップに例外ステップを関連付け、例外動作を定義します。例外ステップは、WhenステップとElseステップを除く各ステップに対して設定できます。
ロード計画ステップの例外処理を定義するには:
ロード計画エディタを開き、「ステップ」タブに移動します。
ステップ階層表で、例外動作を定義するステップを選択します。プロパティ・インスペクタにステップのプロパティが表示されます。
プロパティ・インスペクタの「例外ハンドリング」セクションで、パラメータを次のように設定します。
タイムアウト: このステップの最大実行時間(秒)を入力します。この時間を超えると、ステップはロード計画によって中断されます。タイムアウトに到達すると、ステップにエラーのマークが付けられ、例外ステップ(定義されている場合)が実行されます。この場合、例外ステップはタイムアウトになりません。必要に応じて、長時間実行状態になる可能性に備えて、親ステップにタイムアウトを設定できます。
ステップがタイムアウト前に失敗して例外ステップが実行された場合、そのステップと例外ステップの実行時間の合計はタイムアウトを超えることができません。タイムアウトを超える場合は、タイムアウトに到達した時点で例外ステップが失敗します。
デフォルト値のゼロ(0
)は、タイムアウトが無限であることを示します。
例外ステップ: リストから、このステップが失敗した場合に実行する例外ステップを選択します。このリストに表示されるのは、ロード計画エディタの「例外」タブで作成および定義された例外ステップのみであることに注意してください。例外ステップの作成方法の詳細は、14.2.4.1項「例外フローの定義」を参照してください。
例外動作: 例外が発生した場合のこのステップの動作を定義します。次の中から選択します。
例外を実行して生成: 例外ステップ(ある場合)を実行し、親ステップに対する例外を生成します。
例外を実行して無視: 例外ステップ(ある場合)を実行し、例外を無視します。親ステップには実行が成功したことが通知されます。ただし、例外ステップ自体で例外が発生した場合は、親ステップに失敗が通知されます。
パラレル・ステップのみの場合は、次のパラメータを設定できます。
エラーがある子の最大数: このステップがエラー状態と認識されるまでに許容される、エラー状態の子ステップの最大数が表示されます。失敗した子ステップの数がこの値を超えると、パラレル・ステップは失敗と認識されます。現在実行中の子ステップは、このパラレル・ステップの「再開タイプ」パラメータに応じて、続行または停止されます。
再開タイプが「失敗した子から再開」の場合、ロード計画はすべての子セッション(現在実行中のセッションと実行待機中のセッション)の実行と完了を待機した後で、親ステップに対するエラーを生成します。
再開タイプが「すべての子の再開」の場合、ロード計画は実行中のすべての子セッションを停止し、新しい子セッションを開始せずに親ステップに対するエラーを生成します。
「再開タイプ」オプションでは、ロード計画再開時のエラー・ステップの再開方法を定義します。「再開タイプ」パラメータは、プロパティ・インスペクタの「例外ハンドリング」セクションで定義できます。
ステップ・タイプに応じて、「再開タイプ」パラメータには、表14-5にリストした値を設定できます。
表14-5 再開タイプの値
ステップのタイプ | 値と説明 |
---|---|
シリアル |
|
パラレル |
|
シナリオ実行 |
失敗したステップまたはタスクから再開されるセッションには、21.4項「セッションの再開」で説明する制限が適用されます。 |
ロード計画は、ODI Studioのデザイナ・ナビゲータまたはオペレータ・ナビゲータから実行できます。
デザイナ・ナビゲータまたはオペレータ・ナビゲータでロード計画を実行するには:
「ロード計画とシナリオ」アコーディオンで、実行するロード計画を選択します。
右クリックして「実行」を選択します。
「ロード計画の開始」ダイアログで、実行パラメータを選択します。
ロード計画が実行される「コンテキスト」を選択します。
ロード計画を実行する「論理エージェント」を選択します。
変数表に、ロード計画に使用する変数の起動値を入力します。
「OK」をクリックします。
「ロード計画が開始しました」ダイアログが表示されます。
「OK」をクリックします。
ロード計画実行が開始します。ロード計画インスタンスが最初のロード計画実行とともに作成されます。ロード計画実行はオペレータ・ナビゲータで確認できます。詳細は、第22章「統合プロセスの監視」を参照してください。また、ロード計画に対する他のランタイム操作の詳細は、第21章「統合プロセスの実行」を参照してください。
本番でのロード計画の使用には、次のタスクが含まれます:
ロード計画の開始、監視、停止および再開。詳細は、14.4.1項「本番でのロード計画の実行」を参照してください。
ロード計画のスケジューリング。詳細は、14.4.2項「ロード計画のスケジューリング」を参照してください。
環境間のロード計画の移動。14.4.3項「ロード計画のエクスポート、インポートおよびバージョニング」を参照してください。
シナリオおよびロード計画の実行は、Oracle Data Integrator組込みスケジューラまたは外部スケジューラを使用してスケジュールできます。詳細は、21.9項「シナリオとロード計画のスケジューリング」を参照してください。
ロード計画をエクスポートして、開発リポジトリまたは実行リポジトリにインポートできます。この操作は、ロード計画を別のリポジトリ(異なる環境やサイト上など)にデプロイするために使用されます。
エクスポート(およびインポート)の手順によって、Oracle Data Integratorオブジェクトをあるリポジトリから別のリポジトリに転送できます。
1つのロード計画をエクスポートするか、または複数のロード計画を一度にエクスポートすることが可能です。
1つのロード計画のエクスポートについては、20.2.4項「1つのODIオブジェクトのエクスポート」で説明している標準の手順に従います。
複数のロード計画を一度にエクスポートする方法の詳細は、20.2.5項「複数のODIオブジェクトのエクスポート」を参照してください。
ロード計画をエクスポートするときに「子オブジェクトをエクスポート」を選択した場合は、そのすべての子ステップ、スケジュールおよび変数もエクスポートされることに注意してください。
注意: ロード計画のエクスポートには、ロード計画が参照するシナリオは含まれません。ロード計画で使用されるシナリオは、個別にエクスポートする必要があります。シナリオのエクスポート方法については、13.5項「シナリオのエクスポート」を参照してください。 |
開発リポジトリへのロード計画のインポートは、デザイナ・ナビゲータまたはオペレータ・ナビゲータで実行します。実行リポジトリの場合、この目的で使用できるのはオペレータ・ナビゲータのみです。
ロード計画のインポートでは、標準のオブジェクト・インポート・メソッドが使用されます。詳細は、20.2.6項「オブジェクトのインポート」を参照してください。
注意: ロード計画のエクスポートには、ロード計画が参照するシナリオは含まれません。ロード計画で使用されるシナリオは、個別にインポートする必要があります。 |
ロード計画は、バージョンおよびソリューションを使用して、本番にデプロイおよび転送することもできます。詳細は、第19章「バージョン管理の使用」を参照してください。