目次


InfoSphere DataStage Enterprise Edition による DB2 リモート接続の構成

Comments

はじめに

InfoSphere™ DataStage は、ETL(抽出、変換、およびロード)市場において最も注目に値する主要製品の 1 つです。 このツールの優れた利点の 1 つはスケーラビリティーで、SMP、MPP、またはクラスター環境のパラレル処理が可能です。DataStage Enterprise Edition(DS/EE)では、DB2 API、DB2 ロード、およびダイナミック RDBMS など DB2 に接続する多くのタイプのプラグインを提供しますが、最大のスケーラビリティーとパフォーマンスを発揮するパラレル処理ができるよう設計されているのは DB2 Enterprise Stage のみです。

DB2 データ・パーティション化機能(DPF)によって、大規模データベースを複数パーティション(論理または物理)に分散するために必要なスケーラビリティーが実現できます。すべての表の大量データを ETL 処理する場合、従来型のプラグイン・ステージを使用すると非常に時間がかかります。一方 DB2 Enterprise Stage では、各データベース・パーティションと直接通信するパラレル実行エンジンによって、最高のパフォーマンスを実現できます。

DPF 通信アーキテクチャーの DB2 Enterprise Stage

図1. DS/EE のリモート DB2 通信アーキテクチャー
図1. DS/EE のリモート DB2 通信アーキテクチャー
図1. DS/EE のリモート DB2 通信アーキテクチャー

図 1 で示すように、DS/EE 1 次サーバーを DB2 調整ノードから分離できます。32 ビットの DB2 クライアントをインストールしなければなりませんが、接続に DB2 クライアントのみを必要とする通常のリモート DB2 アクセスとは異なります。DB2 インスタンスを事前照会して、ソース表またはターゲット表のパーティションを判断するのに使用できます。DB2 サーバーでは、すべての DB2 DPF パーティションに DS/EE エンジンがインストールされている必要があります。また、すべての DS/EE サーバーおよび DB2 サーバーの同じ場所に、DS/EE エンジンおよびライブラリーがインストールされていなければなりません。

このフレームワークの仕組みを理解するには、次の原則が重要になります。

  • DataStage コンダクター・ノードが、ローカル DB2 環境変数を使用して DB2 インスタンスを判別します。
  • DataStage は、DB2nodes.cfg ファイルを読み取って各 DB2 パーティションを判別します。DB2nodes.cfg ファイルは DB2 サーバー・ノードからコピーされ、DS/EE サーバー上の sqllib サブディレクトリーの任意の場所に配置できます。この sqllib の場所を指定するには、DS/EE 環境変数 $APT_DB2INSTANCE_HOME を使用できます。
  • DataStage は、環境変数 $APT_CONFIG_FILE によって指定された現行のパラレル構成ファイルをスキャンします。このファイルの各 fastname プロパティーは、ノード名 DB2nodes.cfg に一致しなければなりません。
  • DataStage コンダクター・ノードは、DB2 クライアントを使用してローカル DB2 インスタンスを照会することで、表パーティション情報を判別します。
  • DataStage は、ETL 全体の処理およびクラスター内の DB2 ノードを起動します。DB2/UDB Enterprise Stage では、各 DB2 ノードの間でのデータのやり取りを、DB2 クライアントではなく DataStage パラレル・フレームワークによって実行します。パラレル実行インスタンスは、DataStage Director のジョブ・モニターから検証できます。

ここで示す例で使用する環境

図2. トポロジーの例
図2. トポロジーの例
図2. トポロジーの例

ここで示す例では、RedHat Enterprise Linux 3.0 オペレーティング・システムを搭載した 2 台のマシンをテストに使用します。1 台は DB2 サーバー向けで 2 つの CPU および 1 G のメモリーを、もう 1 台は DS/EE サーバー向けで 1 つの CPU および 1 G メモリーをそれぞれ含みます。DB2 サーバーには、DB2nodes.cfg 経由で構成できる 2 つのデータベース・パーティションがあります。一方 DS/EE サーバーでは、複数の DataStage ジョブを同時実行するために使用するノードをエンジン構成ファイルが指示します。

次に、DS/EE DB2 Enterprise Stage を使用してリモート DB2 インスタンスを正しく構成するために実行した手順を示します。この演習では最初の手順から始めるため、DB2 サーバー構成、DS/EE のインストールおよび構成が含まれます。

DB2 サーバーのインストールおよび構成の手順

  1. DB2 Enterprise Server Edition のインストール (DPF を含む) および Stage164 ノードでの DB2 インスタンスの作成。(US)
  2. rsh サービスおよびリモート権限ファイルの構成。
  3. サンプル・データベースの作成および表配布の確認。
  4. 両ノードでのすべてのメンバーに対する DS/EE ユーザーの作成。

DB2 DPF 環境がインストールおよび構成済みであれば、ステップ 1 および ステップ 3 をスキップしてください。

ステップ 1. DB2 Enterprise Server のインストールおよび Stage164 ノードでの DB2 インスタンスの作成

DB2 ESE を Stage164 ノードにインストールする前に、DB2 バージョンを確認してください。例えば、ここでは V8.1 フィックスパック 7 が使用されています。DPF 機能を使用するには、別のライセンスが必要になります。DB2 のインストールに影響を与える可能性がある Linux カーネル・パラメーターに注意してください。DB2 インストール・ガイドに従ってください。

  1. インストール前に、DB2 グループおよび DB2 ユーザーを作成します。
    [root@stage164 home]# groupadd –g db2grp1
    [root@stage164 home]# groupadd –g db2fgrp1
    [root@stage164 home]# useradd –g db2grp1 db2inst1
    [root@stage164 home]# useradd –g db2fgrp1 db2fenc1
    [root@stage164 home]# passwd db2inst1
  2. インスタンスを作成します。DB2 をインストールしてから、GUI またはコマンド・ラインを使用してインスタンスを作成します。コマンド・ラインを使用した場合、root ユーザーで DB2 インストール・パスに切り替え、以下のコマンドを発行して、前のステップでパラメーターとしてユーザーが作成した DB2 インスタンスを作成します。
    [root@stage164 home]# cd /opt/IBM/db2/V8.1/instance/
    [root@stage164 instance]# ./db2icrt -u db2fenc1 db2inst1
  3. db2inst1 インスタンスが正常に作成されたことを確認します。問題が発生した場合、DB2 インストールに関する公式資料を参照してください。
    [root@stage164 instance]# su – db2inst1
    [db2inst1@stage164 db2inst1]$ db2start
    05-19-2006 03:56:01     0   0   SQL1063N  DB2START processing was successful.
    SQL1063N  DB2START processing was successful.
  4. DBM SVCENAME 構成パラメーターが正しく構成されたことを確認します。正しく構成されていなければ、クライアントから DB2 サーバーに接続することはできません。また、TCPIP 通信プロトコルも設定する必要があります。
    [db2inst1@stage164 db2inst1]$ db2 get dbm cfg | grep -i svcename
     TCP/IP Service name                          (SVCENAME) = 50000
    [db2inst1@stage164 db2inst1]$ db2set DB2COMM=TCPIP

ステップ 2. リモート・シェル (rsh) サービスおよびリモート権限ファイルの構成

DPF 環境の場合、各パーティション間で通信およびコマンド実行するためのリモート・シェル・ユーティリティーが DB2 には必要です。rsh ユーティリティーは、パーティション間の通信に使用できます。パーティション間の確実な通信を確保するための別のオプションとして、OpenSSH ユーティリティーを使用することもできます。これについては、内容が複雑になるため本資料では説明しません。

  1. rsh サーバーがインストールされたかどうかを確認します。インストールされていなければ、ダウンロードして rpm –ivh rsh.server-xx.rpm を発行することでインストールします。
    [root@stage164 /]# rpm -qa | grep -i rsh
    rsh-0.17-17
    rsh-server-0.17-17
  2. rsh サービスが正常に起動されるかを確認します。
    [root@stage164 /]#service xinetd start
    [root@stage164 /]#netstat –na | grep 514
  3. 権限ユーザーがリモート・コマンドを実行できるように、ファイルを作成または修正します。ここでは /etc/hosts.equiv ファイルを作成します (すでにファイルが存在する場合は編集します)。このファイルの 1 列目はマシン名で、2 列目はインスタンス・オーナーです。例えば、次に示すように rsh を使用して Stage164 でコマンド実行する権限を持つのは db2inst1 ユーザーのみであることを意味します。
    Stage164 db2inst1
  4. DB2inst1 ユーザーを使用して次のコマンドを発行することで、rsh が正常に機能しているかどうかを確認します。日付が正しく表示されなければ、まだ構成に問題があるということです。
    [db2inst1@stage164 db2inst1]$ rsh stage164 date
    Thu May 18 23:26:03 CST 2006

ステップ 3. DPF パーティションの作成およびサンプル・データベースの作成

  1. <DB2HOME>/sqllib のデータベース・パーティション構成ファイル (DB2nodes.cfg) を編集します。この例では、Stage164 ホストに 2 つの論理パーティションがあります。
    0  stage164  0
    1  stage164  1
  2. DB2 インスタンスを再起動して、両方のパーティションが正常に起動するか確認します。
    [db2inst1@stage164 db2inst1]$ db2stop force
    05-18-2006 23:32:08     0   0   SQL1064N  DB2STOP processing was successful.
    SQL1064N  DB2STOP processing was successful.
    [db2inst1@stage164 db2inst1]$ db2start
    05-18-2006 23:32:18    1   0   SQL1063N  DB2START processing was successful.
    05-18-2006 23:32:18    0   0   SQL1063N  DB2START processing was successful.
    SQL1063N  DB2START processing was successful.
  3. サンプル・データベースを作成し、データ分布を確認します。結果では、表部門の合計行カウントは 9 です。パーティション・キーの部門番号に従って、9 行中 4 行はパーティション 0 に、9 行中 5 行はパーティション 1 に配布されています。
    [db2inst1@stage164 db2inst1]$ db2sampl
    [db2inst1@stage164 db2inst1]$ db2 connect to sample
    [db2inst1@stage164 db2inst1]$ db2 "select count(*) from department"
    1
    -----------
    9
    1 record(s) selected.
    [db2inst1@stage164 db2inst1]$ db2 "select count(*) from department where 
        dbpartitionnum(deptno)=0"
    1
    -----------
          4
    1 record(s) selected.
    [db2inst1@stage164 db2inst1]$ db2 "select count(*) from department where 
        dbpartitionnum(deptno)=1"
    1
    -----------
          5
    1 record(s) selected.

ステップ 4. DS/EE ユーザーの作成および DB2 データベースへのアクセスの構成

DS/EE ユーザーおよび DS/EE グループが DS/EE ノードに作成済みであれば、同じユーザーおよびグループを DB2 サーバー・ノードにも作成します。いずれの場合でも、これらの 2 つのマシンには必ず同一の DS/EE ユーザーおよび DS/EE グループが含まれるようにしてください。

  1. DB2 サーバーに DS/EE ユーザーおよび DS/EE グループを作成します。この例では、dsadmin および dsadmin になります。また、DS/EE ユーザーを DB2 インスタンス・グループに追加します。
    [root@stage164 home]# groupadd -g 501 dsadmin
    [root@stage164 home]# useradd –u 501 –g dsadmin –G db2grp1 db2inst1
    [root@stage164 home]# passwd dsadmin
  2. ステップ 2.3 で作成された /etc/hosts.equiv ファイルに項目を追加します。これによって、Stage164 で一部のコマンドを実行する権限を dsadmin に与えます。
    Stage164 db2inst1
    Stage164 dsadmin
  3. <DSEngine_HOME>/.bashrc ファイルに DB2 プロファイル環境変数を追加します (例えば、<DSEngine_HOME> = /home/dsadmin)。
    . /home/db2inst1/sqllib/db2profile
  4. dsadmin ユーザーがサンプル DB に正常に接続できるようにします。
    # su - dsadm
    
    $ db2 connect to sample
    
       Database Connection Information
    
     Database server        = DB2/6000 8.2.3
     SQL authorization ID   = DSADM
     Local database alias   = SAMPLE
    $

DS/EE ノードのインストールおよび構成の手順

ここからは、プロセスを詳細に説明します。

ステップ 1. DataStage Enterprise Edition (DS/EE) および DB2 クライアントのインストール

最初に、事前に DS/EE ユーザーおよび DS/EE グループを作成する必要があります。例えば、ユーザーを dsadmin、グループを dsadmin とします。DS/EE がインストールされていなければ、InfoSphere DataStage インストール・ガイドに従ってください。ここでは、このソフトウェアが /home/dsadmin/Ascential/DataStage/DSEngine という DSHOME 変数にインストールされているものと想定します。次に、DB2 クライアントをインストールしてから、DS/EE ノードにクライアント・インスタンスを 1 つ作成します。

ステップ 2. DS/EE 構成ファイルへの DB2 ライブラリーおよびインスタンス・ホームの追加

DSHOME ディレクトリー内にある dsenv 構成ファイルは、DS/EE で最も重要な構成ファイルの 1 つです。このファイルには環境変数およびライブラリー・パスが含まれるためです。このステップでは、DS/EE エンジンを DB2 に接続できるよう、DB2 ライブラリーを LD_LIBRARY_PATH に追加します。

注:LD_LIBRARY_PATH 環境パスでは、PXEngine ライブラリーが DB2 ライブラリーより前に記述されます。

PATH=$PATH:/home/dsadmin/Ascential/DataStage/PXEngine/bin:/home/dsadmin/Ascential/
  DataStage/DSEngine/bin

# for DB2 configuration
DB2DIR=/opt/IBM/db2/V8.1; export DB2DIR
DB2INSTANCE=db2inst1;   export DB2INSTANCE
INSTHOME=/home/db2inst1; export INSTHOME
DB2PATH=/opt/IBM/db2/V8.1; export DB2PATH

LD_LIBRARY_PATH=$LD_LIBRARY_PATH: /home/dsadmin/Ascential/DataStage/PXEngine/lib:
  $DB2DIR/lib:$INSTHOME/sqllib/lib; export LD_LIBRARY_PATH

PATH=$PATH:$INSTHOME/sqllib/bin:$INSTHOME/sqllib/adm; export PATH

この dsenv ファイルを dsadmin .bashrc ファイル (/home/dsadmin/.bashrc) に追加すると、毎回手動で実行する手間が省けます。操作を実行して追加を有効にするには、dsadmin ユーザーを終了して再ログオンします。

 
. /home/dsadmin/Ascential/DataStage/DSEngine/dsenv

ステップ 3. dsadmin を使用したリモート・サンプル・データベースの DS/EE へのカタログ

  1. dsadmin を使用して、リモート・サンプル・データベースを DB2 EE (Stage164) から DS/EE にカタログします。
    [dsadmin@transfer dsadmin]$ db2 CATALOG TCPIP NODE stage164 REMOTE stage164 SERVER
    50000
    [dsadmin@transfer dsadmin]$ db2 CATALOG DB sample AS samp_02 AT NODE stage164
  2. 『DB2 サーバーのインストールおよび構成の手順』のStep 2 に従って rsh ユーティリティーを構成します。転送時の dsadmin ユーザーが、rsh を使用して Stage164 に対してリモート・コマンドを実行できるようにします。
    [dsadmin@transfer dsadmin]$ rsh stage164 date
    Thu May 19 10:22:09 CST 2006

ステップ 4. DB2nodes.cfg の DB2 サーバーから DS/EE へのコピーおよび環境変数の構成

DB2nodes.cfg ファイルを DB2 サーバーから DS/EE のディレクトリーの 1 つにコピーします。このファイルは、DB2 サーバーに含まれる DB2 パーティションの数を DS/EE エンジンに通知します。次に、DataStage アドミニストレーターによって環境変数 APT_DB2INSTANCE_HOME を作成し、ディレクトリーにポイントさせます。この変数は、プロジェクト・レベルまたはジョブ・レベルのいずれでも指定できます。

ステップ 5. NFS 構成、/home/dsadmin/Ascential/ のエクスポート

最初に、2 台のマシンの名前を両ノードの /etc/hosts ファイルに追加し、互いのネットワーク名を識別できるようにします。次に、 DS/EE ディレクトリー全体を DB2 サーバーと共有し、各パーティションが DS/EE と通信できるようにします。

  1. DS/EE ノードで、/home/dsadmin/Ascential ディレクトリーをエクスポートします。これを実行するには、項目を /etc/exports ファイルに追加します。これによって stage164 マシンのユーザーは、/home/dsadmin/Ascential ディレクトリーへの読み取り/書き込み権限をマウントできます。
    /home/dsadmin/Ascential   stage164(rw,sync)
  2. /etc/export ファイルに変更を加えたら、変更内容が再ロードされるように NFS daemon プロセスに通知する必要があります。あるいはその代わりに、次のコマンドを発行することで、この nfsd プロセスを停止および再起動することもできます。
    [root@transfer /]# service nfs start
    Starting NFS services:                                    [  OK  ]
    Starting NFS quotas:                                      [  OK  ]
    Starting NFS daemon:                                      [  OK  ]
    Starting NFS mountd:                                      [  OK  ]
  3. 次に DB2 サーバーで、/home/dsadmin/Ascential というディレクトリーを 1 つ作成してから (DS/EE サーバーでも同様) 、このディレクトリーをリモート DS/EE ディレクトリーにマウントします。
    [root@stage164 home]# mount -t nfs -o rw transfer:
    /home/dsadmin/Ascential /home/dsadmin/
        Ascential

    マウントされたファイルは次のように確認できます。

    [root@stage164 home]# df -k
    Filesystem     1K-blocks     Used     Available    Use%   Mounted on
    /dev/sda1      7052464      3491352   3202868    53%    /
    transfer:/home/dsadmin/Ascential
                   7052464     6420892    273328    96% /home/dsadmin/Ascential

    マシンの再起動ごとにこのディレクトリーをマウントする手間を省くには、この項目を etc/fstab ファイルに追加すると、このディレクトリーが自動的にマウントされるようになります。

    transfer:/home/dsadmin/Ascential /home/dsadmin/Ascential nfs defaults 0 0

ステップ 6. DB2 オペレーター・ライブラリーの検証および DB2setup.sh と DB2grants.sh の実行

  1. $PXHOME/bin にある DB2setup.sh スクリプトを実行します。リモート DB2 インスタンスに問題が発生した場合、接続するユーザー ID およびパスワードを変更する必要があることにご注意ください。
      db2 connect to samp_02 user dsadmin using passw0rd
      db2 bind ${APT_ORCHHOME}/bin/db2esql.bnd datetime ISO blocking all grant public
    # this statement must be run from /instance_dir/bnd
      cd ${INSTHOME}/sqllib/bnd
      db2 bind @db2ubind.lst blocking all grant public
      db2 bind @db2cli.lst blocking all grant public
      db2 connect reset
      db2 terminate
  2. DB2grants.sh を実行します。
    db2 connect to samp_2 user dsadmin using passw0rd
    db2 grant bind, execute on package dsadm.db2esql to group dsadmin
    db2 connect reset
    db2 terminate

ステップ 7. DS/EE 構成ファイルの作成および変更

DS/EE では、パラレル・エンジン構成ファイルが提供されています。DataStage は、システムの形状およびサイズについての情報を構成ファイルから取得します。また、ジョブに必要なリソースを、構成ファイルでの定義内容に従って編成します。DataStage の構成ファイルには、DataStage および DB2 クライアントがインストールされているノード、および DB2 サーバーがインストールされているリモート・コンピューターのノードが含まれていなければなりません。

次に一例を示します。エンジン構成ファイルに関する詳細情報は、「パラレル・ジョブ開発者ガイド」を参照してください。

{
    node "node1"
    {
         fastname "transfer"
         pools ""
         resource disk "/home/dsadmin/Ascential/DataStage/Datasets" {pools ""}
         resource scratchdisk "/home/dsadmin/Ascential/DataStage/Scratch" {pools ""}
    }
node "node2"
    {
         fastname "stage164"
         pools ""
         resource disk "/tmp" {pools ""}
         resource scratchdisk "/tmp" {pools ""}
    }
}

ステップ 8. DS/EE サーバーの再起動と接続のテスト

ここまでで、両ノードのすべての構成を完了したことになります。次のコマンドを発行して、DS/EE サーバーを再起動してください。

[dsadmin@transfer bin]$ uv -admin –stop
[dsadmin@transfer bin]$ uv -admin -start

注:DS/EE エンジンの停止後、dsadmin を終了して再ログオンする必要があります。これによって、dsenv 構成ファイルが実行されます。また、変更された構成が有効になるように、停止と起動の操作の時間間隔を 30 秒以上あけるようにしてください。

次に、DataStage Designer を使用してリモート接続をテストします。「プラグイン表定義のインポート (Import plug-in table definition)」を選択します。次のウィンドウが表示されます。「次へ (Next)」をクリックします。正常にインポートされたら、リモート DB2 接続が正しく構成されたことを意味します。

図3. DB2 Enterprise Stage のジョブ
図3. DB2 Enterprise Stage のジョブ
図3. DB2 Enterprise Stage のジョブ

DS/EE 上での 1 つの DB2 Enterprise ジョブの開発

ここでは、DataStage Designer を使用して DB2 Enterprise Stage の 1 つのパラレル・ジョブを開発します。このジョブは非常にシンプルです。なぜなら、DB2 部門表データを 1 つの順次ファイルに抽出する方法を示しているのみだからです。

図4. DSDB2 メタデータのインポート
○○○○
○○○○

DB2 Enterprise Stage のアイコンをダブルクリックし、次の DB2 Enterprise Stage のプロパティーを設定します。詳細については、「パラレル・ジョブ開発者ガイド」を参照してください。

図5. DS/EE DB2 Enterprise Stage のプロパティー
図5. DS/EE DB2 Enterprise Stage のプロパティー
図5. DS/EE DB2 Enterprise Stage のプロパティー
  • クライアント・インスタンス名 (Client Instance Name):これは DB2 クライアント・インスタンス名 (DB2 client instance name) に設定します。このプロパティーを正しく設定すると、リモート接続が要求されていることが DataStage で認識されます。
  • サーバー (Server):オプションで、これは DB2 サーバーのインスタンス名に設定します。オプションで設定しない場合は、DB2 環境変数である DB2INSTANCE を使用して、DB2 サーバーのインスタンス名を識別します。
  • クライアント別名 DB 名 (Client Alias DB Name):これは、リモート DB2 サーバー・データベースに対する DB2 クライアント別名のデータベース名に設定します。この設定が必要になるのは、クライアント別名が、リモート・サーバー・データベースの実際の名前と異なる場合のみです。
  • データベース (Database):オプションで、これはリモート・サーバー・データベース名に設定します。オプションで設定しない場合は、環境変数である APT_DBNAME または APT_DB2DBDFT を使用して、データベースを識別します。
  • ユーザー (User):DB2 に接続するためのユーザー名を入力します。これはリモート接続に必要です。
  • パスワード (Password):DB2 に接続するためのパスワードを入力します。これはリモート接続に必要です。

次の 2 つの環境変数を、DataStage マネージャー経由でこのジョブに追加します。APT_DB2INSTANCE_HOME が DB2nodes.cfg の場所を定義する一方、APT_CONFIG_FILE はエンジン構成ファイルを指定します。

図6. ジョブ・プロパティー・セット
図6. ジョブ・プロパティー・セット
図6. ジョブ・プロパティー・セット

Enterprise Stage と API Stage のパフォーマンス比較

ここでは、上記で DataStage Director によって開発されたジョブを実行し、DS/EE Enterprise Stage および API Stage のパフォーマンスを比較します。次に示すのは、DB2 API Stage の別のジョブです。

図7. DB2 API Stage
図7. DB2 API Stage
図7. DB2 API Stage

テスト・データの数値を生成するために、次のストアード・プロシージャーを作成しました。

CREATE PROCEDURE insert_department( IN count)
language sql
begin 
declare number int;
declare str varchar(10);
declare deptno char(10); 
set number=1;

while ( number>count)
do
  set deptno=char( mod(number, 100) );
  insert into department values( deptno, 'deptname', 'mgr', 'dep', 'location');
  if( mod(number, 2000)=0) then
     commit;
  end if;   
  set number=number+1  ;
 end while; 
 end@

ストアード・プロシージャーを次のように実行します。

DB2 –td@ -f emp_resume.sql
DB2 call emp_resume( 5000000)

次に、これら 2 つのジョブを 100,000 行、1,000,000 行、および 5,000,000 行に対して DataStage Director 経由で実行し、その結果をジョブ・モニターで監視します。次のスクリーン・ショットは、DB2 Enterprise Stage および DB2 API Stage を使用した場合のテスト結果です。

図8. 100,000 レコード (DB2 Enterprise Stage )
図8. 100,000 レコード (DB2 Enterprise Stage )
図8. 100,000 レコード (DB2 Enterprise Stage )
図9. 100,000 レコード (DB2 API Stage )
図9. 100,000 レコード (DB2 API Stage )
図9. 100,000 レコード (DB2 API Stage )
図10. 1,000,000 レコード (DB2 Enterprise Stage )
図10. 1,000,000 レコード (DB2 Enterprise Stage )
図10. 1,000,000 レコード (DB2 Enterprise Stage )
図11. 1,000,000 レコード (DB2 API Stage )
図11. 1,000,000 レコード (DB2 API Stage )
図11. 1,000,000 レコード (DB2 API Stage )
図12. 5,000,000 レコード (DB2 Enterprise Stage )
図12. 5,000,000 レコード (DB2 Enterprise Stage )
図12. 5,000,000 レコード (DB2 Enterprise Stage )
図13. 5,000,000 レコード (DB2 API Stage )
図13. 5,000,000 レコード (DB2 API Stage )
図13. 5,000,000 レコード (DB2 API Stage )
図14. Enterprise Stage および API Stage のパフォーマンスの比較
図14. Enterprise Stage および API Stage のパフォーマンスの比較
図14. Enterprise Stage および API Stage のパフォーマンスの比較

図 8 では、DB2 Enterprise Stage で ETL を実行しているノードが 2 つ、DB2 API Stage で実行しているノードが 1 つあります。Enterprise Stage の 1 秒あたりの ETL 処理能力は、API Stage の 2 倍を上回ります。さらにデータの増加とともに、Enterprise Stage はパラレル・パフォーマンスによって、より優れた性能を発揮しています。

制限

DB2 Enterprise Stage は、その優れたパラレル・パフォーマンスによって、DB2 DPF 環境を使用する他の DB2 プラグイン・ステージの能力を上回りますが、ETL サーバーのハードウェアとオペレーティング・システムが必須であるほか、DB2 ノードが同一である必要があります。 つまり、特に異種混合の環境では、他の DB2 プラグイン・ステージの代替としては使用できません。

まとめ

本資料は DS/EE DB2 Enterprise Stage のリモート接続の構成方法を段階的に説明しました。また、2 つの DS/EE DataStage ジョブを使用して Enterprise Stage および DB2 API Stage のパフォーマンスを比較しました。

補足

本資料はDataStage7.5をベースに作成されたものです。 DataStage8.1の場合、/opt/IBM/InformationServer/が/home/dsadmin/Ascential/に対応するデフォルトインストール時のディレクトリーになります。

WebSphere DataStage は InfoSphere™ DataStage® に製品名称を変更いたしました。(2008年9月)

※本資料は Configure DB2 remote connectivity with WebSphere DataStage Enterprise Edition(2006年9月21日)(US)を翻訳したものです。


ダウンロード可能なリソース


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Information Management
ArticleID=456672
ArticleTitle=InfoSphere DataStage Enterprise Edition による DB2 リモート接続の構成
publish-date=12152009