ヘッダーをスキップ
Oracle® Fusion Middleware Oracle SOA Suite開発者ガイド
11g リリース1 (11.1.1.7)
B56238-08
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

57 Oracle Data IntegratorとOracle BAMの併用

この章では、Oracle Business Activity Monitoring(Oracle BAM)とOracle Data Integrator(ODI)間の統合を設定する方法、およびODIにOracle BAMターゲットを作成する方法について説明します。ここでは、ソース・データ・ストアからのロード、ターゲット・データ・ストアへの統合、チェック、リバース・エンジニアリング、ジャーナル化およびサービスの作成のためのOracle BAMナレッジ・モジュールについて詳細に説明します。

この章には次の項が含まれます:

Oracle Data Integratorのドキュメントは、次のOracle Technology Network Webサイトにあります。

http://www.oracle.com/technetwork/middleware/data-integrator

57.1 Oracle Data Integrator (ODI)とOracle BAMとの統合に関する注意事項

Oracle BAM 11gリリース1 (11.1.1.7.0)では、ODIとの統合に新機能が導入されています。この機能は、Oracle BAMとODIの両方がOracle WebLogic Server上にインストールされている場合にサポートされます。次のリリースの構成がサポートされています。

IBM WebSphere上では、Oracle BAM自体はサポートされていますが、ODIとのこの統合はサポートされていません。

57.1.1 11g リリース1 (11.1.1.7.0)におけるアプリケーション・サーバー内のOracle BAM

11g リリース1 (11.1.1.7.0)以降、Oracle BAMは、Oracle WebLogic Server内とIBM WebSphere内のいずれでも実行できます。このタイプのデプロイメントでは、アプリケーション・サーバーの多くの利点を得られるだけでなく、ODIとOracle BAMのインストールおよび更新をそれぞれ独立して簡単に実行できるようになります。

ODIのIBM WebSphere実装は使用できません。

57.1.2 ODIエージェントのタイプ

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ライブラリをデプロイできます。

57.1.3 リリース11gのOracle BAM-ODI統合における追加のインストール手順

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統合の追加手順が必要です。

57.1.4 Oracle BAMとともにOracle Data Integratorを使用するためのヒント

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が(統合ナレッジ・モジュールを使用する場合のように)ターゲットとして使用されている場合は、そのターゲットをステージング領域として使用しないでください。

57.1.5 Oracle BAM-ODI統合のインストールに関する前提条件

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ホストにインストールされている必要があります。

57.2 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エラーが発生する可能性があります。

57.2.1 スクリプトを使用したOracle BAM-ODI統合ファイルのインストール方法

Oracle Data IntegratorとOracle BAMを同じシステムまたは同じネットワーク・ファイル・システムにインストールしている場合は、インストール・スクリプトを使用します。

インストールに問題がある場合は、utility.logというログ・ファイルが作成されます。このファイルの場所は、utility.logging.propertiesファイルによって制御されます。詳細は、第57.2.4項「ログの使用」を参照してください。

統合ファイルをインストールする手順は、次のとおりです。

  1. Oracle BAMサーバーが実行され、Oracle Data Integratorホストからアクセス可能であることを確認します。

  2. Oracle BAMホストで、ORACLE_HOME\bam\configディレクトリに移動し、bam_odi_configuration.propertiesファイルを編集します。そのファイル内で、WL_SERVERプロパティを指定します。このプロパティには、Oracle BAMシステム上のOracle WebLogic Serverフォルダ名を指定します。デフォルト値はwlserver_10.3です。


    注意:

    • Oracle BAMサーバーとOracle Data Integratorが2つの異なるホストにデプロイされている場合は、Oracle BAMのシステムにOracle Data Integratorのドライブをマップし、そのマップしたドライブを使用してODI_HOMEのパスを設定し、統合構成スクリプトを正しく使用できるようにします。ドライブのマッピングができない場合は、第57.2.3項「手動による統合ファイルのインストール方法」を参照してください。

    • リリース11gでは、ODI_HOMEは、Studioコンポーネントを含む開発者インストール・タイプでインストールされます。


  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です。

  4. リリース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とします。

  5. Oracle BAMサーバーが配置されているアプリケーション・サーバーが実行中であることを確認します。

  6. ORACLE_HOME\bam\binbam_odi_configuration.sh(またはMicrosoft Windowsホストの場合はbam_odi_configuration.bat)を実行します。

    スクリプトの要求に従って値を入力します。スクリプトの実行を完了するには、Oracle Data Integratorマスター・リポジトリおよびOracle Data Integrator作業リポジトリのアカウント資格証明が必要です。

    []とともに表示されるプロンプトの場合、カッコ内はデフォルト値です。デフォルトを選択するには[Enter]を押します。カッコで囲まれたデフォルト値が表示されない場合は、値を入力する必要があります。入力しないとスクリプトが停止します。


    注意:

    現在の環境でスクリプトを使用できない場合は、第57.2.3項「手動による統合ファイルのインストール方法」の手順を使用してください。



    注意:

    bam_odi_configuration.shを実行するたびに、BAMODIConfig.xmlファイルのタイムスタンプ付きバックアップが同じディレクトリに作成され、古いファイルは新しいファイルで上書きされます。古いバージョンのBAMODIConfig.xmlでプロパティ設定の変更を行った場合は、最新バージョンのファイルでそれらの変更を再度行う必要があります。


57.2.2 スクリプトを使用したOracle BAM-ODI統合ファイルのインストール時の処理内容

このスクリプトは、手順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ターゲットの作成」を参照してください。

57.2.3 手動による統合ファイルのインストール方法

Oracle Data IntegratorとOracle BAMサーバーが異なるネットワークのホストにインストールされている場合、またはなんらかの理由で現在の環境でスクリプトを使用できない場合は、次の手順を使用します。

このプロセスには、次の5つの主な手順があります。

  1. JAVA_HOMEの設定

  2. Oracle Data Integrator用の外部データ・ソースの作成

  3. Oracle Data Integrator構成プロパティの設定

  4. Oracle Data Integratorディレクトリへのファイルのコピー

  5. Oracle WebLogic ServerクライアントJARの生成

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アーキテクトで外部データ・ソースを作成します。

  1. Oracle BAMアーキテクトを開き、「外部データ・ソース」ページを選択します。

    bam_architect_menu_eds.gifの説明が続きます
    図bam_architect_menu_eds.gifの説明

  2. 「作成」をクリックし、表57-1および表57-2に示されている値を指定して、2つの外部データ・ソース(ODI_MasterおよびODI_Work)を構成します。

    表57-1 ODI_Master外部データ・ソースの値

    プロパティ

    外部データ・ソース名

    ODI_Master

    ドライバ

    oracle.jdbc.driver.OracleDriver

    ログイン

    Oracle Data Integratorマスター・リポジトリのアカウント・ユーザー名

    パスワード

    Oracle Data Integratorマスター・リポジトリのアカウント・パスワード

    接続文字列

    jdbc:oracle:thin:@ip_address:port_number:db_service_name


    表57-2 ODI_Work外部データ・ソースの値

    プロパティ

    外部データ・ソース名

    ODI_Work

    ドライバ

    oracle.jdbc.driver.OracleDriver

    ログイン

    Oracle Data Integrator作業リポジトリのアカウント・ユーザー名

    パスワード

    Oracle Data Integrator作業リポジトリのアカウント・パスワード

    接続文字列

    jdbc:oracle:thin:@ip_address:port_number:db_service_name


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"

例57-2 ODI_ADDITIONAL_CLASSPATHの変更

SET ODI_ADDITIONAL_CLASSPATH=../lib/weblogic/wlfullclient.jar

Oracle Data Integratorディレクトリへのファイルのコピー

この手順では、いくつかのJARファイル、ロギング・プロパティ・ファイルおよびナレッジ・モジュールをOracle Data Integratorディレクトリにコピーします。

  1. 次のファイルを
    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

  2. 次のファイルを
    ORACLE_HOME
    /bam/modules/oracle.bam.thirdparty_11.1.1から
    ODI_HOME
    /libにコピーします。

    • commons-codec-1.3.jar

    • xstream-1.1.3.jar

  3. 次のファイルを
    ORACLE_HOME
    /modules/oracle.odl_11.1.1から
    ODI_HOME
    /libにコピーします。

    • ojdl.jar

  4. 次のファイルを
    ORACLE_HOME
    /modules/oracle.jps_11.1.1から
    ODI_HOME
    /libにコピーします。

    • jps-api.jar

  5. 次のファイルを
    ORACLE_HOME
    /modules/oracle.dms_11.1.1から
    ODI_HOME
    /libにコピーします。

    • dms.jar

  6. 次のファイルを
    ORACLE_HOME/modulesから
    ODI_HOME
    /libにコピーします。

    • org.jaxen_1.1.1.jar

  7. 次のファイルを
    ORACLE_HOME
    /bam/configから
    ODI_HOME
    /libにコピーします。

    • bam.odi.logging.properties

  8. 次のファイルを
    ORACLE_HOME
    /bam/ODI/configから
    ODI_HOME/lib/configにコピーします。

    • BAMODIConfig.xml

  9. すべてのXMLファイルを
    ORACLE_HOME
    /bam/odi/knowledge_modulesから
    ODI_HOME
    /impexpにコピーします。

Oracle WebLogic ServerクライアントJARの生成

  1. Oracle WebLogic Server JarBuilderツールを使用して、wlfullclient.jarファイルを生成します。手順は、『Oracle Fusion Middleware Programming Stand-alone Clients for Oracle WebLogic Server』のWebLogic JARBuilderツールの使用に関する項を参照してください。

  2. ODI_HOME/oracledi/lib/weblogicという名前のサブディレクトリを作成します。

  3. wlfullclient.jarODI_HOME/oracledi/lib/weblogicにコピーします。

57.2.4 ログの使用

インストール・ログ

インストール・プロセスの一部でOracle BAM ICommandが使用され、このプロセスに関連するログが、構成スクリプトを実行しているディレクトリ(ORACLE_HOME\bam\bin)内のファイルに書き込まれます。

インストール・ログのロギング・プロパティは、同じディレクトリ内にあるutility.logging.propertiesファイルで構成します。デフォルトのロギング・レベルはINFOに設定されています。

実行時ログ

Oracle Data IntegratorをOracle BAMとともに実行しているときに発生するメッセージのロギングを構成するには、bam_odi.logging.propertiesファイルを使用します。このファイルはODI_HOME/libにあります。

57.3 Oracle BAMナレッジ・モジュールの使用

ナレッジ・モジュールは、データ統合パターンに必要な一連のコマンドが含まれている汎用コード・テンプレートです。ナレッジ・モジュールには、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

統合後に一時オブジェクトを保持する場合は、このオプションをNOに設定します。このオプションはデバッグに有効です。

DROP_PURGE

作業表の削除のみでなくパージも行う場合は、このオプションをYESに設定します。表を削除した場合、表はデータベースのごみ箱でリカバリ可能な状態です。表を削除してパージした場合、表は完全に削除されます。

GET_COLUMNS

列をリバース・エンジニアリングする場合は、Yesに設定します。

GET_FOREIGN_KEYS

外部キーをリバース・エンジニアリングする場合は、Yesに設定します。

GET_INDEXES

索引をリバース・エンジニアリングする場合は、Yesに設定します。

GET_PRIMARY_KEYS

主キーをリバース・エンジニアリングする場合は、Yesに設定します。

KEY_CONDITION

ターゲットに対してソースの1つ以上の対応する行を一致させる場合は、このオプションを設定します。次の演算子を使用します。*、=、!=、<、<=、>、>=。一致する値(つまり、where句の値)は、Oracle Data Integratorデザイナのインタフェース用の「ダイアグラム」タブにある、ターゲット・データ・ストアのキー・フィールドに対するマッピング値として指定する必要があります。

*演算子をKEY_CONDITIONオプションの値として選択した場合、そのキー・フィールドのマッピング値に関係なく、すべての行がターゲット・データ・ストアから削除されます。

LAST_BAM_TASK

Oracle BAM JDBC接続のライフ・サイクルを管理する場合は、このオプションを使用します。このタスクがワークフロー内の最後のOracle BAMタスクの場合は、JDBC接続をクローズします。それ以外の場合は、接続をオープンしたままにします。

LOCALE_COUNTRY

国オプションは有効なISO国コードです。これらのコードは、ISO-3166で定義されている大文字の2文字のコードです。

Javaロケール・オブジェクトを作成するには、このオプションとLOCALE_LANGUAGEおよびLOCALE_VARIANTを組み合せて使用します。

LOCALE_LANGUAGE

言語オプションは有効なISO言語コードです。これらのコードは、ISO-639で定義されている小文字の2文字のコードです。

Javaロケール・オブジェクトを作成するには、このオプションとLOCALE_COUNTRYおよびLOCALE_VARIANTを組み合せて使用します。

LOCALE_VARIANT

変数オプションは、ベンダーまたはブラウザ固有のコードです。たとえば、WindowsにはWIN、MacintoshにはMAC、POSIXにはPOSIXを使用します。2つの変数がある場合は、アンダースコアで区切り、最も重要な変数を最初に記述します。たとえば、古スペイン語照合では、言語、国および変数のパラメータをes, ES, Traditional_WINのように使用してロケールが作成されます。

Javaロケール・オブジェクトを作成するには、このオプションとLOCALE_LANGUAGEおよびLOCALE_COUNTRYを組み合せて使用します。

LOG_FILE_NAME

USE_LOGYesに設定した場合に指定します。ログのパスとファイル名を指定します。リバース・エンジニアリングを実行する前に、このプロパティの値を必ず正しく設定してください(つまり、ユーザーに書込み権限がある場所を選択します)。

NON_KEY_MATCHING

入力のキー以外の列値をディメンション表内のキー以外の列値と比較するかどうかを決定します。

NON_KEY_MATCHINGtrueに設定すると、入力のキー以外の列値がディメンション表内の列値と一致する場合は、行がファクト表(ターゲット・データ・ストア)に挿入されます。一致しない場合、その行の挿入は失敗し、トランザクション全体がロールバックされる場合(COMMIT_SIZEが0(ゼロ)に設定されていた場合)もあります。COMMIT_SIZEが1の場合は、この行のみがロールバックされて無視され、他の行の挿入はすべて通常どおり処理されます。

NON_KEY_MATCHINGfalseに設定し、参照が成功した場合、ディメンション表に対する入力のキー以外の列値は無視されます。

USE_LOG

リバース・エンジニアリング・プロセスでログ・ファイルに詳細を記録する場合は、Yesに設定します。LOG_FILE_NAMEオプションを使用してログ・ファイルの場所を指定します。


57.4 Oracle BAMターゲットの作成

この項では、Oracle Data Integratorトポロジ・マネージャを使用してOracle BAMターゲットを作成する手順を詳細に説明します。

Oracle Data Integratorの使用方法の詳細は、次のOracle Technology Network WebサイトにあるOracle Data Integratorのドキュメントを参照してください。

http://www.oracle.com/technetwork/middleware/data-integrator

57.4.1 Oracle BAMターゲットの作成方法

Oracle Data IntegratorでOracle BAMターゲットを作成する手順は、次のとおりです。

  1. Oracle Data Integratorトポロジ・マネージャを開きます。

  2. 「物理アーキテクチャ」→「テクノロジ」→Oracle BAMの順に移動します。

  3. 右クリックしてデータ・サーバーの挿入を選択します。

  4. 「データ・サーバー定義」タブで次の項目を構成します。

    • 名前: Oracle BAMターゲット名。

    • サーバー(データ・サーバー): 空白のままにします。

    • ユーザー: Oracle BAM管理者のユーザー名。

    • パスワード: Oracle BAM管理者のパスワード。

  5. 「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モデルのデータ・オブジェクトが正常にリバース・エンジニアリングされた後、接続情報が正しいことを検証できます。

  6. 「OK」をクリックします。

  7. 物理データ・サーバー・ダイアログで次の項目を構成します。

    • 「物理スキーマ定義」タブで次のように設定します。

      • 「ローカル・オブジェクト・マスク」を %OBJECTに変更します。

    • 「コンテキスト」タブで次のように設定します。

      • 新しい行を作成します。この行には、Globalという「コンテキスト」名の行が自動的に挿入されます。

        この行の「論理スキーマ」の値は最初は「<未定義>」です。「<未定義>」のテキストを選択して、Oracle BAMの表示名に置換する必要があります。

      • 新しい「論理スキーマ」の名前として、Oracle BAMターゲットの表示名(例: BAM_TARGET)を入力します。Oracle Data Integratorによって、論理スキーマが自動的に作成されます。

    • 「OK」をクリックします。

57.5 Oracle BAMスキーマのリバース・エンジニアリング

特定のOracle BAMデータ・オブジェクトに対する操作を実行するには、その前に、Oracle Data IntegratorでOracle BAMスキーマを確認できる必要があります。そのためには、表57-3に記載されているRKM Oracle BAMナレッジ・モジュールを使用して、Oracle BAMスキーマ(つまり、Oracle BAMのすべてのデータ・オブジェクト)をリバース・エンジニアリングする必要があります。

Oracle BAMスキーマをリバース・エンジニアリングする手順は、次のとおりです。

  1. 第57.4項「Oracle BAMターゲットの作成」で作成したOracle BAMターゲットで、モデルを作成します。

  2. 「定義」タブで次の項目を構成します。

    • テクノロジ: Oracle BAMターゲット

    • 論理スキーマ: BAM_TARGET

  3. 「リバース」タブで次の項目を構成します。

    • カスタマイズしたリバースを選択します。

    • コンテキスト: グローバル

    • KMを選択します: RKM Oracle BAM


    注意:

    リバース・エンジニアリングはJDBCドライバを使用して実行されないため、データ・ストアを右クリックしてそのデータを表示することはできません。


  4. 「リバース」をクリックしてリバース・エンジニアリングを開始します。

    リバース・エンジニアリング・プロセスは、Oracle Data Integratorオペレータでその進行状況を表示して監視できます。

    リバース・エンジニアリングでは、reverse.logファイルが生成されます。このログ・ファイルの名前と場所は、LOG_FILE_NAMEオプションで変更できます。

    ナレッジ・モジュールの各オプションはこのタブで変更できます(オプションについては表57-4で説明します)。

  5. リバース・エンジニアリングが完了すると、Oracle BAMスキーマのメタデータが、Oracle Data IntegratorデザイナのOracle BAMターゲット・ノードの下に表示されます。

    ソース・データ・モデルおよびターゲット・データ・モデルを作成するユース・ケースを試行できます。その後、リバース・エンジニアリングを完了したら、関連するナレッジ・モジュールを使用してインタフェースを作成します。

57.6 Oracle Data Integrator外部データ・ソース定義の更新

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定義を更新する必要があります。

57.6.1 Oracle Data Integrator外部データ・ソース定義の更新方法

Oracle Data Integrator外部データ・ソース定義を更新する手順は、次のとおりです。

  1. Oracle BAMアーキテクトを開き、「外部データ・ソース」ページに移動します。

    図57-1 Oracle BAMアーキテクトで「外部データ・ソース」ページを開く方法

    図57-1の説明が続きます
    「図57-1 Oracle BAMアーキテクトで「外部データ・ソース」ページを開く方法」の説明

  2. 「ODI_Master」または「ODI_Work」を選択し、「編集」をクリックします。

    図57-2 ODI_Master外部データ・ソースの編集

    図57-2の説明が続きます
    「図57-2 ODI_Master外部データ・ソースの編集」の説明

  3. 必要に応じて「ログイン」「パスワード」または「接続文字列」パラメータを更新し、「保存」をクリックします。

57.7 Oracle BAMアラートからのOracle Data Integratorシナリオの起動

Oracle BAMで作成したアラートで、指定した条件を満たす場合にOracle Data Integratorシナリオを起動できます。詳細は、F.3.10項「Oracle Data Integratorシナリオの実行」を参照してください。

適切な値を使用して次のファイルを手動で構成する必要があります。

57.8 Oracle BAMが組み込まれたOracle Data IntegratorエージェントのデーモンまたはMicrosoft Windowsサービスとしての実行

Oracle BAM機能が組み込まれたOracle Data Integratorシナリオを実行するには、複数の方法があります。この項では、Oracle Data IntegratorエージェントをデーモンまたはMicrosoft Windowsサービスとして実行する場合のOracle BAMの構成方法について説明します。BAM-ODI 11gを使用している場合、これらの構成手順を無視できます。

  1. Oracle BAMホストで、ORACLE_HOME\bam\ODI\tools\wrapper\confディレクトリに移動します。

  2. そのディレクトリに格納されている2つのファイル(snpsagent.conf.bamreadme.txt)を、ODI_HOME\tools\wrapper\confディレクトリにある、Oracle Data Integratorエージェントをデーモンまたはサービスとして実行するホストにコピーします。

  3. そのディレクトリで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.9 Oracle BAMと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共有ライブラリです。

既存

既存

既存

新規

新規