Informatica のワークフロー: 作成、タスク、パラメータ、再利用可能、マネージャー
ワークフローとは何ですか?
ワークフローは、Informatica の統合サービスに対する命令/コマンドのグループです。 統合サービスは、リポジトリからワークフロー情報を読み取り、ソースからデータをフェッチし、変換を実行した後にそれをターゲットにロードするエンティティです。
ワークフロー – 次のようなタスクを実行する方法を定義します。 セッションタスク、コマンドタスク、電子メールタスク, etc.
ワークフローを作成するには
- まずタスクを作成する必要があります
- そして、それらのタスクをワークフローに追加します。
ワークフローは、実行するオブジェクトを格納する容量を持つ空のコンテナのようなものです。 実行するタスクをワークフローに追加します。 このチュートリアルでは、ワークフローで次のことを行います。
ワークフローの実行は XNUMX つの方法で実行できます
- シーケンス : タスクは定義された順序で実行されます。
- イベントベース: タスクはイベント条件に基づいて実行されます。
ワークフローマネージャーを開く方法
ステップ1) Informatica Designerで、「ワークフローマネージャ」アイコンをクリックします。
ステップ2) これにより、ワークフロー マネージャーのウィンドウが開きます。次に、ワークフローマネージャーで。
- リポジトリ「guru99」に接続するので、フォルダーをダブルクリックして接続します。
- ユーザー名とパスワードを入力し、「接続ボタン」を選択します。
ステップ3) ワークフローマネージャー内。
- フォルダを右クリックします
- ポップアップメニューで、開くオプションを選択します
これにより、ワークフロー マネージャーのワークスペースが開きます。
ワークフローマネージャーの接続を作成する方法
ワークフローマネージャーでタスクを実行するには、 の構築。 これらの接続を使用して、Integration Service はさまざまなオブジェクトに接続します。
たとえば、あなたの マッピング Oracle データベースにソース テーブルがある場合は、統合サービスが Oracle データベースに接続してソース データを取得できるように、Oracle 接続が必要になります。
ワークフロー マネージャーでは、次のタイプの接続を作成できます。
- リレーショナル接続
- FTP接続
- キュー
- 申し込み
作成する接続の選択は、接続するソース システムとターゲット システムのタイプによって異なります。 より頻繁に使用するのは、 関係的なつながり。
リレーショナル接続を作成するには
ステップ1) ワークフローマネージャーで
- 「接続」メニューをクリックします
- リレーショナル オプションの選択
ステップ2) ポップアップウィンドウで
- 選択 Oracle タイプで
- 新しいボタンをクリックします
ステップ3) 接続オブジェクト定義の新しいウィンドウで
- 接続名を入力してください (新しい名前-guru99)
- ユーザー名を入力
- パスワードを入力
- 接続文字列を入力してください
- 他の設定はデフォルトのままにし、「OK」ボタンを選択します
ステップ4) 前のウィンドウに戻ります。閉じるボタンをクリックします。
これで、ワークフロー マネージャーでリレーショナル接続が設定されました。
ワークフローマネージャーのコンポーネント
ワークフロー マネージャーには、ワークフロー マネージャーでさまざまなオブジェクトを作成するのに役立つ XNUMX つのコンポーネント ツールがあります。 これらのツールは、
- タスク開発者
- ワークレットデザイナー
- ワークフローデザイナー
タスク開発者 – タスク開発者は、再利用可能なオブジェクトを作成できるツールです。ワークフロー マネージャーの再利用可能なオブジェクトは、複数のワークフローで再利用できるオブジェクトです。たとえば、タスク開発者でコマンド タスクを作成した場合、このタスクを任意の数のワークフローで再利用できます。
ワークフローデザイナーの役割は、ワークフローに追加されたタスクを実行することです。 ワークフローには任意のタスクを追加できます。
タスク開発者では、3 種類の再利用可能なタスクを作成できます。
- コマンドタスク
- セッションタスク
- 電子メールタスク
コマンドタスク – コマンドタスクは、ワークフローの実行中にさまざまなWindows/Unixコマンドを実行するために使用されます。コマンドタスクを作成して、さまざまなコマンドベースのタスクを実行できます。このタスクの助けを借りて、コマンドを実行できます。 ファイル/フォルダーを作成する、ファイル/フォルダーを削除する、ファイルの FTP を実行する 等々
セッションタスク – マッピングを実行するには、Informatica のセッションタスクが必要です。
- セッションタスクがないと、マッピングを実行または実行できません。
- セッション タスクは XNUMX つのマッピングのみを実行できます。 したがって、マッピングとセッションの間には XNUMX 対 XNUMX の関係があります。
- セッションタスクは、次の助けを借りたオブジェクトです。 インフォマティクス マッピングをいつ、どこで、どのように実行するかを知ることができます。
- セッションは独立して実行できません。セッションはワークフローに追加する必要があります
- In セッションオブジェクト キャッシュ プロパティを構成したり、高度なパフォーマンス最適化構成を構成したりできます。
メールタスク – 電子メール タスクを使用すると、Integration Service がワークフローを実行するときに、定義済みの受信者に電子メールを送信できます。たとえば、セッションの完了にかかる時間を監視する場合は、セッションの開始時間と終了時間の詳細を含む電子メールを送信するようにセッションを構成できます。または、ワークフローが完了または失敗したときに Integration Service から通知を受けるようにする場合は、同じ目的で電子メール タスクを構成できます。
コマンドタスクの作成方法
ステップ1) コマンド タスクを作成するには、タスク デベロッパーを使用します。ワークフロー マネージャーで、メニューから「タスク デベロッパー」タブをクリックしてタスク デベロッパーを開きます。
ステップ2) タスク開発者が開いたら、次の手順に従います。
- 「タスク」メニューを選択します
- 「作成」オプションを選択します
ステップ3) タスクの作成ウィンドウで
- 作成するタスクのタイプとしてコマンドを選択します
- タスク名を入力してください
- 作成ボタンを選択
これにより、コマンドタスクフォルダーが作成されます。 ここで、タスクにコマンドを追加するようにタスクを設定する必要があります。これについては次のステップで説明します。
ステップ4) タスクを設定するには、コマンドタスクアイコンをダブルクリックすると、「タスク編集ウィンドウ」が開きます。新しいタスク編集ウィンドウで
- コマンドメニューを選択します
- 新しいコマンドを追加アイコンをクリックします
- コマンド名を入力してください
- コマンドアイコンをクリックしてコマンドテキストを追加します
コマンド エディター ボックスが開きます。
ステップ5) コマンド エディター ボックスで、コマンド「mkdir C:\guru99」(これは「guru99」という名前のフォルダーを作成する Windows コマンドです) を入力し、[OK] を選択します。
この手順の後、タスク編集ウィンドウに戻り、コマンド テキスト ボックスに追加したコマンドを確認できます。
ステップ6) タスクの編集ウィンドウで「OK」をクリックします。
コマンド タスクは、「Guru99」リポジトリの下のタスク開発者に作成されます。
注意 Ctrl+S ショートカットを使用して変更をリポジトリに保存します
コマンドタスクを実行するワークフローの作成方法
コマンド タスクを実行するには、ワークフロー デザイナーに切り替える必要があります。 ワークフロー デザイナーは、複数のタスクを追加できる親オブジェクトまたはコンテナ オブジェクトであり、ワークフローが実行されると、追加されたすべてのタスクが実行されます。 ワークフローを作成するには
ステップ1) ワークフロー デザイナー メニューをクリックしてワークフロー デザイナーを開きます
ステップ2) ワークフローデザイナーで
- ワークフローメニューの選択
- 作成オプションを選択
ステップ3) ワークフロー作成ウィンドウで
- ワークフロー名を入力してください
- 「OK」ボタンを選択します(他のオプションはデフォルトのままにします)
これによりワークフローが作成されます。
命名規則 - ワークフロー名には「」という接頭辞が付けられます。wkf_'という名前のセッションがある場合、s_m_employee_detail' その後、同じワークフローに ' という名前を付けることができますwkf_s_m_employee_detail'.
ワークフローを作成するとき、ワークフローはタスクで構成されません。 したがって、ワークフロー内のタスクを実行するには、ワークフローにタスクを追加する必要があります。
ステップ4) タスク開発者で作成したコマンドタスクをワークフローデザイナーに追加するには
- ナビゲーター ツリーで、タスク フォルダーを展開します。
- コマンド タスクをワークフロー デザイナーにドラッグ アンド ドロップします。
ステップ5) 上部メニューのツールボックスから「リンク タスク オプション」を選択します。(リンク タスク オプションは、ワークフロー内のさまざまなタスクを開始タスクにリンクし、タスクの実行順序を定義できるようにします)。
ステップ6) リンク タスク アイコンを選択すると、開始タスクとコマンド タスクの間のリンクをドラッグできるようになります。次に、開始タスクを選択し、リンクをコマンド タスクにドラッグします。
これで、実行するコマンド タスクを含むワークフローの準備が整いました。
ワークフローの実行方法
ステップ1) ワークフローを実行するには
- メニューからワークフロー オプションを選択します
- ワークフロー開始オプションを選択します
これが開きます ワークフローモニター ウィンドウを開き、ワークフローを実行します
ワークフローが実行されると、コマンド タスクが実行され、定義されたディレクトリにフォルダー (guru99 フォルダー) が作成されます。
セッションタスク
マッピングを実行するには、Informatica のセッションタスクが必要です。
セッション タスクがないと、マッピングを実行したり実行したりすることはできず、セッション タスクは XNUMX つのマッピングのみを実行できます。 したがって、マッピングとセッションの間には XNUMX 対 XNUMX の関係があります。 セッションタスクは、Informatica がマッピングをいつ、どこで、どのように実行するかを知るために使用されるオブジェクトです。 セッションは独立して実行できません。セッションはワークフローに追加する必要があります。 セッションでは、オブジェクト キャッシュ プロパティを構成したり、高度なパフォーマンス最適化構成を構成したりできます。
セッションタスクの作成方法
この演習では、前の記事で作成したマッピング「m_emp_emp_target」のセッション タスクを作成します。
ステップ1) オープンワークフローマネージャーとオープンタスク開発者
ステップ2) タスク開発者が開いたら、ワークフローマネージャーでメインメニューに移動します。
- タスクメニューをクリックします
- 作成オプションを選択
新しいウィンドウ「タスクの作成」が開きます。
ステップ3) タスクの作成ウィンドウで
- タスクのタイプとしてセッション タスクを選択します。
- タスクの名前を入力します。
- 作成ボタンをクリックします
ステップ4) マッピングを選択するウィンドウが表示されます。このセッションに関連付けるマッピングを選択します。この例では、「m_emp_emp_target」マッピングを選択し、「OK」ボタンをクリックします。
ステップ5) その後、「完了」ボタンをクリックします
セッションオブジェクトはタスク開発者に表示されます
ステップ6) このステップでは、セッション タスクのワークフローを作成します。ワークフロー デザイナーのアイコンをクリックします。
ステップ7) ワークフローデザイナーツール内
- ワークフローメニューをクリックします
- 作成オプションを選択
ステップ8) ワークフロー作成ウィンドウで
- ワークフロー名を入力してください
- 「OK」を選択します。 (他のプロパティはデフォルトのままにし、プロパティを変更する必要はありません)
ワークフロー マネージャーでは、ワークフローの実行の開始点となる開始タスクが表示されます。
ステップ9) ワークフローマネージャーで
- ナビゲーション ツリーの下のセッション フォルダーを展開します。
- 作成したセッションをワークフロー マネージャー ワークスペースにドラッグ アンド ドロップします。
ステップ10) ツールボックスのリンク タスク オプションをクリックします。
ステップ11) リンクを使用して開始タスクとセッションタスクをリンクします。
ステップ12) Double ワークフローマネージャーでセッションオブジェクトをクリックします。タスク プロパティを変更するためのタスク ウィンドウが開きます。
ステップ13) タスクの編集ウィンドウで
- マッピングタブを選択
- 接続プロパティの選択
- 接続をソースとターゲットに割り当てます。これは初期の手順で作成した接続です。
- 「OK」ボタンを選択
これでワークフローの構成が完了し、ワークフローを実行できるようになります。
開始タスクに複数のタスクを追加する方法
開始タスクは、ワークフロー実行の開始点です。 複数のタスクを開始タスクにリンクするには XNUMX つの方法があります。
- 並列シミュレーションの設定
- シリアル
並列リンクでは、タスクは開始タスクに直接リンクされ、すべてのタスクが同時に並列実行を開始します。
タスクを並行して追加する方法
ステップ1)ワークフロー マネージャーで、ワークフロー「wkf_run_command」を開きます。
ステップ2)ワークフローにセッションタスク「s_m_emp_emp_target」を追加します。 (セッションを選択してドラッグ アンド ドロップする)
ステップ3)ツールボックスからリンクタスクオプションを選択します
ステップ4) セッションタスクを開始タスクにリンクします(開始タスクをクリックし、クリックを押したままセッションタスクに接続します)
セッション タスクをリンクすると、ワークフローは次のようになります。
ステップ5)ワークフローを開始し、ワークフロー モニターで監視します。
シリアルモードでタスクを追加する方法
ただし、シリアル モードでタスクを追加する前に、タスクの並列実行を示すために追加したタスクを削除する必要があります。 そのために
ステップ1)ワークフロー「w.kf_run_command」を開きます。
- セッション タスクへのリンクを選択します。
- メニューで編集オプションを選択します
- 削除オプションを選択してください
ステップ2)確認ダイアログボックスがウィンドウに表示されるので、「はい」オプションを選択します。
開始タスクとセッションタスク間のリンクが削除されます。
ステップ3)もう一度トップメニューに戻り、ツールボックスからリンクタスクオプションを選択します。
ステップ4)セッションタスクをコマンドタスクにリンクします
リンク後のワークフローは次のようになります
ステップ5) ワークフローの視覚的な外観をより明確にするため
- ワークフローのワークスペースを右クリック
- アレンジメニューを選択
- 水平オプションを選択します
ワークフローを開始すると、最初にコマンド タスクが実行され、その実行後にセッション タスクが開始されます。
ワークフロー変数
ワークフロー変数を使用すると、ワークフロー内のさまざまなタスクが相互に情報を交換できるようになり、タスクがワークフロー内の他のタスクの特定のプロパティにアクセスできるようになります。 たとえば、現在の日付を取得するには、組み込み変数「sysdate」を使用できます。
最も一般的なシナリオは、ワークフロー内に複数のタスクがあり、XNUMX つのタスクで別のタスクの変数にアクセスする場合です。 たとえば、ワークフロー内に XNUMX つのタスクがあり、最初のタスクが正常に実行された場合にのみ XNUMX 番目のタスクを実行するという要件があるとします。 ワークフローで事前定義された変数を使用して、このようなシナリオを実装できます。
シナリオの実装
シリアル モードでタスクが追加されたワークフロー「wkf_run_command」がありました。 ここで、セッション タスクとコマンド タスクの間のリンクに条件を追加して、コマンド タスクが成功した後にのみセッション タスクが実行されるようにします。
ステップ1) ワークフロー「wkf_run_command」を開きます
ステップ2) Double セッションとコマンドタスクの間のリンクをクリックします
式ウィンドウが表示されます
ステップ3)Double 「cmd_create_folder」メニューの下のステータス変数をクリックします。変数「$cmd_create_folder.status」が右側のエディタ ウィンドウに表示されます。
ステップ4) 次に、変数「$cmd_create_folder.status」条件を成功ステータスに設定します。 つまり、前のタスクが実行され、その実行が成功した場合は、次のセッション タスクのみが実行されます。
- 変数を「$cmd_create_folder.status=SUCCEEDED」値に変更します。
- 「OK」ボタンをクリックします
ワークフローは次のようになります
このワークフローを実行すると、最初にコマンド タスクが実行され、成功した場合にのみセッション タスクのみが実行されます。
ワークフローパラメータ
ワークフロー パラメーターは、実行全体を通じて一定に保たれる値です。 値が割り当てられると、値は変わりません。 パラメータはワークフロー プロパティで使用でき、その値はパラメータ ファイルで定義できます。 たとえば、ハードコードされた接続値を使用する代わりに、接続名にパラメータ/変数を使用し、パラメータ ファイルで値を定義できます。
パラメータ ファイルは、マッピング/ワークフロー変数またはパラメータの値を定義するファイルです。 ファイルの拡張子は「.par」です。 一般的な標準として、ワークフロー用にパラメータ ファイルが作成されます。
パラメータファイルのメリット
- ある環境から別の環境へのコードの移行に役立ちます
- 簡単なデバッグとテストが可能
- コードを変更せずに値を簡単に変更できます
パラメータファイルの構造
パラメータファイルの構造
- [フォルダー名.WF:ワークフロー名]
- $パラメータ名=パラメータ値
Folder_name はリポジトリ フォルダーの名前、workflow name はパラメーター ファイルを作成するワークフローの名前です。
初期のセッションでソースとターゲットに割り当てたデータベース接続「guru99」のパラメーター ファイルを作成します。
パラメータファイルの作成方法
ステップ1)新しい空のファイル(メモ帳ファイル)を作成します
ステップ2)図に示すようにファイルにテキストを入力します
ステップ3) ファイルを「C:\guru99」のフォルダー guru99 に「wkf_run_command.par」として保存します。
ファイル内にパラメータ「$DBConnection_SRC」を作成し、これをワークフロー内の接続に割り当てます。
ステップ4)ワークフロー「wkf_run_command」を開きます
- ワークフローメニューの選択
- 編集オプションを選択してください
ステップ5)これにより、このウィンドウでワークフローの編集ウィンドウが開きます。
- プロパティタブメニューに移動します
- パラメータファイル名を「c:\guru99\wkf_run_command.par」と入力します。
- 「OK」ボタンを選択
これでパラメータ ファイルの内容の定義が完了し、それをワークフローに指定します。
次のステップは、セッションでパラメータを使用することです。
ステップ6) ワークフローでセッション「s_m_emp_emp_target」をダブルクリックし、
- 「マッピング」タブのメニューを選択します
- 左側のパネルで接続プロパティを選択します
- ターゲット接続をクリックします。これは「guru99」としてハードコードされています。
ステップ7)接続ブラウザウィンドウが表示されます。
- 接続変数を使用するオプションを選択します
- 接続変数名を「$DBConnection_SRC」と入力します。
- 「OK」ボタンを選択
ステップ8) タスク編集ウィンドウにターゲットの接続変数が表示されます。タスク編集ウィンドウで「OK」ボタンを選択します。
これで、接続用のパラメータの作成とその値のパラメータ ファイルへの割り当てが完了しました。
ワークフローを実行すると、ワークフローはパラメータ ファイルを選択し、パラメータ ファイル内のパラメータ/変数の値を探し、それらの値を取得します。