初心者向けの DataStage チュートリアル: IBM DataStage (ETL ツール) トレーニング

データステージとは何ですか?

DataStage は、ソースからターゲット宛先にデータを抽出、変換、ロードするために使用される ETL ツールです。これらのデータのソースには、シーケンシャル ファイル、インデックス ファイル、リレーショナル データベース、外部データ ソース、 archiDataStage は、ビジネス インテリジェンスの取得に役立つ高品質のデータを提供することにより、ビジネス分析を促進するために使用されます。

DataStage ETL ツールは、異なるシステム間のインターフェイスとして大規模な組織で使用されています。ソースからターゲット宛先へのデータの抽出、変換、ロードを処理します。 90 年代半ばに VMark によって初めて発売されました。と IBM 2005 年に DataStage を買収し、名前が変更されました。 IBM WebSphere DataStage および later 〜へ IBM インフォスフィア。

これまでに市場で入手可能な Datastage のさまざまなバージョンは、Enterprise Edition (PX)、Server Edition、MVS Edition、DataStage for PeopleSoft などでした。最新版は IBM InfoSphere DataStage

IBM 情報サーバーには以下が含まれますwing 製品、

  • IBM InfoSphere DataStage
  • IBM InfoSphere QualityStage
  • IBM InfoSphere 情報サービス・ディレクター
  • IBM InfoSphere 情報アナライザー
  • IBM 情報サーバー FastTrack
  • IBM InfoSphere ビジネス用語集

データステージの概要

Datastage には次のものがありますwing 能力。

  • 幅広いエンタープライズおよび外部データ ソースからのデータを統合できます。
  • データ検証ルールを実装します
  • 大量のデータの処理と変換に役立ちます
  • スケーラブルな並列処理アプローチを使用します
  • comを扱うことができますplex 変換と複数の統合プロセスの管理
  • エンタープライズ アプリケーションへの直接接続をソースまたはターゲットとして活用
  • メタデータを分析とメンテナンスに活用する
  • バッチ、リアルタイム、または Web サービスとして動作します

続きましてwing この DataStage チュートリアルのセクションでは、次のことを簡単に説明します。wing の側面 IBM InfoSphere DataStage:

  • データ変換
  • Jobs > Create New Job
  • 並列処理

InfoSphere DataStage and QualityStage は、以下のようなエンタープライズ・アプリケーションおよびデータ・ソース内のデータにアクセスできます。

処理ステージの種類

IBM infosphere ジョブは、相互にリンクされた個別のステージで構成されます。データ ソースからデータ ターゲットへのデータの流れを説明します。通常、ステージには少なくとも XNUMX つのデータ入力および/または XNUMX つのデータ出力があります。ただし、一部のステージでは複数のデータ入力を受け入れ、複数のステージに出力できます。

ジョブ設計では、次のようなさまざまなステージを使用できます。

  • トランスフォームステージ
  • フィルターステージ
  • アグリゲーターステージ
  • 重複ステージの削除
  • 参加ステージ
  • ルックアップステージ
  • コピーステージ
  • ソートステージ
  • コンテナ

DataStage コンポーネントと Archi構造

DataStage には XNUMX つの主要コンポーネントがあります。

  1. 管理者: 管理タスクに使用されます。 これには、DataStage ユーザーの設定、パージ基準の設定、プロジェクトの作成と移動が含まれます。
  2. マネージャー: ETL DataStage のリポジトリのメイン インターフェイスです。 再利用可能なメタデータの保存と管理に使用されます。 DataStage マネージャーを通じて、リポジトリの内容を表示および編集できます。
  3. デザイナー: DataStage アプリケーションまたはジョブを作成するために使用されるデザイン インターフェイス。 データ ソース、必要な変換、およびデータの宛先を指定します。 ジョブはコンパイルされて、ディレクターによってスケジュールされ、サーバーによって実行される実行可能ファイルを作成します。
  4. 取締役: これは、DataStage サーバー ジョブと並列ジョブの検証、スケジュール、実行、監視に使用されます。
データステージ Archi構造図
データステージ Archi構造図

上の画像はその方法を説明しています IBM Infosphere DataStage は、Infosphere DataStage の他の要素と対話します。 IBM 情報サーバー プラットフォーム。 DataStage は XNUMX つのセクションに分かれています。 共有コンポーネントとランタイム Archi構造.

   
アクティビティ

共有

統一されたユーザーインターフェース

  • グラフィカル・デザイン・インターフェースは、InfoSphere DataStage アプリケーション (ジョブと呼ばれる) を作成するために使用されます。
  • 各ジョブは、データ ソース、必要な変換、およびデータの宛先を決定します。
  • ジョブはコンパイルされて、並列ジョブ フローと再利用可能なコンポーネントが作成されます。 これらは、InfoSphere DataStage and QualityStage Director によってスケジュールされ、実行されます。
  • Designer クライアントは、リポジトリ内のメタデータを管理します。 コンパイルされた実行データは Information Server エンジン層に展開されます。

共通サービス

  • 影響分析や検索などのメタデータ サービス
  • InfoSphere DataStage タスクの開発と保守をサポートする設計サービス
  • InfoSphere DataStage のすべての機能をサポートする実行サービス

共通の並列処理

  • このエンジンは、さまざまな設定でデータを抽出、変換、ロードする実行可能ジョブを実行します。
  • エンジンは、大量の作業を処理するための並列処理とパイプラインのアプローチを選択します。

ランタイム Archi構造

労働安全衛生スクリプト

  • ここでは、OSH (オーケストレーション シェル スクリプト) の生成と実行フローについて説明します。 IBM そしてその流れ IBM Information Server エンジンを使用した Infosphere DataStage
  • これにより、グラフィカルなポイント アンド クリック手法を使用して、データの抽出、クレンジング、変換、統合、およびターゲット ファイルへのロードを行うジョブ フローを開発できます。

Datastage ツールの前提条件

DataStage の場合は、次のものが必要です。wing セットアップ。

  • 情報空間
  • DataStage サーバー 9.1.2 以降
  • Microsoft Visual Studio .NET 2010 Express Edition C++
  • Oracle に接続する場合はクライアント (インスタント クライアントではなくフル クライアント) Oracle データベース
  • DB2 クライアント (DB2 データベースに接続する場合)

この初心者向け DataStage チュートリアル シリーズでは、InfoSphere Information Server をダウンロードしてインストールする方法を学習します。

InfoSphere Information Server のダウンロードとインストール

DataStage にアクセスするには、最新バージョンの DataStage をダウンロードしてインストールします。 IBM インフォスフィアサーバー。サーバーは AIX、Linux、および Windows オペレーティング·システム。要件に応じて選択できます。

InfoSphere の古いバージョンから新しいバージョンにデータを移行するには、資産交換ツールを使用します。

インストールファイル

Infosphere Datastage をインストールして構成するには、次のものが必要です。wing セットアップ内のファイル。

Windows,

  • EtlDeploymentPackage-windows-oracle.pkg
  • EtlDeploymentPackage-windows-db2.pkg

Linuxの場合

  • EtlDeploymentPackage-linux-db2.pkg
  • EtlDeploymentPackage-linux-oracle.pkg

CDC トランザクション ステージ ジョブのデータ変更のプロセス フロー

CDC での変更データの処理フロー

  1. データベースの「InfoSphere CDC」サービスは、ソース データベースからの変更を監視し、キャプチャします。
  2. 「InfoSphere CDC」はレプリケーション定義に従い、変更データを「InfoSphere CDC for InfoSphere DataStage」に転送します。
  3. 「InfoSphere CDC for InfoSphere DataStage」サーバーは、TCP/IP セッションを通じてデータを「CDC トランザクション ステージ」に送信します。 また、「InfoSphere CDC for InfoSphere DataStage」サーバーは、キャプチャされたログ内のトランザクション境界をマークするために COMMIT メッセージを (ブックマーク情報とともに) 送信します。
  4. 「InfoSphere CDC for InfoSphere DataStage」サーバーによって送信される COMMIT メッセージごとに、「CDC トランザクション ステージ」はウェーブ終了 (EOW) マーカーを作成します。 これらのマーカーは、すべての出力リンク上でターゲット データベース コネクタ ステージに送信されます。
  5. 「ターゲット データベース コネクタ ステージ」は、すべての入力リンクでウェーブ終了マーカーを受信すると、ブックマーク情報をブックマーク テーブルに書き込み、トランザクションをターゲット データベースにコミットします。
  6. 「InfoSphere CDC for InfoSphere DataStage」サーバーは、「ターゲット データベース」上のブックマーク テーブルにブックマーク情報を要求します。
  7. 「InfoSphere CDC for InfoSphere DataStage」サーバーはブックマーク情報を受信します。

この情報は次の目的で使用されます。

  • レプリケーションの開始時に変更が読み取られるトランザクション ログの開始点を決定します。
  • 既存のトランザクション ログをクリーンアップできるかどうかを判断するには

SQL レプリケーションのセットアップ

Datastage を始める前に、データベースをセットアップする必要があります。 2 つの DBXNUMX データベースを作成します。

  • XNUMX つはレプリケーション ソースとして機能し、
  • 目標としてはXNUMXつ。

また、XNUMX つのテーブル (Product と Inventory) を作成し、サンプル データを入力します。 次に、次の間の統合をテストできます。 SQL レプリケーションとデータステージ。

次に、以下を作成して SQL レプリケーションをセットアップします。 コントロールテーブル、サブスクリプションセット、登録およびサブスクリプションセットメンバー。これについては、後でさらに詳しく学びますtails 次のセクションで。

ここでは、データベースとして小売販売品目の例を取り上げ、Inventory と Product という XNUMX つのテーブルを作成します。 これらのテーブルは、これらのセットを通じてソースからターゲットにデータをロードします。 (コントロールテーブル、サブスクリプションセット、登録、およびサブスクリプションセットメンバー.)

ステップ1) というソース データベースを作成します。 セール。 このデータベースの下に XNUMX つのテーブルを作成します BOX > 棚卸.

ステップ2) 以下を実行してくださいwing SALESデータベースを作成するコマンド。

db2 create database SALES

ステップ3) オンにする archiSALES データベースの val ログ。また、次のコマンドを使用してデータベースをバックアップします。wing コマンド

db2 update db cfg for SALES using LOGARCHMETH3 LOGRETAIN
db2 backup db SALES

ステップ4) 同じコマンド プロンプトで、ダウンロードした圧縮ファイルから抽出した sqlrepl-datastage-tutorial ディレクトリ内の setupDB サブディレクトリに移動します。

SQL レプリケーションのセットアップ

ステップ5) 以下を使用してくださいwing 次のコマンドを実行して、インベントリ テーブルを作成し、テーブルにデータをインポートするコマンドwing

db2 は、ixf create の inventory.ixf からインベントリにインポートします

ステップ6) ターゲットテーブルを作成します。 ターゲットデータベースに次の名前を付けます ステージDB。

これでデータベースのソースとターゲットの両方を作成できたので、この DataStage チュートリアルの次のステップでは、データベースをレプリケートする方法を見ていきます。

次のことwing 情報が役立つ可能性があります ODBC データソースのセットアップ.

SQL レプリケーション オブジェクトの作成

以下の図は、変更データの流れがソース データベースからターゲット データベースにどのように配信されるかを示しています。 テーブル間のソースからターゲットへのマッピングを作成します。 サブスクリプション セットのメンバー そしてメンバーをグループ化します 購読.

SQL レプリケーション オブジェクトの作成

InfoSphere CDC (Change Data Capture) 内のレプリケーションの単位は、サブスクリプションと呼ばれます。

  • ソースで行われた変更は「キャプチャ コントロール テーブル」にキャプチャされ、CD テーブルに送信され、次にターゲット テーブルに送信されます。適用プログラムには de が含まれますが、tails 変更が必要な行について。また、サブスクリプション セットの CD テーブルにも参加します。
  • サブスクリプションにはマッピングが含まれていますtails ソース データ ストアのデータをターゲット データ ストアに適用する方法を指定します。現在、CDC は次のように呼ばれていることに注意してください。 InfoSphere データのレプリケーション.
  • サブスクリプションが実行されると、InfoSphere CDC はソース・データベース上の変更をキャプチャーします。 InfoSphere CDC は、変更データをターゲットに配信し、保管します。 sync ターゲット データベースのブックマーク テーブル内のポイント情報。
  • InfoSphere CDC は、ブックマーク情報を使用して、InfoSphere DataStage ジョブの進行状況をモニターします。
  • 失敗した場合は、ブックマーク情報が再開ポイントとして使用されます。この例では、ASN.IBMSNAP_FEEDETL テーブルには DataStage 関連が格納されます syncDataStage の進行状況を追跡するために使用される hpoint 情報。

このセクションでは、 IBM DataStage トレーニング チュートリアルでは、次のことを行う必要があります。wing もの、

  • レプリケーション オプションを保存するための CAPTURE CONTROL テーブルと APPLY CONTROL テーブルを作成する
  • PRODUCTテーブルとINVENTORYテーブルをレプリケーション元として登録する
  • XNUMX つのメンバーを含むサブスクリプション セットを作成する
  • サブスクリプション セットのメンバーとターゲット CCD テーブルを作成する

ASNCLP コマンド行プログラムを使用して SQL レプリケーションをセットアップする

ステップ1) sqlrepl-datastage-tutorial/setupSQLRep ディレクトリで crtCtlTablesCaptureServer.asnclp スクリプト ファイルを見つけます。

ステップ2) ファイル内の置換そして " ” に、SALES データベースに接続するためのユーザー ID とパスワードを入力します。

ステップ3) ディレクトリを sqlrepl-datastage-tutorial/setupSQLRep ディレクトリに変更し、スクリプトを実行します。 以下を使用してくださいwing 指示。 このコマンドは、SALES データベースに接続し、キャプチャ コントロール テーブルを作成するための SQL スクリプトを生成します。

asnclp –f crtCtlTablesCaptureServer.asnclp

ステップ4) 同じディレクトリで crtCtlTablesApplyCtlServer.asnclp スクリプト ファイルを見つけます。 次に、次の 2 つのインスタンスを置き換えます。 そして " 」を、STAGEDB データベースに接続するためのユーザー ID とパスワードに置き換えます。

ステップ5) 同じコマンドプロンプトで次のコマンドを使用しますwing 適用コントロールテーブルを作成するコマンド。

asnclp –f crtCtlTablesApplyCtlServer.asnclp

ステップ6) crtRegistration.asnclp スクリプト ファイルを見つけて、次のすべてのインスタンスを置き換えます。 SALES データベースに接続するためのユーザー ID を使用します。 また、「」を変更します”を接続パスワードに入力します。

ステップ7) ソーステーブルを登録するには、次のように使用します。wing 脚本。 登録作成の一環として、ASNCLP プログラムは XNUMX つの CD テーブルを作成します。 CDPRODUCT と CDINVENTORY。

asnclp –f crtRegistration.asnclp

CREATE REGISTRATION コマンドでは次のものが使用されます。wing オプション:

  • 差分リフレッシュ: ソース表の行が変更された場合にのみ、アプライ・プログラムにターゲット表を更新するよう求めます。
  • 両方の画像: このオプションは、変更が発生する前のソース列の値を登録するために使用され、変更が発生した後の値を XNUMX つ登録します。

ステップ8) ターゲットデータベース(STAGEDB)に接続するには、以下を使用します。wing 手順。

  • crtTableSpaceApply.bat ファイルを見つけて、テキスト エディタで開きます。
  • 交換するそしてユーザーIDとパスワードを使って
  • DB2 コマンド ウィンドウで crtTableSpaceApply.bat と入力し、ファイルを実行します。
  • このバッチ ファイルは、ターゲット データベース (STAGEDB) に新しいテーブルスペースを作成します。

ステップ9) crtSubscriptionSetAndAddMembers.asnclp スクリプト ファイルを見つけて、次の操作を実行します。wing 変更。

  • すべてのインスタンスを置き換えますそしてSALES データベース (ソース) に接続するためのユーザー ID とパスワードを使用します。
  • すべてのインスタンスを置き換えますそしてAGEDB データベース (ターゲット) に接続するためのユーザー ID を使用します。

変更後、スクリプトを実行して、ソース テーブルとターゲット テーブルをグループ化するサブスクリプション セット (ST00) を作成します。 このスクリプトは、XNUMX つのサブスクリプション セット メンバーと、変更されたデータを保存するターゲット データベース内の CCD (一貫性のある変更データ) も作成します。 このデータは Infosphere DataStage によって使用されます。

ステップ10) スクリプトを実行して、サブスクリプション セット、サブスクリプション セットのメンバー、および CCD テーブルを作成します。

asnclp –f crtSubscriptionSetAndAddMembers.asnclp

サブスクリプション セットと XNUMX つのメンバーの作成に使用されるさまざまなオプションは次のとおりです。

  • 凝縮オフで完了
  • 外部
  • ロードタイプインポートエクスポート
  • タイミング連続

ステップ11) レプリケーション管理ツールの欠陥が原因です。 TARGET_CAPTURE_SCHEMA 列を設定するには、別のバッチ ファイルを実行する必要があります。 IBMSNAP_SUBS_SET コントロール テーブルを NULL に設定します。

  • updateTgtCapSchema.bat ファイルを見つけます。 テキストエディタで開きます。 交換するそしてAGEDB データベースに接続するためのユーザー ID を使用します。
  • DB2 コマンド ウィンドウで、コマンド updateTgtCapSchema.bat を入力し、ファイルを実行します。

CCD テーブルを DataStage にマップするための定義ファイルの作成

次のステップでレプリケーションを行う前に、CCD テーブルを DataStage に接続する必要があります。 このセクションでは、SQL を DataStage に接続する方法を説明します。

CCD テーブルを DataStage に接続するには、Datastage 定義ファイル (.dxs) を作成する必要があります。 .dsx ファイル形式は、DataStage がジョブ定義をインポートおよびエクスポートするために使用します。 ASNCLP スクリプトを使用して XNUMX つの .dsx ファイルを作成します。 たとえば、ここでは XNUMX つの .dsx ファイルを作成しました。

  • stagedb_AQ00_SET00_sJobs.dsx: XNUMX つの並列ジョブのワークフローを指示するジョブ シーケンスを作成します。
  • stagedb_AQ00_SET00_pJobs.dsx : XNUMX つの並列ジョブを作成します

ASNCLP プログラムは、CCD 列を Datastage 列形式に自動的にマップします。 ASNCLP が実行されている場合にのみサポートされます。 Windows、Linux、または Unix の手順。

CCD テーブルを DataStage にマップするための定義ファイル

Datastage ジョブは CCD テーブルから行をプルします。

  1. 1 つのジョブで syncDataStage が 2 つのテーブルからのデータ抽出を中断した hpoint。ジョブは、 SYNCST00 サブスクリプション セットの HPOINT 値は、 IBMSNAP_SUBS_SET テーブルを作成し、それを MAX_ に挿入します。SYNCの HPOINT 列 IBMSNAP_FEEDETL テーブル。
  2. PRODUCT_CCD テーブルと INVENTORY_CCD テーブルからデータを抽出する 2 つのジョブ。ジョブは、MIN_ を選択することで、どの行の抽出を開始するかを認識します。SYNCHPOINT と MAX_SYNCからの HPOINT 値 IBMサブスクリプション セットの SNAP_FEEDETL テーブル。

レプリケーションの開始

レプリケーションを開始するには、以下の手順を使用します。 CCD テーブルにデータが設定されている場合は、レプリケーション セットアップが検証されていることを示します。 ターゲット CCD テーブル内の複製されたデータを表示するには、DB2 コントロール センターのグラフィカル ユーザー インターフェイスを使用します。

ステップ1) DB2 が実行されていないことを確認してから、次を使用します。 db2の開始

ステップ2) 次に、オペレーティング システム プロンプトから asncap コマンドを使用して、プログラムのキャプチャを開始します。 例えば。

asncap capture_server=SALES

上記のコマンドは、SALES データベースをキャプチャ サーバーとして指定します。 キャプチャの実行中はコマンド ウィンドウを開いたままにしてください。

ステップ3) 次に、新しいコマンド プロンプトを開きます。 次に、 APPLY asnapply コマンドを使用してプログラムを実行します。

asnapply control_server=STAGEDB apply_qual=AQ00

レプリケーションの開始

  • このコマンドは、AGEDB データベースをアプライ・コントロール・サーバー (アプライ・コントロール表を含むデータベース) として指定します。
  • 適用修飾子としての AQ00 (このコントロール表のセットの識別子)

適用を実行した状態でコマンド ウィンドウを開いたままにします。

ステップ4) 次に、別のコマンド プロンプトを開き、db2cc コマンドを発行して DB2 コントロール センターを起動します。 デフォルトのコントロールセンターを受け入れます。

ステップ5) 左側のナビゲーション ツリーで、[すべてのデータベース] > [STAGEDB] を開き、[テーブル] をクリックします。 Double テーブル名 (Product CCD) をクリックしてテーブルを開きます。このような感じになります。

レプリケーションの開始

いいねwise、INVENTORY の CCD テーブルを開くこともできます。

レプリケーションの開始

Datastage ツールでプロジェクトを作成する方法

まず、DataStage でプロジェクトを作成します。 そのためには、InfoSphere DataStage 管理者である必要があります。

インストールとレプリケーションが完了したら、プロジェクトを作成する必要があります。 DataStage では、プロジェクトはデータを整理するための方法です。 これには、特定のプロジェクトでのデータ ファイル、ステージ、ビルド ジョブの定義が含まれます。

DataStage でプロジェクトを作成するには、以下の手順に従います。

ステップ 1) DataStage ソフトウェアを起動します

DataStage and QualityStage アドミニストレーターを起動します。次に、[スタート] > [すべてのプログラム] > をクリックします。 IBM 情報サーバー > IBM WebSphere DataStage および QualityStage 管理者。

ステップ 2) DataStage サーバーとクライアントを接続する

DataStage クライアントから DataStage サーバーに接続するには、「de」と入力します。tails ドメイン名、ユーザーID、パスワード、サーバー情報など。

ステップ 3) 新しいプロジェクトを追加する

「WebSphere DataStage 管理」ウィンドウ内。 「プロジェクト」タブをクリックし、「追加」をクリックします。

ステップ 4) プロジェクトを入力しますtails

「WebSphere DataStage 管理」ウィンドウで、「de」と入力します。tails ような

  1. お名前
  2. ファイルの場所
  3. 「OK」をクリックします

Datastage ツールでプロジェクトを作成する

各プロジェクトには以下が含まれます。

  • データステージのジョブ
  • 内蔵コンポーネント。 これらはジョブで使用される事前定義されたコンポーネントです。
  • ユーザー定義のコンポーネント。 これらは、DataStage Manager または DataStage Designer を使用して作成されたカスタマイズされたコンポーネントです。

Datastage Infosphere にレプリケーション ジョブをインポートする方法を見ていきます。

Datastage および QualityStage Designer でレプリケーション ジョブをインポートする方法

ジョブをインポートします。 IBM InfoSphere DataStage and QualityStage Designer クライアント。そして、それらを IBM InfoSphere DataStage and QualityStage Director クライアント。

デザイナー兼クライアントは空白のようなもの canva雇用を構築するため。 データの抽出、変換、ロード、品質のチェックを行います。 ジョブの基本的な構成要素を形成するツールを提供します。 それには以下が含まれます

  • インターンシップ: データ ソースに接続して、ファイルの読み取りまたは書き込み、およびデータの処理を行います。
  • リンク: データが流れるステージを接続します。

InfoSphere DataStage and QualityStage Designer クライアントのステージは、Designer ツール・パレットに保管されます。

次のことwing ステージは InfoSphere QualityStage に含まれています。

  • 調査段階
  • 標準化段階
  • 一致周波数ステージ
  • ワンソースマッチステージ
  • XNUMXソースのマッチステージ
  • サバイブステージ
  • 標準化品質評価 (SQA) 段階

DataStage InfoSphere では 4 種類のジョブを作成できます。

  • パラレルジョブ
  • シーケンスジョブ
  • メインフレーム ジョブ
  • サーバージョブ

レプリケーション ジョブ ファイルをインポートする方法を段階的に見てみましょう。

ステップ1) DataStage および QualityStage デザイナーを起動します。 [スタート] > [すべてのプログラム] > をクリックします。 IBM 情報サーバー > IBM WebSphere DataStage および QualityStage デザイナー

ステップ2) [プロジェクトにアタッチ]ウィンドウで、次のように入力します。wing details.

  • ドメイン
  • ユーザー名
  • パスワード
  • プロジェクト名
  • OK

Datastage および QualityStage でレプリケーション ジョブをインポートする

ステップ3) 次に、「ファイル」メニューから「インポート」をクリックします -> DataStage コンポーネント。

新しい DataStage リポジトリ インポート ウィンドウが開きます。

  1. このウィンドウで参照します STAGEDB_AQ00_ST00_sJobs.dsx 先ほど作成したファイル
  2. 「すべてインポート」オプションを選択します。
  3. マークチェックbox 「影響分析を実行します。」
  4. [OK] をクリックします。

Datastage および QualityStage でレプリケーション ジョブをインポートする

ジョブがインポートされると、DataStage は STAGEDB_AQ00_ST00_sequence ジョブを作成します。

ステップ4) 同じ手順に従って、 STAGEDB_AQ00_ST00_pJobs.dsx ファイル。 このインポートにより、XNUMX つの並列ジョブが作成されます。

ステップ5) 「デザイナー リポジトリ」ペインの下 -> SQLREPフォルダーを開きます。 フォルダー内には、Sequence Job と XNUMX つの並列ジョブが表示されます。

Datastage および QualityStage でレプリケーション ジョブをインポートする

ステップ6) シーケンスジョブを表示します。 リポジトリ ツリーに移動し、STAGEDB_AQ00_ST00_sequence ジョブを右クリックして、[編集] をクリックします。 ジョブ シーケンスが制御する XNUMX つの並列ジョブのワークフローが表示されます。

Datastage および QualityStage でレプリケーション ジョブをインポートする

それぞれのアイコンがステージになっており、

  • getExtractRange ステージ: を更新します。 IBMSNAP_FEEDETL テーブル。データ抽出の開始点は DataStage が最後に行を抽出した点に設定され、終了点はサブスクリプション セットに対して処理された最後のトランザクションに設定されます。
  • getExtractRange成功: このステージは、extractFromINVENTORY_CCD ステージと extractFromPRODUCT_CCD ステージに開始点を供給します。
  • すべての抽出が成功: この段階では、extractFromINVENTORY_CCD と extractFromPRODUCT_CCD の両方が正常に完了したことを確認します。それから合格します sync setRangeProcessed ステージにフェッチされた最後の行のポイント。
  • setRange処理されたステージ:更新します IBMSNAP_FEEDETL テーブル。したがって、DataStage は次のデータ抽出ラウンドをどこから開始すればよいかを認識します。

ステップ7) 並列ジョブを表示します。 STAGEDB_ASN_INVENTORY_CCD を右クリックし、リポジトリの下の編集を選択します。 以下に示すようなウィンドウが開きます。

Datastage および QualityStage でレプリケーション ジョブをインポートする

上の画像では、在庫 CCD テーブルからのデータと Sync点でtails FEEDETL テーブルからのデータは Lookup_6 ステージにレンダリングされます。

DataStage から STAGEDB データベースへのデータ接続の作成

次のステップは、InfoSphere DataStage と SQL レプリケーションのターゲット・データベースの間にデータ接続を構築することです。 これには CCD テーブルが含まれています。

DataStage では、データ接続オブジェクトと関連するコネクタ ステージを使用して、ジョブ デザインでデータ ソースへの接続をすばやく定義します。

ステップ1) STAGEDB には、DataStage が使用する両方のアプライ コントロール テーブルが含まれています。 syncデータ抽出とデータが抽出される CCD テーブルを更新します。以下を使用してくださいwing コマンド

db2 catalog tcpip node SQLREP remote ip_address server 50000
db2 catalog database STAGEDB as STAGEDB2 at node SQLREP

Note: STAGEDBが作成されたシステムのIPアドレス

ステップ2) [ファイル] > [新規作成] > [その他] > [データ接続] をクリックします。

ステップ3) 「パラメータ」と「一般」という XNUMX つのタブのあるウィンドウが表示されます。

DataStage から STAGEDB データベースへのデータ接続

ステップ4) このステップでは、

  1. 一般に、タブでデータ接続に sqlreplConnect という名前を付けます。
  2. 以下に示すように、「パラメータ」タブで
  • 「ステージタイプを使用して接続」フィールドの横にある参照ボタンをクリックし、
  • 開いたウィンドウで、リポジトリ ツリーを [Stage Types] –> [Parallel] – > [Database] –> [DB2 Connector] に移動します。
  • 開くをクリックします。

DataStage から STAGEDB データベースへのデータ接続

ステップ5) 「接続パラメータ」テーブルに「de」と入力します。tails ような

  • ConnectionString: ステージDB2
  • : STAGEDBデータベースに接続するためのユーザーID
  • パスワード : STAGEDBデータベースに接続するためのパスワード
  • インスタンス: STAGEDB データベースを含む DB2 インスタンスの名前

ステップ6) 次のウィンドウでデータ接続を保存します。 「保存」ボタンをクリックします。

STAGEDB から DataStage へのテーブル定義のインポート

前のステップでは、InfoSphere DataStage と STAGEDB データベースが接続されていることを確認しました。 次に、PRODUCT_CCD テーブルと INVENTORY_CCD テーブルの列定義とその他のメタデータを Information Server リポジトリにインポートします。

デザイナー ウィンドウで、以下の手順に従います。

ステップ1) [インポート] > [テーブル定義] > [コネクタ インポート ウィザードの開始] を選択します。

ステップ2) ウィザードのコネクタ選択ページで、DB2 コネクタを選択し、「次へ」をクリックします。

STAGEDB から DataStage へのテーブル定義のインポート

ステップ3) 接続の詳細ページで「ロード」をクリックします。 これにより、ウィザードのフィールドに、前の章で作成したデータ接続からの接続情報が入力されます。

STAGEDB から DataStage へのテーブル定義のインポート

ステップ4) 同じページで「接続のテスト」をクリックします。 これにより、DataStage は STAGEDB データベースへの接続を試行するように求められます。 「接続に成功しました」というメッセージが表示されます。 「次へ」をクリックします。

STAGEDB から DataStage へのテーブル定義のインポート

ステップ5) [データ ソースの場所] ページで、[ホスト名] フィールドと [データベース名] フィールドに正しく入力されていることを確認します。 次に、「次へ」をクリックします。

ステップ6) スキーマページ。 アプライ・コントロール・テーブル (ASN) のスキーマを入力するか、ASN スキーマがスキーマ・フィールドに事前に入力されていることを確認します。 次に、「次へ」をクリックします。 選択ページには、ASN スキーマで定義されているテーブルのリストが表示されます。

STAGEDB から DataStage へのテーブル定義のインポート

ステップ7) メタデータをインポートする必要がある最初のテーブルは次のとおりです。 IBMSNAP_FEEDETL、アプライ・コントロール・テーブル。についての詳細が記載されています。 syncDataStage が CCD テーブルからどの行をフェッチしたかを追跡できるようにする同期ポイント。選ぶ IBMSNAP_FEEDETL を選択し、「次へ」をクリックします。

ステップ8) のインポートを完了するには、 IBMSNAP_FEEDETL テーブル定義。 「インポート」をクリックし、開いたウィンドウで「開く」をクリックします。

ステップ9) 手順 1 ~ 8 をあと XNUMX 回繰り返して、PRODUCT_CCD テーブルの定義をインポートし、次に INVENTORY_CCD テーブルの定義をインポートします。

注意: 在庫と製品の定義をインポートする際には、スキーマを ASN から PRODUCT_CCD および INVENTORY_CCD が作成されたスキーマに必ず変更してください。

現在、DataStage にはすべての機能が備わっています。tails これは、SQL レプリケーションのターゲット データベースに接続するために必要です。

DataStage ジョブのプロパティの設定

XNUMX つの DataStage 並列ジョブのそれぞれに、STAGEDB データベースに接続する XNUMX つ以上のステージが含まれています。 ステージを変更して、接続情報を追加し、DataStage が設定するデータセット ファイルにリンクする必要があります。

ステージには、編集可能な事前定義されたプロパティがあります。 ここでは、STAGEDB_ASN_PRODUCT_CCD_extract パラレル ジョブ用にこれらのプロパティの一部を変更します。

ステップ1) Designer リポジトリ ツリーを参照します。 SQLREP フォルダーで、「STAGEDB_ASN_PRODUCT_CCD_extract」パラレル ジョブを選択します。 編集するには、ジョブを右クリックします。 並列ジョブの設計ウィンドウがデザイナー パレットに開きます。

ステップ2) 緑色のアイコンを見つけます。このアイコンは、DB2 コネクタ ステージを示します。 CCD テーブルからデータを抽出するために使用されます。 Doubleアイコンをクリックします。ステージエディタウィンドウが開きます。

DataStage ジョブのプロパティの設定

DataStage ジョブのプロパティの設定

ステップ3) エディターで「ロード」をクリックしてフィールドに接続情報を入力します。 ステージエディタを閉じて変更を保存するには、「OK」をクリックします。

ステップ4) ここで、「STAGEDB_ASN_PRODUCT_CCD_extract」パラレル・ジョブの設計ウィンドウに戻ります。取得用のアイコンを見つけますSynchPoints DB2 コネクタ ステージ。それから doubleアイコンをクリックします。

ステップ5) 次に、ロード ボタンをクリックして、フィールドに接続情報を入力します。

注意: アプライ・コントロール・サーバーとして STAGEDB 以外のデータベースを使用している場合。次に、取得用の接続情報をロードするオプションを選択します。SynchPoints ステージ。CCD テーブルではなくコントロール テーブルと対話します。

ステップ6) このステップでは、

  • InfoSphere DataStage が実行されるシステム上に空のテキスト ファイルを作成します。
  • このファイルに productdataset.ds という名前を付け、保存場所をメモします。
  • DataStage は、CCD テーブルから変更をフェッチした後、このファイルに変更を書き込みます。
  • リンクされたジョブ間でデータを移動するために使用されるデータ セットまたはファイルは、永続データ セットと呼ばれます。 これは DataSet ステージによって表されます。

ステップ7) 次に、デザイン ウィンドウでステージ エディターを開き、 double 「insert_into_a_dataset」アイコンをクリックします。別のウィンドウが開きます。

DataStage ジョブのプロパティの設定

ステップ8) このウィンドウでは、

DataStage ジョブのプロパティの設定

  • プロパティ タブで、ターゲット フォルダーが開いており、File = DATASETNAME プロパティが強調表示されていることを確認します。
  • 右側にファイルフィールドがあります
  • productdataset.ds ファイルへのフルパスを入力します
  • 「OK」をクリックします。

これで、製品 CCD テーブルに必要なプロパティがすべて更新されました。 デザイン ウィンドウを閉じて、すべての変更を保存します。

ステップ9) 次に、デザイナーのリポジトリ ペインから STAGEDB_ASN_INVENTORY_CCD_extract パラレル ジョブを見つけて開き、手順 3 ~ 8 を繰り返します。

注意:

  • 取得するには、コントロール サーバー データベースの接続情報をステージ エディターにロードする必要があります。Synchポイントステージ。コントロールサーバーが STAGEDB ではない場合。
  • STAGEDB_ST00_AQ00_getExtractRange および STAGEDB_ST00_AQ00_markRangeProcessed パラレル ジョブの場合は、すべての DB2 コネクタ ステージを開きます。 次に、load 関数を使用して、STAGEDB データベースの接続情報を追加します。

DataStage ジョブのコンパイルと実行

DataStage ジョブをコンパイルする準備ができると、デザイナーは入力、変換、式、その他のデータを調べてジョブの設計を検証します。tails.

ジョブのコンパイルが正常に完了すると、実行する準備が整います。 XNUMX つのジョブすべてをコンパイルしますが、実行するのは「ジョブ シーケンス」のみです。 これは、このジョブが XNUMX つの並列ジョブすべてを制御するためです。

ステップ1) SQLREP フォルダーの下。 (Cntrl+Shift) を使用して XNUMX つのジョブをそれぞれ選択します。 次に、右クリックして、「複数のジョブのコンパイル」オプションを選択します。

DataStage ジョブのコンパイルと実行

ステップ2) DataStage コンパイル ウィザードで XNUMX つのジョブが選択されていることがわかります。 「次へ」をクリックします。

DataStage ジョブのコンパイルと実行

ステップ3) コンパイルが開始され、完了すると「コンパイルが成功しました」というメッセージが表示されます。

DataStage ジョブのコンパイルと実行

ステップ4) 次に、DataStage および QualityStage Director を開始します。 [スタート] > [すべてのプログラム] > を選択します。 IBM 情報サーバー > IBM WebSphere DataStage および QualityStage ディレクター。

ステップ5) 左側のプロジェクト ナビゲーション ペイン内。 SQLREP フォルダーをクリックします。 これにより、XNUMX つのジョブすべてがディレクター ステータス テーブルに追加されます。

ステップ6) STAGEDB_AQ00_S00_sequence ジョブを選択します。 メニュー バーから、[ジョブ] > [今すぐ実行] をクリックします。

DataStage ジョブのコンパイルと実行

コンパイルが完了すると、完了ステータスが表示されます。

DataStage ジョブのコンパイルと実行

ここで、PRODUCT_CCD テーブルと INVENTORY_CCD テーブルに格納されている変更された行が DataStage によって抽出され、XNUMX つのデータ セット ファイルに挿入されたかどうかを確認します。

ステップ7) デザイナーに戻り、 STAGEDB_ASN_PRODUCT_CCD_extract ジョブを開きます。ステージエディタを開くには Double「insert_into_a_dataset」アイコンをクリックします。次に、「データの表示」をクリックします。

ステップ8) 表示される行のウィンドウのデフォルトを受け入れます。 次に「OK」をクリックします。 データ ブラウザ ウィンドウが開き、データ セット ファイルの内容が表示されます。

DataStage ジョブのコンパイルと実行

SQL レプリケーションと DataStage 間の統合のテスト

前のステップで、ジョブをコンパイルして実行しました。 このセクションでは、SQL レプリケーションと DataStage の統合を確認します。 そのために、ソーステーブルに変更を加え、同じ変更が DataStage に更新されるかどうかを確認します。

ステップ1) オペレーティング システムの sqlrepl-datastage-scripts フォルダーに移動します。

ステップ2) 次のようにして SQL レプリケーションを開始しますwing 手順:

  • startSQLCapture.bat を実行します (Windows) ファイルを使用して、SALES データベースでキャプチャー・プログラムを開始します。
  • startSQLApply.bat を実行します (Windows) ファイルを使用して、AGEDB データベースでアプライ・プログラムを開始します。

ステップ3) 次に、updateSourceTables.sql ファイルを開きます。 SALES データベースに接続するための置換そしてユーザーIDとパスワードを使用します。

ステップ4) DB2 コマンド ウィンドウを開きます。 ディレクトリを sqlrepl-datastage-tutorial\scripts に変更し、指定されたコマンドで issue を実行します。

db2 -tvf updateSourceTables.sql

SQL スクリプトは、Sales データベースの両方のテーブル (PRODUCT、INVENTORY) に対して、更新、挿入、削除などのさまざまな操作を実行します。

ステップ5) DataStage が実行されているシステム上。 DataStage Director を開き、STAGEDB_AQ00_S00_sequence ジョブを実行します。 「ジョブ」>「今すぐ実行」をクリックします。

SQL レプリケーションと DataStage の統合

ジョブを実行すると次のようになりますwing な活動が行われます。

  • キャプチャー・プログラムは、SALES データベース・ログ内の XNUMX 行の変更を読み取り、CD テーブルに挿入します。
  • アプライ・プログラムは、SALES の CD 表から変更行をフェッチし、それらを STAGEDB の CCD 表に挿入します。
  • XNUMX つの DataStage 抽出ジョブは、CCD テーブルから変更を取得し、productdataset.ds ファイルと inventory dataset.ds ファイルに書き込みます。

データ セットを調べることで、上記の手順が実行されたことを確認できます。

ステップ6) 以下の手順に従ってください。

  • Designer を開始します。STAGEDB_ASN_PRODUCT_CCD_extract ジョブを開きます。
  • その後 Double「insert_into_a_dataset」アイコンをクリックします。ステージエディターで。 「データの表示」をクリックします。
  • 表示される行ウィンドウのデフォルトを受け入れ、「OK」をクリックします。

データセットには XNUMX つの新しい行が含まれています。 変更が実装されたことを確認する最も簡単な方法は、データ ブラウザーの右端までスクロールすることです。 最後の XNUMX 行を見てください (下の画像を参照)

SQL レプリケーションと DataStage の統合

文字 I、U、および D は、それぞれの新しい行を生成する INSERT、UPDATE、および DELETE 操作を指定します。

Inventory テーブルに対しても同じチェックを行うことができます。

まとめ

  • データステージは、 ETLツール データを抽出し、ソースからターゲットにデータを変換してロードします。
  • それは容易になります ビジネス分析 ビジネス インテリジェンスの取得に役立つ高品質のデータを提供することによって。
  • DataStage は XNUMX つのセクションに分かれています。 共有コンポーネントとランタイム Archi構造.
  • DataStage には XNUMX つの主要コンポーネントがあります。
  • 管理者
  • マネージャー
  • デザイナー
  • 取締役
  • Following の重要な側面です IBM InfoSphere DataStage
  • データ変換
  • Jobs > Create New Job
  • 並列処理
  • ジョブデザインにはさまざまな段階が含まれます。
  • トランスフォームステージ
  • フィルターステージ
  • アグリゲーターステージ
  • 重複ステージの削除
  • 参加ステージ
  • ルックアップステージ