この章では、Oracle Business Activity Monitoring (Oracle BAM)とOracle Data Integrator (ODI)間の統合を設定する方法、およびODIにOracle BAMターゲットを作成する方法について説明します。ここでは、ソース・データ・ストアからのロード、ターゲット・データ・ストアへの統合、チェック、リバース・エンジニアリング、ジャーナル化およびサービスの作成のためのOracle BAMナレッジ・モジュールについて詳細に説明します。
この章では、次の項目について説明します。
第57.8項「Oracle BAMが組み込まれたOracle Data IntegratorエージェントのデーモンまたはMicrosoft Windowsサービスとしての実行」
第57.9項「Oracle BAMとOracle Data Integratorとの統合のためのインストール・ファイル」
Oracle Data Integratorのドキュメントは、次のOracle Technology Network Webサイトにあります。
http://www.oracle.com/technetwork/middleware/data-integrator
Oracle BAM 11gリリース1 (11.1.1.7.0)では、ODIとの統合に新機能が導入されています。この機能は、Oracle BAMとODIの両方がOracle WebLogic Server上にインストールされている場合にサポートされます。次のリリースの構成がサポートされています。
Oracle BAM 11.1.1.x.0とODI 10.1.3.5(パッチ・レベル10.1.3.6.8以下)
Oracle BAM 11.1.1.7.0とODI 11.1.1.7.0
IBM WebSphere上では、Oracle BAM自体はサポートされていますが、ODIとのこの統合はサポートされていません。
11g リリース1 (11.1.1.7.0)以降、Oracle BAMは、Oracle WebLogic Server内とIBM WebSphere内のいずれでも実行できます。このタイプのデプロイメントでは、アプリケーション・サーバーの多くの利点を得られるだけでなく、ODIとOracle BAMのインストールおよび更新をそれぞれ独立して簡単に実行できるようになります。
ODIのIBM WebSphere実装は使用できません。
Oracle BAMは、ODIエージェントを使用してODIと通信します。このODIエージェントは、使用しているOracle BAMのリリースに応じて3つの種類のうちのいずれかになります。
11.1.1.7.0より前のOracle BAMを使用している場合、ODIエージェントは、スタンドアロンJavaアプリケーションであるかODIクライアントに埋め込まれているかのいずれかです。
ODI 11.1.1.7.0とOracle BAM 11.1.1.7.0を使用している場合、ODIエージェントもJ2EEアプリケーションにすることができます。
このタイプのODIエージェントは、共有J2EEライブラリを参照し、第57.3項「Oracle BAMナレッジ・モジュールの使用」で説明するOracle BAMナレッジ・モジュール内のコードを実行します。この共有J2EEライブラリは、oracle.bam.odi_11.1.1.jar
という名前であり、ODI環境の一部であるODI J2EEエージェントと同じアプリケーション・サーバーにデプロイされている必要があります。第57.2.1項「スクリプトを使用したOracle BAM-ODI統合ファイルのインストール方法」で説明するスクリプトを実行することによって、共有J2EEライブラリをデプロイできます。
Oracle BAM-ODI統合は、シェル・スクリプト、Javaコードおよびantスクリプトでインストールします。これらのファイルは、Oracle BAMのインストール・バイナリが配置されているORACLE_HOME
のサブディレクトリ(たとえば、ORACLE_HOME
/bam/
)に配置されています。
Oracle BAMリリース11.1.1.7.0より前のリリースでは、BAM-ODIインストール全体がシェル・スクリプトbam-odi-configuration.sh
(または.bat
)によって起動されます。このスクリプトは、バージョン11.1.1.7.0でも、ODI 10gとODI 11gの両方に対するOracle BAM-ODI統合に使用されます(下位互換性があります)。
ただし、ODI 11gの場合、このシェルはOracle BAM-ODIインストール全体向けではありません。これは、前にODI 10gで使用可能であったもの、つまり、ODI 11gのクライアント側の機能のみを提供します。ODI 11gで提供される新機能(たとえば、ODI J2EEエージェントとの統合)を含めるには、この章で説明するように、Oracle BAM-ODI統合の追加手順が必要です。
Oracle Data IntegratorとOracle BAMを併用する場合は、次のことに注意してください。
Oracle Data Integratorインタフェース内では、空白が含まれているフィールド名は引用符で囲む必要があります。
Oracle Data Integratorでは、Oracle BAMのタイプ「参照」、「計算済」、「自動増加整数」および「タイムスタンプ」の読取り専用フィールドにデータを挿入することはできません。これらのフィールドには、データが自動的に移入されます。Oracle Data Integratorでは、これらのフィールドをターゲット・フィールドとして選択できますが、フィールドに値が移入された状態でOracle Data Integratorを実行すると、例外がスローされます。
Oracle BAMをステージング領域として使用しないでください。たとえば、Oracle BAMが(ロード・ナレッジ・モジュールを使用する場合のように)ソースとして使用されている場合、このソースをステージング領域として使用しないでください。Oracle BAMが(統合ナレッジ・モジュールを使用する場合のように)ターゲットとして使用されている場合は、そのターゲットをステージング領域として使用しないでください。
Oracle BAM-ODI統合は、Oracle BAMとODIの両方の上に別のコンポーネントとしてインストールされます。統合コンポーネントをインストールする前に、Oracle BAMとODIの両方をインストールしてください。
この章では、次のことを想定しています。
Oracleデータベースがインストール済で接続が可能であること。
Oracle BAMがインストール済で実行されていること。
Oracle Data Integratorがインストール済で基本構成(Oracle Data Integratorマスター・リポジトリの作成、リポジトリ接続の構成、作業リポジトリの作成と接続、ソース・トポロジの構成)が終了していること。
Oracle Data Integratorが別のホストにインストールされている場合、Oracle BAMとOracle Data Integratorの統合を処理するには、Java 1.6がOracle Data Integratorホストにインストールされている必要があります。
Oracle BAMとOracle Data Integratorの統合を設定する方法には、次の2通りがあります。
1番目は、インストール・スクリプトを使用する方法です。これは通常、Oracle Data IntegratorとOracle BAMが同じシステムまたは同じネットワーク・ファイル・システムにデプロイされている場合に使用します(第57.2.1項「スクリプトを使用したOracle BAM-ODI統合ファイルのインストール方法」)。
2番目は、手動ステップを使用して、プロパティを構成し、必要なファイルをOracle Data Integratorディレクトリにコピーする方法です(第57.2.3項「手動による統合ファイルのインストール方法」)。この方法は通常、Oracle BAMがインストールされているシステムからODI_HOME
ドライブをマップできない場合(通常はOracle Data IntegratorとOracle BAMが異なるネットワークまたはファイル・システムにインストールされている場合)に使用します。
ログには、インストールに関する情報と統合メッセージが保存されます。詳細は、第57.2.4項「ログの使用」を参照してください。
Oracle Data IntegratorとOracle BAMの併用時の推奨メモリー設定
Oracle Data Integratorのデフォルトのメモリー設定は、odiparams.sh
スクリプト(Windowsの場合はodiparams.bat
)に含まれています。ODI_INIT_HEAP
プロパティとODI_MAX_HEAP
プロパティの値は、32MBと256MBにデフォルト設定されています。これらの値をそれぞれ256MBと1024MBに変更することをお薦めします。この設定によって、Oracle Data Integratorのパフォーマンスが向上します。ただし、メモリーを大量に使用するタスクの実行時には、OutOfMemory
エラーが発生する可能性があります。
Oracle Data IntegratorとOracle BAMを同じシステムまたは同じネットワーク・ファイル・システムにインストールしている場合は、インストール・スクリプトを使用します。
インストールに問題がある場合は、utility.log
というログ・ファイルが作成されます。このファイルの場所は、utility.logging.properties
ファイルによって制御されます。詳細は、第57.2.4項「ログの使用」を参照してください。
統合ファイルをインストールする手順は、次のとおりです。
Oracle BAMサーバーが実行され、Oracle Data Integratorホストからアクセス可能であることを確認します。
Oracle BAMホストで、ORACLE_HOME
\bam\config
ディレクトリに移動し、bam_odi_configuration.properties
ファイルを編集します。そのファイル内で、WL_SERVERプロパティを指定します。このプロパティには、Oracle BAMシステム上のOracle WebLogic Serverフォルダ名を指定します。デフォルト値はwlserver_10.3
です。
注意:
|
./config/
ディレクトリにあるファイルbam-odi-configuration.properties
で、次のプロパティを変更します。
ODI_HOME
: ODIクライアント・ディレクトリ、つまり、oracledi
ディレクトリ。
例: /scratch/jdoe/odiHome11g/oracledi
WL_SERVER
: Oracle WebLogic Serverサーバー・ディレクトリ名。Weblogic上で実行されていない場合、このプロパティは無視されます。
ODI_VERSION
: BAM-ODI統合で使用されるODIのバージョン。10gまたは11gを指定します。
SERVER_NAME
: Oracle BAMサーバーが実行されているマシンの名前またはIPアドレス。デフォルトは、localhost
です。
SERVER_PORT
: Oracle BAMサーバーがリスニングしているポート。デフォルトは、9001です。
リリース11gを使用している場合、共有ライブラリをデプロイします。共有ライブラリは、ファイルoracle.bam-odi_11.1.1.jar
であり、それをデプロイするには、スクリプトdeploy_shared_lib.sh
を実行します。プロンプトが表示されたら、ユーザー名とパスワードを入力します。オプションで、serverName
およびserverPort
の引数も入力できます。
スクリプトdeploy_shared_lib.sh
によって、ファイルoracle.bam.odi.jar
が、指定したターゲット管理サーバー(またはデフォルトのlocalhost
)の指定したポート(またはデフォルトの7001)にデプロイされます。たとえば、deploy_shared_lib.sh weblogic welcome1 localhost 7001
とします。
共有ライブラリをアンデプロイするには、ユーザー名およびパスワード、さらにオプションでserverName
およびserverPort
の引数を指定してundeploy_shared_lib.sh
を実行します。たとえば、undeploy_shared_lib.sh weblogic welcome1 localhost 7001
とします。
Oracle BAMサーバーが配置されているアプリケーション・サーバーが実行中であることを確認します。
ORACLE_HOME
\bam\bin
のbam_odi_configuration.sh
(またはMicrosoft Windowsホストの場合はbam_odi_configuration.bat
)を実行します。
スクリプトの要求に従って値を入力します。スクリプトの実行を完了するには、Oracle Data Integratorマスター・リポジトリおよびOracle Data Integrator作業リポジトリのアカウント資格証明が必要です。
[値
]とともに表示されるプロンプトの場合、カッコ内はデフォルト値です。デフォルトを選択するには[Enter]を押します。カッコで囲まれたデフォルト値が表示されない場合は、値を入力する必要があります。入力しないとスクリプトが停止します。
注意:
|
このスクリプトは、手順3でファイルbam-odi-configuration.properties
に指定した値に従って、サーバー・プラットフォーム・タイプ(Oracle WebLogic ServerとIBM WebSphereのいずれか)およびODIバージョン(10gと11gのいずれか)に応じて分岐します。
動作保証の疑問点は、次のURLのOracle Fusion Middlewareのサポートされるシステム構成を参照してください。
http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html
リリース10gをインストールすることを指定した場合:
スクリプトは、Oracle BAM Webアプリケーションに必要なリソースを作成し、Oracle Data IntegratorにOracle BAMの構成プロパティを設定し、Oracle WebLogic ServerクライアントJavaアーカイブ(JAR)を生成してOracle Data Integratorシステムにデプロイし、必要なファイルをすべて適切なOracle Data Integratorディレクトリにコピーします。
スクリプトの実行中に、次のメッセージが表示される場合があります: Oracle BAMサーバーへの接続を試行しています。数分かかる可能性があります。Oracle BAMサーバーにアクセスできない場合は、接続の再試行が複数回繰り返されます。
リリース11をインストールすることを指定した場合:
Oracle BAMおよびODIに、Oracle BAM外部データ・ソースおよび他のデータ・オブジェクトを作成するための資格証明を付与するように要求されます。その後、ICommandによってOracle BAMサーバーに接続し、これらのデータ・オブジェクトが作成されます。
ODIクライアントに必要なOracle BAM Jarファイルは、~user/.odi/oracledi/userlib
ディレクトリにコピーされます。これは、ODIクライアント・クラスパスに含まれている必要がある外部Jarファイル用にODIによって指定されているディレクトリです。
ODI-BAM統合のための構成ファイルであるBAMODIConfig.xml
は、oracle-bam-odi-config.jar
から解凍されます。その後、それは、serverPlatform
に適した値および他の必要な値に変更されます。変更後、それは再度圧縮されてJarファイルになります。
Oracle BAMナレッジ・モジュールが、ODIクライアント用に指定されたディレクトリにコピーされます。
ODIクライアントのロギング構成ファイルODI-logging-config.xml
がバックアップされます。このファイルは、その後、Oracle BAM用のロギング構成が追加されることによって変更されます。
さらに、このスクリプトによって次の事項が実行されます。
Oracle Data Integrator EDSエンタープライズ・データ・ソースを再作成します。
odiparams.sh
ファイルを変更します。
Oracle BAM JARファイルとナレッジ・モジュールをコピーします。
既存のOracle Data Integrator作業環境では、Oracle BAMアーティファクトをコピーするだけで済みます。そのためには、PATCH
コマンドライン・パラメータを使用してスクリプトを実行します。例:
sh bam_odi_configuration.sh PATCH
スクリプトによって、このコマンドライン・パラメータが検出されると、Oracle BAM JARファイルおよびナレッジ・モジュールがコピーされます。Oracle Data Integrator EDSエンタープライズ・データ・ソースが再作成されることもodiparams.sh
ファイルが変更されることもありません。
これで、Oracle Data Integratorトポロジ・マネージャでOracle BAMターゲットを作成できます。手順は、第57.4項「Oracle BAMターゲットの作成」を参照してください。
Oracle Data IntegratorとOracle BAMサーバーが異なるネットワークのホストにインストールされている場合、またはなんらかの理由で現在の環境でスクリプトを使用できない場合は、次の手順を使用します。
このプロセスには、次の5つの主な手順があります。
JAVA_HOMEの設定
Oracle Data Integratorアプリケーションを起動する環境で、環境変数JAVA_HOME
をJavaバージョン1.6.xに設定する必要があります。この状況は、Javaバージョン1.6.xがホストにインストールされている必要があることを意味します。環境変数は、次のように設定します。
Microsoft Windowsの場合は、「コントロール パネル」に移動し、「システム」アイコンをクリックします。「システムのプロパティ」で、「詳細設定」タブに移動し、「環境変数」ボタンをクリックします。「環境変数」ウィンドウで、ユーザー(上のボックス)の変数JAVA_HOME
を作成または編集し、値をJavaインストールのパス(例: c:\PROGRA~1\Java\jdk1.6.0_12
)に設定します。「OK」をクリックします。Oracle Data Integratorを起動するときは、必ず新しいコマンド・プロンプトから起動して、この新規環境変数を取得します。
UNIXの場合は、シェル・スクリプトの手順に従って環境変数JAVA_HOME
を作成します。このスクリプトは、起動スクリプト(ユーザーのホーム・ディレクトリにある.cshrcなど)で実行するか、またはOracle Data Integratorを起動する前にコマンドラインで実行できます。
Oracle Data Integrator用の外部データ・ソースの作成
Oracle BAMアーキテクトで外部データ・ソースを作成します。
Oracle BAMアーキテクトを開き、「外部データ・ソース」ページを選択します。
「作成」をクリックし、表57-1および表57-2に示されている値を指定して、2つの外部データ・ソース(ODI_MasterおよびODI_Work)を構成します。
Oracle Data Integrator構成プロパティの設定
ODI_HOME
/bin
にあるodiparams.sh(bat)
ファイルのODI_JAVA_OPTIONS
およびODI_ADDITIONAL_CLASSPATH
の値を、例57-1および例57-2に示すように変更します。
例57-1 ODI_JAVA_OPTIONSの変更
Windowsの場合:
SET ODI_JAVA_OPTIONS=-Djava.security.policy=server.policy -Djava.util.logging.config.file=../lib/bam_odi.logging.properties
Linuxの場合:
SET ODI_JAVA_OPTIONS="-Djava.security.policy=server.policy -Djava.util.logging.config.file=../lib/bam_odi.logging.properties"
Oracle Data Integratorディレクトリへのファイルのコピー
この手順では、いくつかのJARファイル、ロギング・プロパティ・ファイルおよびナレッジ・モジュールをOracle Data Integratorディレクトリにコピーします。
次のファイルを
ORACLE_HOME/bam/modules/oracle.bam_11.1.1
から
ODI_HOME/lib
にコピーします。
oracle-bam-common.jar
oracle-bam-etl.jar
oracle-bam-adc-ejb.jar
次のファイルを
ORACLE_HOME/bam/modules/oracle.bam.thirdparty_11.1.1
から
ODI_HOME/lib
にコピーします。
commons-codec-1.3.jar
xstream-1.1.3.jar
次のファイルを
ORACLE_HOME/modules/oracle.odl_11.1.1
から
ODI_HOME/lib
にコピーします。
ojdl.jar
次のファイルを
ORACLE_HOME/modules/oracle.jps_11.1.1
から
ODI_HOME/lib
にコピーします。
jps-api.jar
次のファイルを
ORACLE_HOME/modules/oracle.dms_11.1.1
から
ODI_HOME/lib
にコピーします。
dms.jar
次のファイルを
ORACLE_HOME
/modules
から
ODI_HOME/lib
にコピーします。
org.jaxen_1.1.1.jar
次のファイルを
ORACLE_HOME/bam/config
から
ODI_HOME/lib
にコピーします。
bam.odi.logging.properties
次のファイルを
ORACLE_HOME/bam/ODI/config
から
ODI_HOME
/lib/config
にコピーします。
BAMODIConfig.xml
すべてのXMLファイルを
ORACLE_HOME/bam/odi/knowledge_modules
から
ODI_HOME/impexp
にコピーします。
Oracle WebLogic ServerクライアントJARの生成
Oracle WebLogic Server JarBuilder
ツールを使用して、wlfullclient.jar
ファイルを生成します。手順は、『Oracle Fusion Middleware Programming Stand-alone Clients for Oracle WebLogic Server』のWebLogic JARBuilderツールの使用に関する項を参照してください。
ODI_HOME
/oracledi/lib/weblogic
という名前のサブディレクトリを作成します。
wlfullclient.jar
をODI_HOME
/oracledi/lib/weblogic
にコピーします。
インストール・ログ
インストール・プロセスの一部でOracle BAM ICommandが使用され、このプロセスに関連するログが、構成スクリプトを実行しているディレクトリ(ORACLE_HOME
\bam\bin
)内のファイルに書き込まれます。
インストール・ログのロギング・プロパティは、同じディレクトリ内にあるutility.logging.properties
ファイルで構成します。デフォルトのロギング・レベルはINFO
に設定されています。
実行時ログ
Oracle Data IntegratorをOracle BAMとともに実行しているときに発生するメッセージのロギングを構成するには、bam_odi.logging.properties
ファイルを使用します。このファイルはODI_HOME/lib
にあります。
ナレッジ・モジュールは、データ統合パターンに必要な一連のコマンドが含まれている汎用コード・テンプレートです。ナレッジ・モジュールには、Oracle Data Integratorが特定の記憶域テクノロジに対して特定のタスク・セットを実行するために必要なナレッジが含まれています。特定の記憶域テクノロジに関連するメソッドが定義されており、そのテクノロジに対するプロセスの生成を可能にします。
(ソース・データ・ストアからの)ロード、(ターゲット・データ・ストアへの)統合、チェック、リバース・エンジニアリング、ジャーナル化およびサービスの作成ごとに異なるナレッジ・モジュールがあります。ナレッジ・モジュールはすべて、実行時にナレッジ・モジュール・インタプリタによって実行されるコードを生成することによって機能します。
Oracle Data Integrator内には、Oracle BAM機能に固有のナレッジ・モジュールのセットがあります。これらのナレッジ・モジュールは、統合ファイルのインストール時にODI_HOME
/oracledi/impexp
ディレクトリにインストールされます。ただし、リリース11gでは、それらはODI_HOME/oracledi/xml-reference
ディレクトリにインストールされます。これらのOracle BAM固有のナレッジ・モジュールを使用するには、Oracle Data Integratorデザイナ・アプリケーションの適切なプロジェクトにインポートする必要があります。表57-3で、Oracle BAM固有のナレッジ・モジュールについて説明します。
ナレッジ・モジュールのインポート方法については、Oracle Data Integratorユーザーズ・ガイドのナレッジ・モジュールのインポートに関する項を参照してください。Oracle Data Integratorのドキュメントは、次のOracle Technology Network Webサイトにあります。
http://www.oracle.com/technetwork/middleware/data-integrator
表57-3 Oracle BAMナレッジ・モジュール
ナレッジ・モジュール | 説明 |
---|---|
CKM Get Oracle BAM Metadata |
統合ナレッジ・モジュール手順の前に内部的に使用されるチェック・ナレッジ・モジュール。このチェック・ナレッジ・モジュールは、Oracle BAMテクノロジのデフォルト・ナレッジであり、Oracle Data Integratorによって自動的に取得されます。このチェック・ナレッジ・モジュールでは、同じJavaセッション内のOracle BAM固有の統合ナレッジ・モジュールによって後で使用される2つの配列が作成されます。 このナレッジ・モジュールにオプションはありません。 |
IKM SQL to Oracle BAM (delete) |
一致するキー列の値を送信してOracle BAMデータ・オブジェクトから行を削除できる統合ナレッジ・モジュール。次のオプションがあります。 COMMIT_SIZE BATCH_SIZE DATETIME_PATTERN KEY_CONDITION LAST_BAM_TASK LOCALE_COUNTRY LOCALE_LANGUAGE LOCALE_VARIANT |
IKM SQL to Oracle BAM (insert) |
異種データ・ソースからOracle BAMデータ・オブジェクトに行を挿入できる統合ナレッジ・モジュール。次のオプションがあります。 BATCH_SIZE COMMIT_SIZE CREATE_TARG_TABLE DATETIME_PATTERN LAST_BAM_TASK LOCALE_COUNTRY LOCALE_LANGUAGE LOCALE_VARIANT |
IKM SQL to Oracle BAM (looksert natural) |
異種データ・ソースからOracle BAMデータ・オブジェクトに行を挿入できる統合ナレッジ・モジュール。IKM SQL to Oracle BAM (insert)と異なる点は、エントリが存在しない場合に、ディメンション表(参照列が参照しているデータ・オブジェクト)への新規エントリの挿入も行うことです。 ルックサート統合ナレッジ・モジュールでは、参照フィールドに基づいてOracle BAMターゲットへの挿入が行われます。通常は、スター・スキーマのファクト表のロードに使用されます(スター・スキーマの特徴は、データ・ウェアハウスの主要情報が含まれる1つ以上の大規模なファクト表と、それより小規模のディメンション表(または参照表)がいくつか存在し、各ディメンション表にファクト表内の特定の属性に対するエントリの情報が含まれていることです)。 この統合ナレッジ・モジュールは、パフォーマンスを向上させるために提供されています。次のオプションがあります。 BATCH_SIZE COMMIT_SIZE DATETIME_PATTERN LAST_BAM_TASK LOCALE_COUNTRY LOCALE_LANGUAGE LOCALE_VARIANT NON_KEY_MATCHING |
IKM SQL to Oracle BAM (looksert surrogate) |
異種データ・ソースからOracle BAMデータ・オブジェクトに行を挿入できる統合ナレッジ・モジュール。IKM SQL to Oracle BAM (looksert natural)に類似しており、異なる点は、ファクト・データ・オブジェクトとディメンション・オブジェクトの間で、自然キーではなくサロゲート・キーを使用することです。 ルックサート統合ナレッジ・モジュールでは、参照フィールドに基づいてOracle BAMデータ・オブジェクトへの挿入が行われます。通常は、スター・スキーマのファクト表のロードに使用されます(スター・スキーマの特徴は、データ・ウェアハウスの主要情報が含まれる1つ以上の大規模なファクト表と、それより小規模のディメンション表(または参照表)がいくつか存在し、各ディメンション表にファクト表内の特定の属性に対するエントリの情報が含まれていることです)。 参照フィールドの値が関連ディメンション表に存在しない場合は、値が自動的に挿入されます。 この統合ナレッジ・モジュールは、LKM Get Source MetadataおよびCKM Get Oracle BAM Metadataとともに使用する必要があります。 このナレッジ・モジュールには次のオプションがあります。 BATCH_SIZE COMMIT_SIZE DATETIME_PATTERN LAST_BAM_TASK LOCALE_COUNTRY LOCALE_LANGUAGE LOCALE_VARIANT NON_KEY_MATCHING |
IKM SQL to Oracle BAM (update) |
異種データ・ソースからOracle BAMデータ・オブジェクトの行を更新できる統合ナレッジ・モジュール。次のオプションがあります。 BATCH_SIZE COMMIT_SIZE DATETIME_PATTERN LAST_BAM_TASK LOCALE_COUNTRY LOCALE_LANGUAGE LOCALE_VARIANT |
IKM SQL to Oracle BAM (upsert) |
異種データ・ソースからOracle BAMデータ・オブジェクトに行をマージ(アップサート)(つまり、一致する行が存在する場合はデータ・オブジェクトを更新し、新しい行の場合はデータ・オブジェクトを挿入)できる統合ナレッジ・モジュール。次のオプションがあります。 BATCH_SIZE COMMIT_SIZE DATETIME_PATTERN LAST_BAM_TASK LOCALE_COUNTRY LOCALE_LANGUAGE LOCALE_VARIANT 注意: 実行時に、アップサート操作の数は「更新数」フィールドにレポートされます。これは、Oracle Data Integratorオペレータ・ユーザー・インタフェースにアップサート数のフィールドがないためです。さらに、Oracle BAMデータベースに対する挿入および更新の全件数は「更新」フィールドにレポートされ、個別にはレポートされません。 |
LKM Get Source Metadata |
ロード・ナレッジ・モジュール。これは、従来のロード・ナレッジ・モジュールではなく、ソースからステージング領域にデータをロードしません。かわりに、統合ナレッジ・モジュールIKM SQL to Oracle BAM (looksert surrogate)で必要なメタデータの収集のみを実行します。 IKM ORACLE to BAM (looksert surrogate)は、SQLソースからOracle BAMターゲットに直接ロードするタスクを実行します。この実行時に、LKM Get Source Metadataで提供されたメタデータを使用します。 このナレッジ・モジュールにオプションはありません。 |
LKM Oracle BAM to SQL |
クライアント・アプリケーションでOracle BAMからデータをロードできるようにするロード・ナレッジ・モジュール。 Oracle BAMロード・ナレッジ・モジュールをインタフェースでソースとして使用する場合(たとえば、LKM Oracle BAM to SQL)、ユーザーは、ターゲット内の各マップ・フィールドに対するデフォルトの「実行」ボタンを「ステージング領域」に変更する必要があります。デフォルトの「ソース」のままにした場合は、エラーが発生します。Oracle BAMなど、ステージング領域を考慮しないテクノロジでは、トランスフォーメーションを実行しないでください。 次のオプションがあります。 DELETE_TEMPORARY_OBJECTS DROP_PURGE LAST_BAM_TASK |
RKM Oracle BAM |
Oracle BAM用のカスタマイズ・リバース・エンジニアリング・ナレッジ・モジュール。次のオプションがあります。 GET_COLUMNS GET_FOREIGN_KEYS GET_INDEXES GET_PRIMARY_KEYS LOG_FILE_NAME USE_LOG |
表57-4では、Oracle BAMナレッジ・モジュールで使用されるパラメータについて説明します。
表57-4 Oracle BAMナレッジ・モジュールのパラメータ
パラメータ | 説明 |
---|---|
BATCH_SIZE |
クライアントからサーバーにバッチとして送信される最大レコード数。 クライアントからサーバーにバッチを送信するために使用されるバッチ・サイズ。Java仮想マシンのサイズが大きくなり大規模なホストが使用されるようになると、パフォーマンスを向上させるためにこのパラメータを増加する場合があります。 デフォルト値: 1024 |
COMMIT_SIZE |
単一トランザクションの最大レコード数。デフォルトは0(ゼロ)で、これは1つのトランザクションですべての入力レコードをコミットすることを意味します。ゼロ以外の正の値は、一度にコミットするレコードの最大数を示します。このオプションでは負の値は無効です。 デフォルト値: 0 |
CREATE_TARG_TABLE |
Oracle BAMサーバーにターゲット・データ・オブジェクトを作成する場合は、このオプションを選択します。 |
DATETIME_PATTERN |
このオプションおよびロケール仕様(例: LOCALE_LANGUAGE、LOCALE_COUNTRYおよびLOCALE_VARIANT)は、日時のデータ文字列の解析で使用されるJava SimpleDateFormatオブジェクトを作成するために使用します。 SimpleDateFormatの詳細は、第56.2.2項「日時仕様の構成方法」を参照してください。 |
DELETE_TEMPORARY_OBJECTS |
統合後に一時オブジェクトを保持する場合は、このオプションを |
DROP_PURGE |
作業表の削除のみでなくパージも行う場合は、このオプションを |
GET_COLUMNS |
列をリバース・エンジニアリングする場合は、 |
GET_FOREIGN_KEYS |
外部キーをリバース・エンジニアリングする場合は、 |
GET_INDEXES |
索引をリバース・エンジニアリングする場合は、 |
GET_PRIMARY_KEYS |
主キーをリバース・エンジニアリングする場合は、 |
KEY_CONDITION |
ターゲットに対してソースの1つ以上の対応する行を一致させる場合は、このオプションを設定します。次の演算子を使用します。*、=、!=、<、<=、>、>=。一致する値(つまり、 *演算子をKEY_CONDITIONオプションの値として選択した場合、そのキー・フィールドのマッピング値に関係なく、すべての行がターゲット・データ・ストアから削除されます。 |
LAST_BAM_TASK |
Oracle BAM JDBC接続のライフ・サイクルを管理する場合は、このオプションを使用します。このタスクがワークフロー内の最後のOracle BAMタスクの場合は、JDBC接続をクローズします。それ以外の場合は、接続をオープンしたままにします。 |
LOCALE_COUNTRY |
国オプションは有効なISO国コードです。これらのコードは、ISO-3166で定義されている大文字の2文字のコードです。 Javaロケール・オブジェクトを作成するには、このオプションと |
LOCALE_LANGUAGE |
言語オプションは有効なISO言語コードです。これらのコードは、ISO-639で定義されている小文字の2文字のコードです。 Javaロケール・オブジェクトを作成するには、このオプションと |
LOCALE_VARIANT |
変数オプションは、ベンダーまたはブラウザ固有のコードです。たとえば、Windowsには Javaロケール・オブジェクトを作成するには、このオプションとLOCALE_LANGUAGEおよびLOCALE_COUNTRYを組み合せて使用します。 |
LOG_FILE_NAME |
|
NON_KEY_MATCHING |
入力のキー以外の列値をディメンション表内のキー以外の列値と比較するかどうかを決定します。
|
USE_LOG |
リバース・エンジニアリング・プロセスでログ・ファイルに詳細を記録する場合は、 |
この項では、Oracle Data Integratorトポロジ・マネージャを使用してOracle BAMターゲットを作成する手順を詳細に説明します。
Oracle Data Integratorの使用方法の詳細は、次のOracle Technology Network WebサイトにあるOracle Data Integratorのドキュメントを参照してください。
http://www.oracle.com/technetwork/middleware/data-integrator
Oracle Data IntegratorでOracle BAMターゲットを作成する手順は、次のとおりです。
Oracle Data Integratorトポロジ・マネージャを開きます。
「物理アーキテクチャ」→「テクノロジ」→Oracle BAMの順に移動します。
右クリックしてデータ・サーバーの挿入を選択します。
「データ・サーバー定義」タブで次の項目を構成します。
名前: Oracle BAMターゲット名。
サーバー(データ・サーバー): 空白のままにします。
ユーザー: Oracle BAM管理者のユーザー名。
パスワード: Oracle BAM管理者のパスワード。
「JDBC」タブで次の項目を構成します。
JDBCドライバ: any_text_will_do。ただし、11gでは、JDBCドライバにoracle.jdbc.OracleDriver
を指定します。
JDBC URL: instance1:
hostname
:
port_number
instance1
の文字列は、任意の文字列にできます。
hostname
の値は、BAMCommonConfig.xml
ファイルのServerName
プロパティの値と同じである必要があります。また、port_number
の値は、BAMCommonConfig.xml
ファイルのServerPort
プロパティの値と同じである必要があります。
このダイアログの「テスト」ボタンはOracle BAMとOracle Data Integrator間の統合では機能しないため、使用しないでください。Oracle BAMモデルのデータ・オブジェクトが正常にリバース・エンジニアリングされた後、接続情報が正しいことを検証できます。
「OK」をクリックします。
物理データ・サーバー・ダイアログで次の項目を構成します。
「物理スキーマ定義」タブで次のように設定します。
「ローカル・オブジェクト・マスク」を %OBJECT
に変更します。
「コンテキスト」タブで次のように設定します。
新しい行を作成します。この行には、Global
という「コンテキスト」名の行が自動的に挿入されます。
この行の「論理スキーマ」の値は最初は「<未定義>
」です。「<未定義>
」のテキストを選択して、Oracle BAMの表示名に置換する必要があります。
新しい「論理スキーマ」の名前として、Oracle BAMターゲットの表示名(例: BAM_TARGET
)を入力します。Oracle Data Integratorによって、論理スキーマが自動的に作成されます。
「OK」をクリックします。
特定のOracle BAMデータ・オブジェクトに対する操作を実行するには、その前に、Oracle Data IntegratorでOracle BAMスキーマを確認できる必要があります。そのためには、表57-3に記載されているRKM Oracle BAMナレッジ・モジュールを使用して、Oracle BAMスキーマ(つまり、Oracle BAMのすべてのデータ・オブジェクト)をリバース・エンジニアリングする必要があります。
Oracle BAMスキーマをリバース・エンジニアリングする手順は、次のとおりです。
第57.4項「Oracle BAMターゲットの作成」で作成したOracle BAMターゲットで、モデルを作成します。
「定義」タブで次の項目を構成します。
テクノロジ: Oracle BAMターゲット
論理スキーマ: BAM_TARGET
「リバース」タブで次の項目を構成します。
カスタマイズしたリバースを選択します。
コンテキスト: グローバル
KMを選択します: RKM Oracle BAM
注意: リバース・エンジニアリングはJDBCドライバを使用して実行されないため、データ・ストアを右クリックしてそのデータを表示することはできません。 |
「リバース」をクリックしてリバース・エンジニアリングを開始します。
リバース・エンジニアリング・プロセスは、Oracle Data Integratorオペレータでその進行状況を表示して監視できます。
リバース・エンジニアリングでは、reverse.log
ファイルが生成されます。このログ・ファイルの名前と場所は、LOG_FILE_NAME
オプションで変更できます。
ナレッジ・モジュールの各オプションはこのタブで変更できます(オプションについては表57-4で説明します)。
リバース・エンジニアリングが完了すると、Oracle BAMスキーマのメタデータが、Oracle Data IntegratorデザイナのOracle BAMターゲット・ノードの下に表示されます。
ソース・データ・モデルおよびターゲット・データ・モデルを作成するユース・ケースを試行できます。その後、リバース・エンジニアリングを完了したら、関連するナレッジ・モジュールを使用してインタフェースを作成します。
Oracle Data Integrator用のOracle BAM統合ファイルを、適切に移入したプロパティ・ファイルとともにインストールした場合は、Oracle BAMで他の構成を実行する必要はありません。インストール・プロセス中に作成された2つの外部データ・ソース(EDS)定義には、Oracle BAMサーバーをOracle Data IntegratorのODI_MasterリポジトリとODI_Workリポジトリに接続するための適切な値が移入されます。これらのOracle Data Integrator固有のEDS定義は削除しないでください。
次の場合は、Oracle Data Integrator EDS定義を更新する必要があります。
Oracle Data Integratorログイン資格証明を変更した場合。Oracle BAMアーキテクトでOracle Data Integrator EDS定義を更新する必要があります。
ODI_MasterリポジトリまたはODI_Workリポジトリを初期インストール後に別のホストに移動した場合。Oracle BAMアーキテクトで対応するEDS定義を更新する必要があります。
Oracle BAMで作成したアラートで、指定した条件を満たす場合にOracle Data Integratorシナリオを起動できます。詳細は、F.3.10項「Oracle Data Integratorシナリオの実行」を参照してください。
適切な値を使用して次のファイルを手動で構成する必要があります。
BAMServerConfig.xml
BAMCommonConfig.xml
アプリケーションURL: http://localhost:9001
BAMWebConfig.xml
Oracle BAM機能が組み込まれたOracle Data Integratorシナリオを実行するには、複数の方法があります。この項では、Oracle Data IntegratorエージェントをデーモンまたはMicrosoft Windowsサービスとして実行する場合のOracle BAMの構成方法について説明します。BAM-ODI 11gを使用している場合、これらの構成手順を無視できます。
Oracle BAMホストで、ORACLE_HOME\bam\ODI\tools\wrapper\conf
ディレクトリに移動します。
そのディレクトリに格納されている2つのファイル(snpsagent.conf.bam
とreadme.txt
)を、ODI_HOME\tools\wrapper\conf
ディレクトリにある、Oracle Data Integratorエージェントをデーモンまたはサービスとして実行するホストにコピーします。
そのディレクトリでreadme.txt
の説明に従って、Oracle Data IntegratorエージェントをOracle BAMとともに実行するように構成します。
agent.bat
(またはagent.sh
)ファイルの実行により、他のOracle Data Integratorアプリケーション(デザイナ、トポロジ、オペレータなど)の場合と同様に環境変数が取得されます。agent
スクリプトを実行するOracle Data Integratorディレクトリに対してOracle Data Integratorの統合インストールが実施されている場合は、Oracle Data Integratorエージェントをスタンドアロン・アプリケーション、デーモンまたはサービスとして実行するために必要な追加ステップはありません。
表57-7では、BAM-ODIインストールに重要なファイルをリストして説明します。
表57-7
ディレクトリ | ファイル名 | 説明 | 11gで新たに導入されたか。11gより前に存在していたか。名前が変更されたか。 |
---|---|---|---|
./bin |
bam-odi-configuration.sh |
メイン・シェル・スクリプト: ユーザーはこれを呼び出してインストールを開始します。このスクリプトによつて、それがどのサーバー・プラットフォームにインストールされているのか(WeblogicまたはWebSphere)が判別され、そのサーバー・プラットフォームに基づいてサブスクリプトがコールされます。 |
既存 |
./bin |
bam-odi-config-was.sh |
BAMがインストールされているサーバー・プラットフォームがWebSphereである場合に、bam-odi-configuration.shによってコールされるシェル・スクリプト。現在、これはODI 10gでのみ動作します。 |
既存 |
./bin |
bam-odi-config-wls.sh |
BAMがインストールされているサーバー・プラットフォームがWeblogicである場合に、bam-odi-configuration.shによってコールされるシェル・スクリプト。これによって、構成ディレクトリ内の構成ファイルbam-odi-configuration.propertiesから値が読み込まれます。環境変数ODI_VERSIONの値に従って、この値に基づいてサブスクリプトがコールされます。 |
新規 |
./bin |
bam-odi10g-config-wls.sh |
ODI_VERSION = 10gである場合に、bam-odi-config-wls.shによってコールされるシェル・スクリプト。このスクリプトは、その名前以外は、このプロジェクトで変更されていません。このスクリプトは、javaコード(oracle-bam-etl.jar内に配置されている)およびantスクリプトbam-odi10g-config.xml (その名前以外は変更されていない)を呼び出すことによってインストールを実行します。このファイルの旧称は、bam-odi-config-wls.shです。 |
名前変更済 |
./bin |
bam-odi11g-config-wls.sh |
ODI_VERSION = 11gである場合に、bam-odi-config-wls.shによってコールされるシェル・スクリプト。これは、このプロパティの新規スクリプトです。これによって、このインストールに機能を追加するためにリファクタされているoracle-bam-etl.jarのjavaコードが実行されます。また、antスクリプトbam-odi11g-config.xml (これも新規スクリプト)も実行されます。 |
新規 |
./bin |
deploy_shared_library.sh |
oracle-bam-odi_11.1.1.jar (BAM-ODI共有ライブラリ)をデプロイするシェル・スクリプト。このスクリプトは、BAMユーザー名およびパスワードを必要とし、オプションで、それがデプロイされているアプリケーション・サーバーのserverNameおよびserverPortを取ります。 |
新規 |
./bin |
undeploy_shared_library.sh |
oracle-bam-odi_11.1.1.jar (BAM-ODI共有ライブラリ)をデプロイするシェル・スクリプト。このスクリプトは、BAMユーザー名およびパスワードを必要とします。 |
新規 |
./config |
bam-odi-configuration.properties |
インストーラ・スクリプトによって読み込まれるプロパティ・ファイル。その変数ODI_VERSIONは、ODI 10gとODI 11gのいずれのバージョンのBAM-ODI統合をインストールするのかを示します。これは新しい変数であるため、プロパティ・ファイルにこれが存在しない場合は、インストーラによってODI 10g用にインストールすると想定されます。 |
既存 |
./config |
bam-odi10g-config.xml |
bam-odi10g-config.shによって呼び出されるantスクリプト。このスクリプトは、その名前以外は、このプロジェクトで変更されていません。このファイルの旧称は、bam-odi-config.xmlです。 |
名前変更済 |
./config |
bam-odi11g-config.xml |
bam-odi11g-config.shによって呼び出されるantスクリプト。これは、新しいスクリプトであり、これによってインストール・プロセスの残りの部分が実行されます。 |
新規 |
/modules/oracle-bam_11.1.1 |
oracle-bam-adc-ejb.jar oracle-bam-common.jar oracle-bam-etl.jar oracle-bam-odi-config.jar oracle-bam-odi_11.1.1.jar |
これらは、BAM-ODI統合を実行するために必要なoracle jarです。最初の4つのjarが、ODIクライアントのクラスパスにコピーされます。最後のjarは、ODI J2EEエージェントによってアクセスされるアプリケーション・サーバー上にデプロイされるBAM-ODI共有ライブラリです。 |
既存 既存 既存 新規 新規 |