Oracle® Fusion Middleware

Oracle Data Integratorアプリケーション・アダプタ・ガイド

12c (12.1.3)

E59389-02(原本部品番号:E51088-02)

2015年1月

Oracle Fusion Middleware Oracle Data Integratorアプリケーション・アダプタ・ガイド, 12c (12.1.3)

E59389-02

Copyright © 2010, 2015, Oracle and/or its affiliates.All rights reserved.

原本著者: Laura Hofman Miquel、Aslam Khan

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

1 概要

- 1.1 用語

- 1.2 このガイドの使用方法

2 Oracle E-Business Suite

- 2.1 概要

- 2.1.1 概念

- 2.1.2 ナレッジ・モジュール

- 2.2 インストールおよび構成

- 2.2.1 システム要件および動作要件

- 2.2.2 テクノロジ固有の要件

- 2.2.3 接続性要件

- 2.3 トポロジの設定

- 2.3.1 Oracleデータ・サーバーの作成

- 2.3.2 Oracle物理スキーマの作成

- 2.4 統合プロジェクトの設定

- 2.5 Oracleモデルの作成およびE-Business Suite表のリバース・エンジニアリング

- 2.5.1 Oracleモデルの作成

- 2.5.2 E-Business Suite表のリバース・エンジニアリング

- 2.6 マッピングの設計

- 2.6.1 E-Business Suiteからのデータのロード

- 2.6.2 オープン・インタフェースを使用したE-Business Suiteへのデータの統合

- 2.6.2.1 グループIDの管理

- 2.6.2.2 オープン・インタフェース・プログラムの実行

3 Hadoop

- 3.1 概要

- 3.1.1 概念

- 3.1.2 ナレッジ・モジュール

- 3.2 インストールおよび構成

- 3.2.1 システム要件および動作要件

- 3.2.2 テクノロジ固有の要件

- 3.2.3 Oracle Data Integrator Application Adapter for Hadoopの場所

- 3.3 トポロジの設定

- 3.3.1 ファイル・データソースの設定

- 3.3.2 Hiveデータソースの設定

- 3.3.3 HBaseデータソースの設定

- 3.3.4 セキュアなクラスタへの接続

- 3.3.5 Hadoopジョブを実行するためのOracle Data Integratorエージェントの設定

- 3.3.6 ローカル・エージェントでHadoopジョブを実行するためのOracle Data Integrator Studioの構成

- 3.4 統合プロジェクトの設定

- 3.5 リバースエンジニアリングされたHiveおよびHBaseモデルからのOracle Data Integratorモデルの作成

- 3.5.1 モデルの作成

- 3.5.2 Hive表のリバース・エンジニアリング

- 3.5.3 HBase表のリバース・エンジニアリング

- 3.6 マッピングの設計

- 3.6.1 ファイルからHiveへのデータのロード

- 3.6.2 HBaseからHiveへのデータのロード

- 3.6.3 HiveからHBaseへのデータのロード

- 3.6.4 SQLデータベースからHive、HBaseおよびファイルへのデータのロード

- 3.6.5 Hive内のデータの検証と変換

- 3.6.5.1 IKM Hive Control Append

- 3.6.5.2 CKM Hive

- 3.6.5.3 IKM Hive Transform

- 3.6.6 HiveおよびHDFSからOracleデータベースへのデータのロード

- 3.6.7 HiveおよびHDFSからSQLデータベースへのデータのロード

4 JD Edwards World

- 4.1 概要

- 4.1.1 概念

- 4.1.2 ナレッジ・モジュール

- 4.2 インストールおよび構成

- 4.2.1 システム要件および動作要件

- 4.2.2 テクノロジ固有の要件

- 4.2.3 接続性要件

- 4.3 トポロジの設定

- 4.3.1 データ・サーバーの作成

- 4.3.2 物理スキーマの作成

- 4.4 統合プロジェクトの設定

- 4.5 モデルの作成およびリバース・エンジニアリング

- 4.5.1 モデルの作成

- 4.5.2 JDE表のリバース・エンジニアリング

- 4.6 マッピングの設計

- 4.6.1 JDEからのデータのロード

- 4.6.2 JDEへのデータの統合

5 Oracle PeopleSoft

- 5.1 概要

- 5.1.1 概念

- 5.1.2 ナレッジ・モジュール

- 5.2 インストールおよび構成

- 5.2.1 システム要件および動作要件

- 5.2.2 テクノロジ固有の要件

- 5.2.3 接続性要件

- 5.3 トポロジの設定

- 5.3.1 データ・サーバーの作成

- 5.3.2 物理スキーマの作成

- 5.4 プロジェクトの設定

- 5.5 モデルの作成およびリバース・エンジニアリング

- 5.5.1 モデルの作成

- 5.5.2 PeopleSoft表のリバース・エンジニアリング

- 5.6 マッピングの設計

- 5.6.1 PeopleSoftからのデータのロード

6 SAP ABAP BW

- 6.1 概要

- 6.1.1 概念

- 6.1.2 ナレッジ・モジュール

- 6.1.3 SAP BW統合プロセスの概要

- 6.1.3.1 リバース・エンジニアリング・プロセス

- 6.1.3.2 統合プロセス

- 6.2 インストールおよび構成

- 6.2.1 システム要件および動作要件

- 6.2.2 テクノロジ固有の要件

- 6.2.3 接続性要件

- 6.2.3.1 JCoのインストールと構成

- 6.2.3.2 SAPシステムへのODI SAPコンポーネントのインストール

- 6.2.3.3 SAP環境設定の検証

- 6.2.3.4 SAP接続情報の収集

- 6.2.3.5 FTP接続情報の収集

- 6.2.3.6 共有ディレクトリ情報の収集

- 6.2.4 オープン・ツールの追加

- 6.3 トポロジの定義

- 6.3.1 ファイル・データ・サーバーの作成

- 6.3.1.1 ファイル・データ・サーバーの作成

- 6.3.1.2 ファイル・スキーマの作成

- 6.3.2 SAP ABAPデータ・サーバーの作成

- 6.3.2.1 SAP ABAPデータ・サーバーの作成

- 6.3.2.2 SAP ABAPスキーマの作成

- 6.4 プロジェクトの設定

- 6.5 モデルの作成およびリバース・エンジニアリング

- 6.5.1 SAP BWモデルの作成

- 6.5.2 SAP BWモデルのリバース・エンジニアリング

- 6.6 マッピングの設計

- 6.7 SAP BW統合の考慮事項

- 6.7.1 ファイル転送の構成

- 6.7.1.1 共有ディレクトリを使用した転送(推奨)

- 6.7.1.2 FTPベースの転送

- 6.7.2 実行モード

- 6.7.3 本番環境でのABAPのアップロードおよびABAPコードの制御

- 6.7.4 ODI SAPのトランスポート・リクエストの管理

- 6.7.5 SAPパッケージおよびSAP機能グループ

- 6.7.6 ログ・ファイル

- 6.7.7 SAP BWアダプタの制限

7 SAP ABAP ERP

- 7.1 概要

- 7.1.1 概念

- 7.1.2 ナレッジ・モジュール

- 7.1.3 SAP ABAP統合プロセスの概要

- 7.1.3.1 リバース・エンジニアリング・プロセス

- 7.1.3.2 統合プロセス

- 7.2 インストールおよび構成

- 7.2.1 システム要件と動作保証情報

- 7.2.2 テクノロジ固有の要件

- 7.2.3 接続性要件

- 7.2.3.1 JCoのインストールと構成

- 7.2.3.2 SAPシステムへのODI SAPコンポーネントのインストール

- 7.2.3.3 SAP環境設定の検証

- 7.2.3.4 SAP接続情報の収集

- 7.2.3.5 FTP接続情報の収集

- 7.2.3.6 共有ディレクトリ情報の収集

- 7.2.4 オープン・ツールの追加

- 7.3 トポロジの定義

- 7.3.1 ファイル・データ・サーバーの作成

- 7.3.1.1 ファイル・データ・サーバーの作成

- 7.3.1.2 ファイル・スキーマの作成

- 7.3.2 SAP ABAPデータ・サーバーの作成

- 7.3.2.1 SAP ABAPデータ・サーバーの作成

- 7.3.2.2 SAP ABAPスキーマの作成

- 7.4 プロジェクトの設定

- 7.5 モデルの作成およびリバース・エンジニアリング

- 7.5.1 SAP ERPモデルの作成

- 7.5.2 SAP ERPモデルのリバース・エンジニアリング

- 7.6 マッピングの設計

- 7.7 SAP ERP統合の考慮事項

- 7.7.1 ファイル転送の構成

- 7.7.1.1 共有ディレクトリを使用した転送(推奨)

- 7.7.1.2 FTPベースの転送

- 7.7.2 実行モード

- 7.7.3 ABAPアップロードの管理

- 7.7.4 ODI SAPのトランスポート・リクエストの管理

- 7.7.5 SAPパッケージおよびSAP機能グループ

- 7.7.6 ログ・ファイル

- 7.7.7 SAP ABAPアダプタの制限

A SAP ABAP BWアダプタの追加情報

- A.1 SAP ABAP BWで必要な権限

- A.1.1 重要な考慮事項

- A.1.2 RKM SAP BWの設定に必要な認可

- A.1.3 RKM SAP BWの実行に必要な認可

- A.1.4 LKM SAP BWの実行に必要な認可

- A.1.5 本番でのLKM SAP BWの実行に必要な認可

- A.1.6 バックグラウンド・プロセスとしてのLKM SAP BWの実行に必要な認可

- A.1.7 本番でのバックグラウンド・プロセスとしてのLKM SAP BWの実行に必要な認可

- A.2 SAPスタンドアロン接続テスト

- A.2.1 SAPスタンドアロン接続テスト

B SAP ABAP ERPアダプタの追加情報

- B.1 SAP ABAP ERPで必要な権限

- B.1.1 重要な考慮事項

- B.1.2 RKM SAP ERPの設定に必要な認可

- B.1.3 RKM SAP ERPの実行に必要な認可

- B.1.4 LKM SAP ERPの実行に必要な認可

- B.1.5 本番でのLKM SAP ERPの実行に必要な認可

- B.1.6 バックグラウンド・プロセスとしてのLKM SAP ERPの実行に必要な認可

- B.1.7 本番でのバックグラウンド・プロセスとしてのLKM SAP ERPの実行に必要な認可

- B.2 SAP接続テスト

- B.3 SAPスタンドアロン接続テスト

C ODI SAPコンポーネントのインストール

- C.1 ODI SAPコンポーネントの更新

- C.2 ODI SAPコンポーネントのインストール

- C.2.1 SAP送信リクエスト(TR)のインストール

- C.2.1.1 送信リクエスト・ファイルのダウンロード

- C.2.1.2 送信リクエスト・ファイルのインストール

- C.2.2 SAPユーザー・プロファイルのインストールと割当て

- C.3 ODI SAP設定の検証

- C.3.1 共有フォルダ設定の検証

- C.3.2 FTP設定の検証

- C.3.3 SAP権限の検証

- C.3.4 SAPトランスポート層名の検証

- C.4 ODI SAPコンポーネントのアンインストール

- C.4.1 ODI SAPコンポーネントのアンインストールの検証

D 開発から本番へのODIおよびSAPコンポーネントの移行

- D.1 送信リクエスト(TR)

- D.1.1 RKM実行後に作成されるTRのリストの表示

- D.1.1.1 TRフィールドの説明

- D.1.2 DEV関連の送信リクエスト(TR)

- D.1.3 PROD関連の送信リクエスト(TR)

- D.2 リモート・ファンクション・コール(RFC)

- D.3 同じ送信リクエストへのマッピングの追加

- D.3.1 KMオプションの説明

- D.4 ODIパッケージの作成

- D.5 ODIシナリオの生成

- D.6 本番への送信リクエストの解放

- D.7 本番へのマッピングの送信リクエストの解放

- D.8 ODIシナリオの実行

索引

はじめに

このドキュメントは、Oracle Data Integratorでアプリケーション・アダプタを構成し、使用する方法について説明します。

「はじめに」の内容は次のとおりです。

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

対象読者

このガイドは、Oracle Data Integratorアプリケーション・アダプタを統合プロセスの開発ツールとして使用する開発者および管理者を対象読者としています。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

サポートをご購入のOracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメント

詳細は、Oracle Data Integratorライブラリの次のドキュメントを参照してください。

- Oracle Data Integratorリリース・ノート

- Oracle Data Integratorの理解

- Oracle Data Integratorの管理

- 『Oracle Data Integratorでの統合プロジェクトの開発』

- Oracle Data Integratorのインストールと構成

- Oracle Data Integratorのアップグレード

- 『Oracle Data Integratorでのナレッジ・モジュールの開発』

- Oracle Data Integrator接続およびナレッジ・モジュール・ガイド

- Oracle Warehouse BuilderからOracle Data Integratorへの移行

- Oracle Data Integratorツール・リファレンス

- Oracle Data Integratorデータ・サービスJava APIリファレンス

- Oracle Data Integratorオープン・ツールJava APIリファレンス

- Oracle Data IntegratorのためのSAP ABAP BWアダプタ・スタート・ガイド

- Oracle Data Integrator Java APIリファレンス

- Oracle Data IntegratorのためのSAP ABAP ERPアダプタ・スタート・ガイド

- Oracle Data Integrator 12cオンライン・ヘルプ([F1]を押すか、「ヘルプ」を選択してから、「検索」または「目次」を選択してメイン・メニューからJDeveloperヘルプ・センターを開いて、ODI Studioで入手可能)

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

1 概要

この章では、このガイドで使用される用語を紹介し、このガイドの使用方法について説明します。

Oracle Data Integratorでは、アプリケーション・アダプタを使用して、エンタープライズ・アプリケーションからのデータおよびエンタープライズ・アプリケーションへのデータを統合します。

ここでは、次のテクノロジに対し、Oracle Data Integratorでアプリケーション・アダプタを構成し、使用する方法について説明します。

- Oracle E-Business Suite

- Hadoop

- JD Edwards World

- Oracle PeopleSoft

- SAP ABAP BW

- SAP ABAP ERP

この章の内容は次のとおりです。

- 1.1項「用語」

- 1.2項「このガイドの使用方法」

1.1 用語

この項では、このドキュメントおよび「はじめに」に記載されている関連ドキュメントで使用されている共通用語の一部を定義します。

ナレッジ・モジュール

ナレッジ・モジュール(KM)は、Oracle Data Integrator Open Connectorテクノロジのコンポーネントです。KMには、Oracle Data Integratorが特定のテクノロジまたはテクノロジのセットに対する特定の組合せのタスクを実行するために必要な知識が記載されています。

ナレッジ・モジュールは、JDBC、JMS、JCAなどの接続性レイヤーと結合して、テクノロジへの接続、テクノロジからのデータの抽出、抽出したデータの変換、変換したデータのチェック、チェックしたデータの統合など、テクノロジに対して定義されたタスクを実行するオープンなコネクタを定義します。

アプリケーション・アダプタ

アダプタはナレッジ・モジュールのグループです。このグループには、添付されたOracle Data Integrator用テクノロジ定義も含まれる場合があります。

Oracle Application Adapters for Data Integrationには、様々なアプリケーションからのメタデータをリバース・エンジニアリンクしたり、様々なアプリケーションからのバルク・データを抽出するための、固有のソフトウェア・コンポーネントが用意されています。

1.2 このガイドの使用方法

このガイドでは、Oracle Data Integratorでサポートされているアプリケーション・アダプタおよびテクノロジでの作業に関する概念情報および手順を提供します。

章ごとに、各テクノロジの構成方法、プロジェクトの設定方法、および統合操作を実行するためのテクノロジ固有のアプリケーション・アダプタの使用方法について説明します。

一部のナレッジ・モジュールはテクノロジ固有のものではなく、業界標準をサポートしているテクノロジが必要になります。汎用ナレッジ・モジュールと呼ばれるこれらのナレッジ・モジュールは、それぞれ任意のANSI SQL-92準拠データベースおよび任意のJMS準拠メッセージ・プロバイダで動作するように設計されています。詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』の汎用SQLに関する項を参照してください。

これらの汎用ナレッジ・モジュールをどのような状況でテクノロジと併用できるかについては、テクノロジの章で説明します。ただし、パフォーマンスを向上させ、テクノロジ固有の機能の適用範囲を拡大するために、テクノロジ固有のナレッジ・モジュールを使用することをお薦めします。

ナレッジ・モジュールを使用する前に、Oracle Data Integrator Studioに含まれるナレッジ・モジュールの説明で、使用に関する詳細、制限事項および要件を確認することをお薦めします。また、ナレッジ・モジュールのオプションは、あらかじめデフォルト値で構成されているためすぐに使用できますが、これらのオプションおよびその説明についても確認しておくことをお薦めします。

このガイドの各章では、テクノロジおよびアプリケーション・アダプタに付随する使用方法、オプション、制限事項および要件に関する重要な情報を提供します。

2 Oracle E-Business Suite

この章では、Oracle Data IntegratorでのOracle E-Business Suiteナレッジ・モジュールの使用方法について説明します。

この章の内容は次のとおりです。

- 2.1項「概要」

- 2.2項「インストールおよび構成」

- 2.3項「トポロジの設定」

- 2.4項「統合プロジェクトの設定」

- 2.5項「Oracleモデルの作成およびE-Business Suite表のリバース・エンジニアリング」

- 2.6項「マッピングの設計」

2.1 概要

Oracle E-Business Suite (EBS)は、オラクル社の顧客のビジネス・ニーズに最適のソリューションを提供する統合ソフトウェア・アプリケーションのスイートです。

2.1.1 概念

EBSナレッジ・モジュールでは、次の機能がサポートされます。

- EBSオブジェクトのリバース・エンジニアリング: RKM E-Business Suiteを使用して、E-Business Suiteデータ構造をリバース・エンジニアリングできます。

- EBSからのデータの抽出: 表、ビューおよびキー・フレックスフィールドなどのオブジェクトを使用したE-Business Suiteからのデータの抽出に、標準のOracleまたはSQL LKMを使用できます。

- EBSへのデータ統合: オープン・インタフェース表を使用したE-Business Suiteへのデータの統合にIKM E-Business Suiteを使用できます。オープン・インタフェースAPIにより、多くのOracle固有のインタフェースがカプセル化され、データの整合性が保証されます。オープン・インタフェースは次のもので構成されます。

- ロードされるいくつかのインタフェース表。これらの表は、E-Business Suiteへの入力データのエントリ・ポイントです。

- インタフェース表からE-Business Suiteへのデータの挿入の検証および処理を行ういくつかのプログラム。

Oracle E-Business Suite用のOracle Data Integratorナレッジ・モジュールは、データベース層と対話し、メタデータの抽出およびデータのロードを行います。データのロード時には、アプリケーション層の同時処理サーバーとも対話します。

2.1.2 ナレッジ・モジュール

Oracle Data Integratorには、E-Business Suiteデータを処理するためのナレッジ・モジュールが用意されています。これらのリストを表2-1に示します。これらの特定のEBS KMでは、Oracle Data IntegratorとE-Business Suiteの間に包括的な双方向の接続性が提供されており、データの抽出およびロードが可能です。ナレッジ・モジュールでは、E-Business Suiteのすべてのモジュールがサポートされており、EBSオブジェクト表/ビューおよびインタフェース表によって双方向の接続性が提供されます。

表2-1 Oracle E-Business Suiteナレッジ・モジュール

ナレッジ・モジュール

説明

IKM E-Business Suite (オープン・インタフェース)

IKM E-Business Suiteは、EBSインタフェース表へのデータのロードおよび同時リクエストの発行(これによってインタフェース表からベース表へのロードが行われます)に使用されます。

この統合ナレッジ・モジュールでは、次の処理が行われます。

- 増分更新モードで任意のソースからのデータをインタフェース表に統合します。

- データ制御の有効化: 無効なデータはエラー表に分離され、再利用できます。

インタフェース表のロードの他に、次のようなオプションのアクションも提供されます。

- バッチ内で最初のマッピングに対してグループIDを作成します。

- このグループIDを後続のマッピングで使用します。

- バッチ内で最後の表がロードされたら、このグループIDを削除します。

- バッチ内の任意の位置でE-Business Suiteインタフェース・プログラムをコールする必要がある場合、および必要なインタフェース表がすべてロードされた後に、オープン・インタフェース・プログラムが実行されます。

インタフェース表のロードには、必ずIKM E-Business Suite (オープン・インタフェース) KMを使用してください。E-Business Suiteの物理表への直接の書込みはサポートされていません。

RKM E-Business Suite

このKMは、E-Business Suiteデータ構造をリバース・エンジニアリングします。表、ビュー、フレックスフィールドおよびE-Business Suiteのインタフェース表構造(列、主キーおよび外部キー)などのEBSオブジェクトがリバースされます。

2.2 インストールおよび構成

E-Business Suiteデータでの作業を開始する前に、この項の情報を必ず読んでください。

- システム要件および動作要件

- テクノロジ固有の要件

- 接続性要件

2.2.1 システム要件および動作要件

インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。

サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。

http://www.oracle.com/technology/products/oracle-data-integrator/index.html

2.2.2 テクノロジ固有の要件

Oracle Data IntegratorでE-Business Suiteデータを使用するためのテクノロジ固有の要件はありません。

2.2.3 接続性要件

Oracle Data IntegratorでE-Business Suiteデータを使用するための接続性要件はありません。

2.3 トポロジの設定

この手順では、データ・サーバーおよび、E-Business Suiteデータを格納するOracle Databaseの物理スキーマと論理スキーマを、Oracle Data Integratorで宣言します。

2.3.1 Oracleデータ・サーバーの作成

『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracleデータ・サーバーの作成に関する項に記載されているとおり、Oracleテクノロジ用データ・サーバーを作成します。このデータ・サーバーは、E-Business Suiteデータを格納するOracle Databaseインスタンスを指している必要があります。

2.3.2 Oracle物理スキーマの作成

『Oracle Data Integratorの管理』の物理スキーマの作成に関する項の説明に従って、標準の手順を使用してOracle物理スキーマを作成します。このスキーマは、E-Business Suite表を指しているシノニムを含むOracleスキーマを指している必要があります。

注意:
物理スキーマは、E-Business Suite表を指しているシノニムを含むOracleスキーマを表す必要があります。このスキーマは通常APPSと呼ばれます。これが、アプリケーションの物理表を含むOracleスキーマを直接指すことはできません。これらの物理表は、通常関連するアプリケーションの名前をとって命名されています。
リバース・エンジニアリングを行うには、物理スキーマが添付されているデータ・サーバーで指定されたOracleユーザーに、APPLSYS表およびOracleデータ・ディクショナリから選択する権限が必要です。

『Oracle Data Integratorの管理』の論理スキーマの作成に関する項の説明に従って、標準の手順を使用してこの物理スキーマ用の論理スキーマを作成し、特定のコンテキストで関連付けます。

注意:
E-Business Suite表を含むOracleスキーマおよび、これらの表を指すシノニムを含むOracleスキーマは、物理スキーマ定義で作業スキーマとして定義できません。また、これらのOracleスキーマは、マッピングのステージング領域として使用しないでください。

2.4 統合プロジェクトの設定

E-Business Suiteの機能を使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Data Integratorでの統合プロジェクトの開発』の統合プロジェクトの作成に関する項を参照してください。

次のKMをOracle Data Integratorプロジェクトにインポートします。

- IKM E-Business Suite (オープン・インタフェース)

- RKM E-Business Suite

これらの特定のEBS KMに加えて、Oracle Databaseでデータの抽出およびデータの品質チェックを実行する標準Oracle LKMおよびCKMをインポートします。利用できるKMのリストは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracle Databaseに関する項を参照してください。

2.5 Oracleモデルの作成およびE-Business Suite表のリバース・エンジニアリング

この項の内容は次のとおりです。

- Oracleモデルの作成

- E-Business Suite表のリバース・エンジニアリング

2.5.1 Oracleモデルの作成

『Oracle Data Integratorでの統合プロジェクトの開発』のモデルの作成に関する項の説明に従い、標準の手順を使用して、Oracleテクノロジに基づくOracleモデル、およびE-Business Suite接続の構成時に作成された論理スキーマに基づくOracleモデルを作成します。

注意:
Oracle Data Integratorで定義されるE-Business Suiteテクノロジはありません。EBSデータをホストするOracle Databaseに対応する論理スキーマ上にデータ・モデルが作成されます。

2.5.2 E-Business Suite表のリバース・エンジニアリング

RKM E-Business Suiteでは、インストールされたE-Business Suite表をリバース・エンジニアリングし、E-Business Suite統合リポジトリから取得した情報を付加できます。

リバース・エンジニアリング・プロセスでは、次に示す情報を返します。

- インストールされたサブモデルとしてのE-Business Suite (モジュール)

- モジュールのサブモデルごとに、表、ビュー、フレックスフィールド、およびインタフェース表のサブモデル

- 属性としての列および制約(主キーおよび外部キー)を持つデータストアとしての表

- 表のコメント

RKM E-Business Suiteを使用してEBS表のカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』のモデルのリバースエンジニアリングに関する項の説明に従って、通常の手順を使用します。この項では、EBS表固有のフィールドのみについて説明します。

1. Oracleモデルの「リバース・エンジニアリング」タブで、RKM E-Business Suiteを選択します。

2. 次のようにRKMのオプションを設定します。

- Applications List: アプリケーションの短縮名(INVなど)のリストを入力します。

- Only Installed Applications: インストール済アプリケーションと共有アプリケーションのみをリバース・エンジニアリングするには、このオプションをYESに設定します。このオプションをNOに設定すると、すべてのアプリケーションがリバース・エンジニアリングされます。

- Min Rows: すべての表をリバース・エンジニアリングする場合は、デフォルト値0のままにします。最小行数の表のみをリバース・エンジニアリングする場合、このオプションでその最小行数を指定します。

- Description Mask: E-Business Suiteの摘要に基づいてリバース・エンジニアリングされるオブジェクトをフィルタリングするための摘要マスクを指定します。

- Flexfields: このオプションをYESに設定すると、アプリケーションのフレックスフィールドがリバース・エンジニアリングされます。

- Interface Tables: このオプションをYESに設定すると、アプリケーションのインタフェース表がリバース・エンジニアリングされます。

3. リバースする表を選択するには、「マスク」フィールドでリバース・マスクを指定します。「リバース・エンジニアリング」タブの「マスク」フィールドで、リバース・エンジニアリングされるオブジェクトが名前に基づいてフィルタ処理されます。

注意:
「マスク」フィールドおよびDescription Maskオプションは、SQL Likeを使用して実装されています。選択できるパターンは次のとおりです。

- % パーセント記号を使用すると、任意の長さ(長さ0を含む)の任意の文字列と一致します。

- _ アンダースコアを使用すると、1文字と一致します。

リバース・エンジニアリング・プロセスでは、アプリケーションおよび表をサブモデルおよびデータストアとして返します。Oracle Applicationsをマッピングのソースまたはターゲットとして使用できます。

E-Business Suiteのリバース・エンジニアリングの機能

E-Business Suite表のリバース・エンジニアリングには、次の機能があります。

- E-Business Suiteモジュールがサブモデルとしてリバースされます。サブモデル名はアプリケーション名に対応しています。

- 各アプリケーション・サブモデルは、表、ビュー、フレックスフィールド、およびインタフェース表のサブモデルに分類されます。

- 表/ビューは、データストアおよびその属性としての列、さらに制約(主キーおよび外部キー)としてリバースされます。

- <AppName>のフレックスフィールドと呼ばれるサブモデルがアプリケーションごとに作成されます。フレックスフィールド・サブモデルのデータストアは、アプリケーション用に登録されているキー・フレックスフィールドのConcatenated_Segment_Viewsに対応しています。これらのオブジェクトはビューのサブセットです。フレックスフィールド・サブフォルダのデータストアは、フレックスフィールドの名前をとって命名されます。

- インタフェース表サブモデルのデータストアは、名前にINTERFACEというパターンを含む表に対応しています。これらのオブジェクトは表のサブセットです。

注意:
オープン・インタフェース(EBS統合リポジトリで指定)の一部には、INTERFACEというパターンが名前に含まれていないインタフェース表を持つものがあります。

E-Business Suiteリバース・エンジニアリング・プロセスの制限

この項では、E-Business Suite表のリバース・エンジニアリングの制限について説明します。

- 選択的なリバース・エンジニアリングは、このナレッジ・モジュールでは使用できません。

- Min Rowsオプションを使用するには、Oracle統計がすべての表で計算される必要があります。

- Oracle Data Integratorデータ・サーバーで定義されているOracleユーザーが、リバース・エンジニアリングする表の所有者ではない場合、これらの表でこのユーザーのシノニムを定義する必要があります。

- キー・フレックスフィールドのみがサポートされています。付加フレックスフィールドはサポートされていません。

2.6 マッピングの設計

E-Business Suiteをマッピングのソースまたはターゲットとして使用できます。

マッピング用に選択したKMによって、このマッピングの機能およびパフォーマンスが決まります。この項に示す推奨事項は、EBSデータのロードおよび統合に関連する様々な状況でのKMの選択に役立ちます。

2.6.1 E-Business Suiteからのデータのロード

E-Business Suiteをソースとして使用する場合、アプリケーションからデータを抽出して別のシステム(データ・ウェアハウス、他のデータベースなど)に統合します。

E-Business Suiteからのデータの抽出は、Oracle Databaseをソースとする通常のマッピングを使用して行います。このためには、Oracle Databaseテクノロジで機能するナレッジ・モジュールを使用できます。詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracleからのデータのロードに関する項を参照してください。

2.6.2 オープン・インタフェースを使用したE-Business Suiteへのデータの統合

Oracle Data Integratorでは、データをE-Business Suiteに統合するためのIKM E-Business Suite (オープン・インタフェース)を提供しています。E-Business Suiteへの統合プロセスは次のとおりです。

1. 一連のオープン・インタフェース表は、特定のトランザクションのバッチでロードされます。このトランザクションは、グループIDで識別されます。グループIDについては、次の点に注意してください。

- バッチ内の最初の表でグループIDが存在しない場合は、これを作成します。

- バッチ内の後続の表については、バッチで別の表がロードされたら、このグループIDを使用します。

- バッチ内で最後の表がロードされたら、このグループIDを削除します。

2. バッチ内の任意の位置でE-Businessインタフェース・プログラムをコールする必要がある場合、オープン・インタフェース・プログラムを実行して、インタフェース表のデータを検証し、処理する必要があります。バッチは、オープン・インタフェース表からベース表をロードするオープン・インタフェース・プログラム・コールで終了します。

これらの処理は、IKM E-Business Suite (オープン・インタフェース)でサポートされています。このIKMは、IKM Oracle Incremental Updateと同様に使用され、オープン・インタフェース表をロードするための同様のオプションをサポートしています。この項では、オープン・インタフェースに固有のオプションについて説明します。IKM Oracle Incremental Updateの詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracle Databaseに関する項を参照してください。

グループIDの処理やオープン・インタフェース・プログラムの実行など、E-Business Suiteに固有のアクションのためのマッピングの構成については、2.6.2.1項「グループIDの管理」および2.6.2.2項「オープン・インタフェース・プログラムの実行」を参照してください。

2.6.2.1 グループIDの管理

データをE-Business Suiteに統合するトランザクションは、グループIDで識別されるバッチです。たとえば、いくつかのインタフェース表をロードしてE-Business Suiteで結果を生成する場合、これらのすべてのロード処理およびプログラムの検証と処理へのコールには、このバッチのグループIDが使用されます。

この項の内容は次のとおりです。

- グループIDの作成

- 既存のグループIDの使用方法

- 既存のグループIDの削除

グループIDの作成

1つの単一バッチにおいてインタフェース表のグループをロードする最初のマッピングでは、強制的にグループIDを作成する必要があります。

マッピングでグループIDを作成する手順は次のとおりです。

1. KMオプションで次を設定します。

- OA_CREATE_NEW_GROUP_IDをYESに設定します。

- OA_GROUP_ID_NAMEオプションにグループID名を指定します。

注意:
グループID名は、指定のインスタンスで一意である必要があります。バッチ処理の最後にグループIDを削除する場合、OA_REMOVE_GROUP_IDオプションを使用する必要があります。

- OA_GROUP_ID_EXPRESSIONオプションのグループID値には有効なSQL式を指定します。<SEQUENCE_NAME>.NEXTVALなどのOracle Database順序値を使用します。

2. マッピングで、グループID値を使用してロードするインタフェース表のすべての列に対してフラグUD1を選択し、マッピング値を0に設定します。

バッチに属する次のマッピングでは、既存のグループIDを使用する必要があります。

既存のグループIDの使用方法

マッピングで既存のグループIDを使用する手順は次のとおりです。

1. OA_USE_EXISTING_GROUP_ID IKMオプションをYesに設定します。

2. OA_GROUP_ID_NAME IKMオプションにグループID名を指定します。

3. マッピングで、グループID値を使用してロードするすべての列に対してフラグUD1を選択し、マッピング値を0に設定します。

インタフェース表のバッチをロードする最後のマッピングでは、不要になったグループIDを削除できます。

既存のグループIDの削除

既存のグループIDを削除する手順は次のとおりです。

1. OA_REMOVE_GROUP_IDオプションを選択します。

2. OA_GROUP_ID_NAMEオプションにグループID名を指定します。

3. マッピングで、グループID値を使用してロードするインタフェース表のすべての列に対してフラグUD1を選択し、マッピング値を0に設定します。

注意:
グループIDは、Oracle Applicationsインタフェース表を指す物理スキーマで指定された作業スキーマで作成されるSNP_OA_GROUP表に格納されます。グループIDは、Oracle Data Integratorでは一意のグループID名で参照されます。

2.6.2.2 オープン・インタフェース・プログラムの実行

Oracle Data Integratorマッピングでは、一連のインタフェース表がロードされる際、E-Business Suiteインタフェース表のデータを検証および処理するため、オープン・インタフェース・プログラムをコールする必要があります。このコールには既存のグループIDを使用できます(「既存のグループIDの使用方法」を参照)。オープン・インタフェースに表が1つしかない場合は、同じマッピングにグループIDを作成できます(「グループIDの作成」を参照)。オープン・インタフェース・プログラムの実行は、パッケージの最後のマッピングで開始されます。このマッピングでは、一連のオープン・インタフェース表にデータが移入され、通常は、グループIDが必要なくなると、これを削除します。

オープン・インタフェース・プログラムを実行する手順は次のとおりです。

1. SUBMIT_PROGRAMオプションをYESに設定します。

2. OA_PROGRAMオプションでコールするプログラムの名前を指定します。

注意:
使用可能なオープン・インタフェース・プログラムおよびそれらのパラメータのリストは、E-Business SuiteモジュールAPIおよびオープン・インタフェースのドキュメント、またはE-Business Suite統合リポジトリを参照してください。

3. OA_ARGUMENTSオプションでプログラム・パラメータを指定します。パラメータは次の形式で指定します。
argument_name => 'argument value', argument_name => 'argument value' ...

1つの引数がグループIDの値を取る必要がある場合は、argument Name => v_group_idを指定する必要があります。

4. 次のオプションの値を設定して、プログラムを実行するセッションのコンテキスト・パラメータを指定することも必要です。

- OA_USER_NAME: E-Business Suiteのユーザー名

- OA_REPONSIBILITY: E-Business Suiteの職責名

- OA_LANGUAGE: その職責に使用される言語

- OA_APPLICATION: その職責が属するアプリケーション

3 Hadoop

この章では、Oracle Data Integrator (ODI) Application Adapter for Hadoopでのナレッジ・モジュールの使用方法について説明します。

次のセクションがあります。

- 概要

- インストールおよび構成

- トポロジの設定

- 統合プロジェクトの設定

- リバースエンジニアリングされたHiveおよびHBaseモデルからのOracle Data Integratorモデルの作成

- マッピングの設計

関連資料:
『Oracle Big Data Connectorsユーザーズ・ガイド』

3.1概要

Apache Hadoopは、リレーショナルでないデータソースからのデータや、リレーショナル・データベースで処理できないデータ・ボリュームを処理するように設計されています。

Oracle Data Integrator (ODI) Application Adapter for Hadoopを使用すると、データ統合開発者は、Oracle Data Integratorを使用してHadoop内でデータの統合と変換を簡単に行うことができます。このアプリケーション・アダプタでは、使い慣れて使いやすいツールおよびナレッジ・モジュール(KM)を採用することにより、次の機能を実現しています。

- ローカル・ファイル・システム、HDFS、HBase (Hiveを使用)およびSQLデータベース(SQOOPを使用)からHadoopへのデータのロード

- Hadoopでのデータの検証と変換

- 追加処理およびレポート生成を行うための、HadoopからOracleデータベース、SQLデータベース(SQOOPを使用)またはHBaseへの処理済データのロード

ナレッジ・モジュール(KM)には、Oracle Data Integratorが特定のテクノロジに対して特定のタスク・セットを実行するために必要な情報が含まれています。アプリケーション・アダプタは、ナレッジ・モジュールの集まりです。したがって、Oracle Data Integrator Application Adapter for Hadoopは、Hadoopに格納されているデータにアクセスするためのナレッジ・モジュールの集まりです。

3.1.1 概念

Hadoopでの通常の処理には、MapReduceジョブとしてプログラミングされたデータの検証や変換などがあります。MapReduceジョブの設計と実装には、専門的なプログラミングの知識が必要です。ただし、Oracle Data IntegratorとOracle Data Integrator Application Adapter for Hadoopを使用する場合、MapReduceジョブを記述する必要はありません。Oracle Data Integratorは、Apache Hiveと、MapReduceジョブを実装するためのSQLライクな言語であるHive Query Language (HiveQL)を使用します。

ビッグ・データ処理のシナリオを実装する場合の最初の手順は、データをHadoopにロードすることです。データソースは通常、ローカル・ファイル・システム、HDFS、HBaseおよびHiveの表にあります。

データのロード後は、SQLと同様の方法でHiveQLを使用して、データを検証および変換できます。データ検証(NULLや主キーのチェックなど)および変換(フィルタ、集計、設定操作、表の導出など)を実行できます。また、カスタマイズした手続き型のスニペット(スクリプト)をデータの処理に含めることもできます。

データが集計、簡略化または処理されて小さなデータ・セットになったら、追加の処理および分析を行うためにそれをOracleデータベース、他のリレーショナル・データベースまたはHBaseにロードできます。Oracleデータベースへのロードを最適に行うには、Oracle Loader for Hadoopが推奨されます。

3.1.2 ナレッジ・モジュール

Oracle Data Integratorには、表3-1に示されている、Hadoopで使用するためのナレッジ・モジュール(KM)が用意されています。

表3-1 Oracle Data Integrator Application Adapter for Hadoopナレッジ・モジュール

KM名

説明

ソース

ターゲット

IKM File to Hive (Load Data)

ローカルおよびHDFSファイルからHive表にデータをロードします。Hiveのパーティション化とデータ移動の低減によってパフォーマンスを向上させるオプションが用意されています。

このナレッジ・モジュールでは、ワイルドカード(*,?)がサポートされています。

ファイル・システム

Hive

IKM Hive Control Append

切捨て/挿入(追加)モードでHiveターゲット表にデータを統合します。データを制御(検証)できます。無効なデータはエラー表に分離され、再利用できます。

Hive

Hive

IKM Hive Transform

PerlやPythonなどのカスタマイズしたスクリプトで変換した後、Hiveターゲット表にデータを統合します。

Hive

Hive

IKM File-Hive to Oracle (OLH-OSCH)

Oracle Loader for HadoopまたはOracle SQL Connector for HDFS (あるいはその両方)を使用して、HDFSファイルまたはHiveソースからOracleデータベース・ターゲットにデータを統合します。

ファイル・システムまたはHive

Oracleデータベース

IKM File-Hive to SQL (SQOOP)

SQOOPを使用して、HDFSファイルまたはHiveデータソースからSQLデータベース・ターゲットにデータを統合します。SQOOPは、パラレルなJDBC接続を使用してデータをロードします。

ファイル・システムまたはHive

SQLデータベース

IKM SQL to Hive-HBase-File (SQOOP)

SQOOPを使用して、SQLデータベースからHive表、HBase表またはHDFSファイルにデータを統合します。SQOOPは、パラレルなJDBC接続を使用してデータをアンロードします。

SQLデータベース

Hive、HBaseまたはファイル・システム

IKM Hive to HBase Incremental Update (HBase-SerDe)

Hive表からHBase表にデータを統合します。新しい行の挿入および既存の行の更新がサポートされています。

Hive

HBase

LKM HBase to Hive (HBase-SerDe)

HBase表からHive表にデータをロードします。HiveからソースHBase表への読取り専用アクセスを提供します。

HBaseソース表の関連するすべての列を表す、Hiveに関する一時ロード表定義を定義します。

HBase

Hive

CKM Hive

データを制約に対して検証します。

該当なし

Hive

RKM Hive

Hive表をリバース・エンジニアリングします。

Hiveメタデータ

該当なし

RKM HBase

HBase表をリバース・エンジニアリングします。

HBaseメタデータ

該当なし

3.2 インストールおよび構成

次の各項で、Oracle Data Integrator (ODI) Application Adapterのインストール要件について説明します。

- システム要件および動作要件

- テクノロジ固有の要件

- Oracle Data Integrator Application Adapter for Hadoopの場所

3.2.1 システム要件および動作要件

Oracle Data Integrator Application Adapter for Hadoopを使用するには、まず、Oracle Big Data Connectorsとは別のライセンスが必要なOracle Data Integratorをインストールする必要があります。ODIは、次の場所にあるOracle Webサイトからダウンロードできます。

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

Oracle Data Integrator Application Adapter for Hadoopには、Oracle Data Integratorのバージョン11.1.1.6.0以上が必要です。

インストールを実行する前に、システム要件および動作保証のドキュメントを読み、インストール先の環境が、これからインストールする製品の最小インストール要件を満たしていることを確認します。

サポートされているプラットフォームおよびバージョンのリストは、Oracle Technology Networkで入手できます。

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

3.2.2 テクノロジ固有の要件

サポートされているテクノロジおよびバージョンのリストには、Oracle Technology Networkで入手できます。

http://www.oracle.com/technetwork/middleware/data-integrator/overview/index.html">>http://www.oracle.com/technetwork/middleware/data-integrator/overview/index.html

3.2.3 Oracle Data Integrator Application Adapter for Hadoopの場所

Oracle Data Integrator Application Adapter for Hadoopは、ODI_Home/odi/sdk/xml-referenceディレクトリ内にあります。

3.3 トポロジの設定

Oracle Data Integratorでトポロジを設定するには、ファイル・システム、HiveおよびHBase情報を格納するデータ・サーバー、物理スキーマおよび論理スキーマを特定する必要があります。

この項には次のトピックが含まれます:

- ファイル・データソースの設定

- Hiveデータソースの設定

- HBaseデータソースの設定

- セキュアなクラスタへの接続

- Hadoopジョブを実行するためのOracle Data Integratorエージェントの設定

- ローカル・エージェントでHadoopジョブを実行するためのOracle Data Integrator Studioの構成

注意:
次の各項で説明する環境変数の多くは、すでにOracle Big Data Applianceに対して構成されています。(/opt/oracle/odiagent-version/agent_standalone/odi/agent/bin/HadoopEnvSetup.shにある)構成スクリプトを参照してください。

3.3.1 ファイル・データソースの設定

Hadoopのコンテキストでは、Hadoop分散ファイルシステム(HDFS)のファイルとローカル・ファイル(HDFS外のファイル)は区別されます。

データソースを定義する手順は次のとおりです。

1. ファイル・テクノロジに基づくデータ・サーバー・オブジェクトを作成します。

2. アクセスされるディレクトリごとに物理スキーマ・オブジェクトを作成します。

3. アクセスされるディレクトリごとに論理スキーマ・オブジェクトを作成します。

4. 各論理スキーマのモデルを作成します。

5. ファイルおよびワイルドカード名のパターンごとに1つ以上のデータストアを作成します。

6. HDFSファイルの場合、「JDBC URL」フィールドにHDFS名のノードを入力して、ファイル・テクノロジに基づくデータ・サーバー・オブジェクトを作成し、「JDBCドライバ名」は空のままにしておきます。たとえば、次のようになります。

hdfs://bda1node01.example.com:8020

このデータ・サーバー構成では、テスト接続はサポートされていません。

注意:
HDFSファイルに専用テクノロジは定義されていません。

3.3.2 Hiveデータソースの設定

Hiveシステムに接続するために、Oracle Data Integratorで次の手順を行う必要があります。Oracle Data IntegratorではJDBCを使用してHiveに接続します。

前提条件

Hiveテクノロジが標準のOracle Data Integratorテクノロジに含まれている必要があります。そうでない場合は、INSERT_UPDATEモードでxml-referenceディレクトリからテクノロジをインポートします。

Hive固有のフレックス・フィールドをすべて追加する必要があります。

Hiveデータソースを設定する手順は次のとおりです。

1. Hiveテクノロジに基づくデータ・サーバー・オブジェクトを作成します。

2. JDBC下に次の場所を設定します。
JDBCドライバ: weblogic.jdbc.hive.HiveDriver

JDBC URL: jdbc:weblogic:hive://<host>:<port>[; property=value[;...]]

たとえば、次のようになります。jdbc:weblogic:hive://localhost:10000;DatabaseName=default;User=default;Password=default

注意:
通常、ユーザーIDとパスワードは、ODIデータ・サーバーの対応するフィールドに入力されます。Hiveユーザーがパスワードを指定せずに定義される場合、「password=default」は、URLの一部として必要であり、データ・サーバーのパスワード・フィールドは空白のままにします。

3. フレックスフィールド下で次の設定を行います。
HiveメタストアURI: thrift://BDA:10000など

4. Hiveサーバーが稼働していることを確認します。

5. データ・サーバーへの接続をテストします。

6. 物理スキーマを作成します。物理スキーマ定義の両方のスキーマ・フィールドに、Hiveスキーマの名前を入力します。

7. 論理スキーマ・オブジェクトを作成します。

8. RKM Hiveをグローバル・オブジェクトまたはプロジェクトにインポートします。

9. 論理スキーマを指す、Hiveテクノロジ用の新規モデルを作成します。

10. RKM Hiveを使用して、カスタム・リバースエンジニアリング操作を実行します。

このプロセスの終了時に、列、パーティション化およびクラスタ化の詳細がフレックス・フィールド値として格納されたすべてのHive表が、Hiveデータ・モデルに含まれます。

3.3.3 HBaseデータソースの設定

HBaseシステムに接続するには、Oracle Data Integratorで次の手順を行う必要があります。

前提条件

HBaseテクノロジが標準のOracle Data Integratorテクノロジに含まれている必要があります。そうでない場合は、INSERT_UPDATEモードでxml-referenceディレクトリからテクノロジをインポートします。

HBase固有のフレックス・フィールドをすべて追加する必要があります。

HBaseデータソースを設定する手順は次のとおりです。

1. HBaseテクノロジに基づくデータ・サーバー・オブジェクトを作成します。
このテクノロジのデータ・サーバーでは、JDBCドライバおよびURLは使用できません。

2. フレックスフィールド下で次の設定を行います。
HBase定足数: HBaseインストールの定足数。例: localhost:2181

3. HBaseサーバーが稼働していることを確認します。

注意:
HBaseデータ・サーバーへの接続をテストすることはできません。

4. 物理スキーマを作成します。

5. 論理スキーマ・オブジェクトを作成します。

6. RKM HBaseをグローバル・オブジェクトまたはプロジェクトにインポートします。

7. 論理スキーマを指す、HBaseテクノロジ用の新規モデルを作成します。

8. RKM HBaseを使用して、カスタム・リバースエンジニアリング操作を実行します。

このプロセスの終了時に、すべてのHBase表およびその列とデータ型がHBaseデータ・モデルに含まれます。

3.3.4 セキュアなクラスタへの接続

Kerberos認証で保護されるHadoopクラスタでOracle Data Integratorエージェントを実行するには、追加の構成手順を行う必要があります。

Kerberos保護クラスタの使用手順:

1. Oracle Data Integratorエージェントが実行するOracle Big Data Applianceのnode04にログインします。

2. oracleユーザーの新しいKerberosチケットを作成します。次のコマンドを使用して、レルムをKerberosの実際のレルム名に置き換えます。
$ kinit oracle@realm

3. 次のコマンドラインを使用して、環境変数を設定します。使用する製品に合せて適切な値を代入します。
$ export KRB5CCNAME=Kerberos-ticket-cache-directory

$ export KRB5_CONFIG=Kerberos-configuration-file

$ export HADOOP_OPTS="$HADOOP_OPTS -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal. jaxp.DocumentBuilderFactoryImpl-Djava.security.krb5.conf=Kerberos-configuration-file"

この例では、構成ファイルの名前はkrb5*で、/tmp/oracle_krb/にあります。

$ export KRB5CCNAME=/tmp/oracle_krb/krb5cc_1000

$ export KRB5_CONFIG=/tmp/oracle_krb/krb5.conf

$ export HADOOP_OPTS="$HADOOP_OPTS -D javax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal. jaxp.DocumentBuilderFactoryImpl -D java.security.krb5.conf=/tmp/oracle_krb/krb5.conf"

4. 次のような構文を使用して、JDBC接続URLを再定義します。
jdbc:hive2://node1:10000/default;principal=HiveServer2-Kerberos-Principal

たとえば、次のようになります。

jdbc:hive2://bda1node01.example.com:10000/default;principal= hive/HiveServer2Host@EXAMPLE.COM

次のURLの『CDH5 Security Guide』の「HiveServer2 Security Configuration」も参照してください。

http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDH5/latest/CDH5-Security-Guide/cdh5sg_hiveserver2_security.html

5. サービスの混乱を防ぐため、oracleの使用に合せてKerberosチケットを定期的に更新します。
Oracle Big Data ApplianceでのKerberosの管理の詳細は、『Oracle Big Data Applianceソフトウェア・ユーザーズ・ガイド』を参照してください。

3.3.5 Hadoopジョブを実行するためのOracle Data Integratorエージェントの設定

Oracle Data Integratorエージェントを設定した後、Oracle Data Integrator Application Adapter for Hadoopで使用できるように構成します。

Oracle Data Integratorエージェントを設定する手順は次のとおりです。

1. HadoopをOracle Data Integratorエージェント・コンピュータにインストールします。
Oracle Big Data Applianceの場合、『Oracle Big Data Applianceソフトウェア・ユーザーズ・ガイド』でリモートHadoopクライアントの設定手順を参照してください。

2. HiveをOracle Data Integratorエージェント・コンピュータにインストールします。

3. SQOOPをOracle Data Integratorエージェント・コンピュータにインストールします。

4. ODIエージェント・コンピュータで、HadoopおよびHiveの次の基本環境変数を設定します。

表3-2 HadoopおよびHiveに必須の環境変数

環境変数

値

HADOOP_HOME

Hadoopディレクトリの場所。例: /usr/lib/hadoop

HADOOP_CONF

Hadoop構成ファイル(core-default.xml、core-site.xml、hdfs-site.xmlなど)の場所。例: /home/shared/hadoop-conf

HIVE_HOME

Hiveディレクトリの場所。例: /usr/lib/hive

HIVE_CONF

Hive構成ファイル(hive-site.xmlなど)の場所。例: /home/shared/hive-conf

HADOOP_CLASSPATH

$HIVE_HOME/lib/hive-metastore-*.jar:$HIVE_HOME/lib/libthrift-*.jar:$HIVE_HOME/lib/libfb*.jar:$HIVE_HOME/lib/hive-exec-*.jar:$HIVE_CONF

ODI_ADDITIONAL_CLASSPATH

$HIVE_HOME/lib/'*':$HADOOP_HOME/client/*:$HADOOP_CONF

ODI_HIVE_SESSION_JARS

$HIVE_HOME/lib/hive-contrib-*.jar:<ODI library directory>/wlhive.jar

- wlhive.jarの実際のパスは、ODIインストールのホームで決定できます。

- 必要に応じて、他のJARファイル(カスタムSerDes JARファイルなど)を含めます。これらのJARファイルは各Hive JDBCセッションに追加され、それによって各Hive MapReduceジョブに追加されます。

- JARのリストは":"で区切られ、ファイル名のワイルドカードを複数のファイルに評価することはできません。

5. HBase機能を使用する場合は、ODIエージェント・コンピュータで次の環境変数を設定します。HadoopおよびHiveの基本環境変数に加えて、これらの環境変数を設定する必要があります。

表3-3 (HadoopおよびHiveの基本環境変数以外の) HBaseに必須の環境変数

環境変数

値

HBASE_HOME

HBaseディレクトリの場所。例: /usr/lib/hbase

HADOOP_CLASSPATH

$HBASE_HOME/lib/hbase-*.jar:$HIVE_HOME/lib/hive-hbase-handler*.jar:$HBASE_HOME/hbase.jar

ODI_ADDITIONAL_CLASSPATH

$HBASE_HOME/hbase.jar

ODI_HIVE_SESSION_JARS

$HBASE_HOME/hbase.jar:$HBASE_HOME/lib/hbase-sep-api-*.jar:$HBASE_HOME/lib/hbase-sep-impl-*hbase*.jar:/$HBASE_HOME/lib/hbase-sep-impl-common-*.jar:/$HBASE_HOME/lib/hbase-sep-tools-*.jar:$HIVE_HOME/lib/hive-hbase-handler-*.jar

Oracle Loader for Hadoopを使用する手順は次のとおりです。

1. Oracle Loader for HadoopをOracle Data Integratorエージェント・システムにインストールします。『Oracle Big Data Connectorsユーザーズ・ガイド』のOracle Loader for Hadoopのインストールに関する項を参照してください。

2. Oracle SQL Connector for HDFS (OLH_OUTPUT_MODE=DP_OSCHまたはOSCH)を使用するには、まずこれをインストールする必要があります。『Oracle Big Data Connectorsユーザーズ・ガイド』のOracle SQL Connector for Hadoop Distributed File Systemの設定に関する項を参照してください。

3. ODIエージェント・コンピュータでOracle Loader for Hadoopの次の環境変数を設定します。HadoopおよびHiveの基本環境変数に加えて、これらの環境変数を設定する必要があります。

表3-4 (HadoopおよびHiveの基本環境変数以外の) Oracle Loader for Hadoopに必須の環境変数

環境変数

値

OLH_HOME

OLHインストールの場所。例: /u01/connectors/olh

OSCH_HOME

OSCHインストールの場所。例: /u01/connectors/osch

HADOOP_CLASSPATH

$OLH_HOME/jlib/*:$OSCH_HOME/jlib/*

OLHを使用するには、HADOOP_CLASSPATH内のHadoop jarをワイルドカードなしで手動で解決する必要があります。

ODI_OLH_JARS

Oracle Loader for Hadoopで使用されるカスタム入力形式、Hive、Hive SerDesなどに必要なすべてのJARファイルのカンマ区切りリスト。すべてのファイル名をワイルドカードなしで展開する必要があります。

たとえば、次のようになります。

$HIVE_HOME/lib/hive-metastore-0.10.0-cdh4.5.0.jar,$HIVE_HOME/lib/libthrift-0.9.0-cdh4-1.jar,$HIVE_HOME/lib/libfb303-0.9.0.jar

ODI_OLH_SHAREDLIBS

$OLH_HOME/lib/libolh12.so,$OLH_HOME/lib/libclntsh.so.12.1,$OLH_HOME/lib/libnnz12.so,$OLH_HOME/lib/libociei.so,$OLH_HOME/lib/libclntshcore.so.12.1,$OLH_HOME/lib/libons.so

ODI_ADDITIONAL_CLASSPATH

$OSCH_HOME/jlib/'*'

3.3.6 ローカル・エージェントでHadoopジョブを実行するためのOracle Data Integrator Studioの構成

Oracle Data Integrator Studioインストールのローカル・エージェントでHadoopジョブを実行するには、この前の項の設定手順を実行しますが、Oracle Data Integratorのdriversディレクトリではなく、userlibディレクトリにJARファイルをコピーします。たとえば、次のようになります。

Linux: $USER_HOME/.odi/oracledi/userlibディレクトリ。

Windows: C:\Users\<USERNAME>\AppData\Roaming\odi\oracledi\userlibディレクトリ

3.4 統合プロジェクトの設定

プロジェクトの設定では、標準の手順に従います。『Oracle Data Integratorでの統合プロジェクトの開発』を参照してください。

次のKMをグローバル・オブジェクトまたはプロジェクトにインポートします。

- IKM File to Hive (Load Data)

- IKM Hive Control Append

- IKM Hive Transform

- IKM File-Hive to Oracle (OLH-OSCH)

- IKM File-Hive to SQL (SQOOP)

- IKM SQL to Hive-HBase-File (SQOOP)

- IKM Hive to HBase Incremental Update (HBase-SerDe)

- LKM HBase to Hive (HBase-SerDe)

- CKM Hive

- RKM Hive

- RKM HBase

3.5 リバースエンジニアリングされたHiveおよびHBaseモデルからのOracle Data Integratorモデルの作成

この項には次のトピックが含まれます:

- モデルの作成

- Hive表のリバース・エンジニアリング

- HBase表のリバース・エンジニアリング

3.5.1 モデルの作成

HiveまたはHBaseをホストするテクノロジに基づくモデルや、HiveやHBaseの接続を構成したときに作成された論理スキーマに基づくモデルを作成するには、『Oracle Data Integratorでの統合プロジェクトの開発』で説明されている標準の手順に従います。

3.5.2 Hive表のリバース・エンジニアリング

Hive表およびビューのリバース・エンジニアリングには、RKM Hiveが使用されます。Hive RKMを使用してHive表のカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』の説明に従って、通常の手順を使用します。このトピックでは、Hive表に固有の情報の詳細を示します。

リバースエンジニアリング・プロセスでは、対応するHive表またはビューに対するデータストアが作成されます。データ・ストアをマッピングのソースまたはターゲットとして使用できます。

RKM Hive

RKMでは、次のメタデータ要素がリバースされます。

- Oracle Data IntegratorデータストアとしてのHive表とビュー。
「マスク」フィールドでリバース・マスクを指定し、リバースする表とビューを選択します。「リバース・エンジニアリング」タブの「マスク」フィールドで、リバースエンジニアリングされるオブジェクトが名前に基づいてフィルタ処理されます。「マスク」フィールドは空にできず、少なくともパーセント記号(%)を含める必要があります。

- Oracle Data Integrator属性としてのHive列およびそれらのデータ型。

- バケット、パーティション化、クラスタおよびソート列に関する情報は、Oracle Data Integratorデータ・ストアの各フレックス・フィールドまたは列メタデータで設定されます。

表3-5に、作成されるフレックス・フィールドを示します。

表3-5 リバースエンジニアリングされたHive表およびビューのフレックス・フィールド

オブジェクト

フレックス・フィールド名

フレックス・フィールド・コード

フレックス・フィールド・タイプ

説明

データストア

Hiveバケット

HIVE_BUCKETS

文字列

クラスタ化に使用されるバケットの数

列

Hiveパーティション列

HIVE_PARTITION_COLUMN

数値

パーティション化列はすべて"1"とマークされます。パーティション情報は、次のものから取得されます。

- マップされたソース列

- ターゲット列に指定された定数値

- ファイル名フラグメント

列

Hiveクラスタ列

HIVE_CLUSTER_COLUMN

数値

クラスタ列はすべて"1"とマークされます。

列

Hiveソート列

HIVE_SORT_COLUMN

数値

ソート列はすべて"1"とマークされます。

3.5.3 HBase表のリバース・エンジニアリング

HBase表のリバース・エンジニアリングには、RKM HBaseが使用されます。RKM HBaseを使用してHBase表のカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』の説明に従って、通常の手順を使用します。このトピックでは、HBase表に固有の情報の詳細を示します。

リバースエンジニアリング・プロセスでは、対応するHBase表のデータ・ストアが作成されます。データ・ストアをマッピングのソースまたはターゲットとして使用できます。

RKM HBase

RKM HBaseでは、次のメタデータ要素がリバースされます。

- Oracle Data IntegratorデータストアとしてのHBase表。
「マスク」フィールドでリバース・マスクを指定し、リバースする表を選択します。「リバース・エンジニアリング」タブの「マスク」フィールドで、リバースエンジニアリングされるオブジェクトが名前に基づいてフィルタ処理されます。「マスク」フィールドは空にできず、少なくともパーセント記号(%)を含める必要があります。

- Oracle Data Integrator属性としてのHBase列およびそれらのデータ型。

- Oracle Data Integrator属性としてのHBase一意行キー(key)。

表3-6に、RKM HBaseのオプションを示します。

表3-6 RKM HBaseのオプション

オプション

説明

SCAN_MAX_ROWS

表のリバース中にスキャンされる行の最大数を指定します。デフォルト値は10000です。

SCAN_START_ROW

スキャンを開始する行のキーを指定します。デフォルトでは、スキャンは1行目から開始されます。行キーは、org.apache.hadoop.hbase.util.Bytesのインスタンスを返すJava式として指定されます。例: Bytes.toBytes(?EMP000001?)

SCAN_STOP_ROW

スキャンを終了する行のキーを指定します。デフォルトでは、スキャンは表の最後の行まで、またはSCAN_MAX_ROWSに達するまで実行されます。行キーは、org.apache.hadoop.hbase.util.Bytesのインスタンスを返すJava式として指定されます。例: Bytes.toBytes(?EMP000999?)

SCAN_START_ROWが指定されている場合にのみ適用されます。

SCAN_ONLY_FAMILY

スキャンを、名前がこのパターンと一致する列ファミリに制限します。SQLライクなワイルドカードであるパーセント(%)およびアンダースコア(_)を使用できます。デフォルトでは、すべての列ファミリがスキャンされます。

LOG_FILE_NAME

ログ・ファイルのパスおよびファイル名を指定します。デフォルト・パスはユーザー・ホームで、デフォルト・ファイル名はreverse.logです。

表3-7に、作成されるフレックス・フィールドを示します。

表3-7 リバースエンジニアリングされたHBase表のフレックス・フィールド

オブジェクト

フレックス・フィールド名

フレックス・フィールド・コード

フレックス・フィールド・タイプ

説明

データストア

HBase定足数

HBASE_QUORUM

文字列

Zookeeperノードのカンマ区切りリスト。HBaseクライアントはこれを使用して、HBaseマスター・サーバーおよびHBaseリージョン・サーバーを検出します。

列

HBase記憶域タイプ

HBASE_STORAGE_TYPE

文字列

データ型が物理的にHBaseに格納される方法を定義します。

指定できる値は、BinaryおよびString (デフォルト)です。

3.6 マッピングの設計

Hive表をリバース・エンジニアリングして構成したら、次のいずれかのマッピング構成を選択できます。

- ファイルからHiveへのデータのロード

- HBaseからHiveへのデータのロード

- HiveからHBaseへのデータのロード

- SQLデータベースからHive、HBaseおよびファイルへのデータのロード

- Hive内のデータの検証と変換

- HiveおよびHDFSからOracleデータベースへのデータのロード

- HiveおよびHDFSからSQLデータベースへのデータのロード

3.6.1 ファイルからHiveへのデータのロード

ローカル・ファイル・システムまたはHDFSファイル・システムからHive表にデータをロードする手順は次のとおりです。

1. ローカル・ファイルおよびHDFSファイルのデータ・ストアを作成します。
ローカル・ファイル・データソースのリバース・エンジニアリングおよび構成の詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』を参照してください。

2. ソースとしてファイル・データ・ストアを、ターゲットとして対応するHive表を使用して、マッピングを作成します。マッピングの物理ダイアグラムで指定されているIKM File to Hive (Load Data)ナレッジ・モジュールを使用します。この統合ナレッジ・モジュールは、フラット・ファイルからHiveにデータをロードし、既存のデータを置換または追加します。

IKM File to Hive

IKM File to Hive (Load Data)では、次のものがサポートされます。

- 1つ以上の入力ファイル。複数のソース・ファイルをロードするには、ファイル・データストアのリソース名でワイルドカード文字としてアスタリスクまたは疑問符を入力します(例: webshop_*.log)。

- ファイル形式:

- 固定長

- デリミタ付き

- カスタマイズされた形式

- ロード・オプション:

- 即時または遅延ロード

- 上書きまたは追加

- Hive外部表

表3-8に、IKM File to Hive (Load Data)のオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-8 IKM File to Hiveのオプション

オプション

説明

CREATE_TARG_TABLE

ターゲット表を作成する場合は、このオプションを選択します。USE_STAGING_TABLEがfalseに設定されている場合、ターゲット表定義(特に行形式とファイル形式の詳細)が正しい場合にのみデータが正しく読み取られます。

TRUNCATE

ターゲット表/パーティションの内容を新しいデータで置き換える場合は、このオプションをtrueに設定します。そうしない場合、新しいデータはターゲット表に追加されます。TRUNCATEおよびUSE_STAGING_TABLEをfalseに設定した場合、すべてのソース・ファイル名が一意である必要があり、すでにターゲット表にロードされているデータ・ファイルと競合することは許されません。

FILE_IS_LOCAL

ソース・ファイルをローカル(現在のHadoopクラスタの外側)とみなすかどうかを定義します。このオプションをtrueに設定した場合、データ・ファイルは最初にHadoopクラスタにコピーされます。Hiveサーバーがローカルまたは共有のファイル・システムを介してこのファイルにアクセスできる必要があります。このオプションをfalseに設定した場合、データ・ファイルはHadoopクラスタに移動され、ソースの場所では使用できなくなります。ソース・ファイルがすでにHDFSに存在する場合、このオプションをfalseに設定すると、ファイル名の変更が行われるのみなので、操作は非常に高速で行われます。

このオプションは、EXTERNAL_TABLEがfalseに設定されている場合にのみ適用されます。

EXTERNAL_TABLE

ターゲット/ステージング表を外部で管理する表として宣言するかどうかを定義します。外部表でない場合、Hiveがすべてのデータ・ファイルを管理します。つまり、すべてのデータ・ファイルが<hive.metastore.warehouse.dir>/<table_name>に移動されます。外部表の場合、Hiveはいずれのファイルの移動も削除も行いません。ODIスキーマで指定されている場所からデータがロードされます。

このオプションをtrueに設定した場合、次のようになります。

- 物理データ・スキーマで指定されているディレクトリ内のすべてのファイルがロードされます。このため、ソース・データストアのリソース名のファイル名またはワイルドカード情報は無視されます。

- ディレクトリ構造およびファイル名は、表のHivesディレクトリ編成(パーティション化やクラスタ化など)に準拠している必要があります。

- ディレクトリおよびそのファイルはHDFSに存在する必要があります。

- Hive LOAD-DATA文は発行されないため、(ターゲット側の式を使用して)ファイルを特定のパーティションにロードすることはできません。

USE_STAGING_TABLE

中間ステージング表を作成するかどうかを定義します。

次の場合は、Hiveステージング表が必要です。

- ターゲット表がパーティション化されているが、データが複数のパーティションに分散されている

- ターゲット表がクラスタ化されている

- ターゲット表(パーティション)がソートされているが、入力ファイルはソートされていない

- ターゲット表がすでに定義されているが、ターゲット表定義がKMで必要な定義と一致していない

- ターゲット列順序がソース・ファイル列順序と一致していない

- マップされていないソース列が存在する

- マップされていない非パーティション・ターゲット列が存在する

- ソースが固定長ファイルであり、ターゲットに文字列以外の列が存在する

前述のいずれにも該当しない場合は、パフォーマンスを向上させるためにこのオプションをオフにできます。

DELETE_TEMPORARY_OBJECTS

統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時ファイルを保持する場合は、このオプションをNoに設定します。

DEFER_TARGET_LOAD

ステージング表として宣言されているファイルを今すぐターゲット表にロードするか、後で実行時にロードするかを定義します。指定できる値は、START、NEXT、ENDまたは<empty>です。

このオプションは、USE_STAGE_TABLEがtrueに設定されている場合にのみ適用されます。

このオプションの代表的な使用例は、複数のファイルが存在し、それぞれのファイルでデータの再配布/ソートが必要であり、インタフェースを何度もコールしてファイルを収集する場合です。たとえば、1つのパッケージでインタフェースを使用して別々の場所から(多数の小さな)ファイルを取得し、Oracle Data Integrator変数に保存されている場所をターゲット・パーティション列で使用するとします。この場合、最初のインタフェース実行でDEFER_TARGET_LOADがSTARTに設定され、その次のインタフェース実行でDEFER_TARGET_LOADがNEXTに設定され、最後のインタフェースでENDに設定されます。DEFER_ TARGET _LOADがSTART/NEXTに設定されたインタフェースはデータ・ファイルを(ターゲット表にはまだロードせずに) HDFSにロードするだけであり、クラスタへのファイル・アップロードを高速で行うためにこれらのインタフェースをパラレルで実行できます。

OVERRIDE_ROW_FORMAT

ステージング表(USE_STAGE_TABLEがtrueに設定されている場合)またはターゲット表(USE_STAGE_TABLEがfalseに設定されている場合)のHive行形式定義全体のオーバーライドを許可します。これには、行形式定義に使用されるテキストも含まれます。Apache Combined WebLogファイルの読取り例を次に示します。

ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe' WITH SERDEPROPERTIES ( "input.regex" = "([^ ]*) ([^ ]*) ([^ ]*) (-|\\[[^\\]]*\\]) ([^ \"]*|\"[^\"]*\") (-|[0-9]*) (-|[0-9]*) (\".*?\") (\".*?\") (\".*?\")", "output.format.string" = "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s %9$s %10$s" ) STORED AS TEXTFILE

ソース・データストアの列のリストは、正規表現の入力グループのリストと一致している(列の数が同じであり、データ型が適切である)必要があります。USE_STAGE_TABLEがfalseに設定されている場合、ターゲット列の数は、SerDeにより返される列の数(前述の例では正規表現のグループの数)と一致している必要があります。ソース列の数は無視されます(少なくとも1列をターゲットにマップする必要があります)。すべてのソース・データは列順序に従ってターゲット表構造にマップされ、SerDeの最初の列は最初のターゲット列にマップされ、SerDeの2番目の列は2番目のターゲット列にマップされます(以降も同様です)。USE_STAGE_TABLEがtrueに設定されている場合、ソース・データストアの列数はSerDeにより返される列数と同じである必要があります。マップされた列のデータのみが転送されます。

STOP_ON_FILE_NOT_FOUND

入力ファイルが見つからない場合にKMを停止するかどうかを定義します。

HIVE_COMPATIBILE

Hiveバージョンの互換性を指定します。このオプションで指定できる値は、0.7および0.8です。

- 0.7: 追加動作をシミュレートします。Hive 0.7 (CDH3)の場合はこれを使用する必要があります。

- 0.8: Hiveの追加機能を使用します(このほうがパフォーマンスがよくなります)。Hive 0.8 (CDH4)以上が必要です。

3.6.2 HBaseからHiveへのデータのロード

HBase表からHiveにデータをロードする手順は次のとおりです。

1. HiveにロードするHBase表のデータ・ストアを作成します。
HBaseデータソースのリバース・エンジニアリングおよび構成の詳細は、「HBaseデータソースの設定」を参照してください。

2. ソースとしてHBaseデータ・ストアを、ターゲットとして対応するHive表を使用して、マッピングを作成します。マッピングの物理ダイアグラムで指定されているLKM HBase to Hive (HBase-SerDe)ナレッジ・モジュールを使用します。このナレッジ・モジュールは、HiveからHBase表への読取りアクセスを提供します。

LKM HBase to Hive (HBase-SerDe)

LKM HBase to Hive (HBase-SerDe)では、次のものがサポートされます。

- 単一ソースのHBase表。

表3-9に、LKM HBase to Hive (HBase-SerDe)のオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-9 LKM HBase to Hive (HBase-SerDe)のオプション

オプション

説明

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

3.6.3 HiveからHBaseへのデータのロード

Hive表からHBaseにデータをロードする手順は次のとおりです。

1. HBaseにロードするHive表のデータ・ストアを作成します。
Hiveデータソースのリバース・エンジニアリングおよび構成の詳細は、「Hiveデータソースの設定」を参照してください。

2. ソースとしてHiveデータ・ストアを、ターゲットとして対応するHBase表を使用して、マッピングを作成します。マッピングの物理ダイアグラムで指定されているIKM Hive to HBase Incremental Update (HBase-SerDe)ナレッジ・モジュールを使用します。この統合ナレッジ・モジュールは、HiveからHBaseにデータをロードします。新しい行の挿入および既存の行の更新がサポートされています。

IKM Hive to HBase Incremental Update (HBase-SerDe)

IKM Hive to HBase Incremental Update (HBase-SerDe)では、次のものがサポートされます。

- Hiveのフィルタ、結合、データセット、変換および集計

- IKM Hive Transformにより生成されたインライン・ビュー

- IKM Hive Control Appendにより生成されたインライン・ビュー

表3-10に、IKM Hive to HBase Incremental Update (HBase-SerDe)のオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-10 IKM Hive to HBase Incremental Update (HBase-SerDe)のオプション

オプション

説明

CREATE_TARG_TABLE

HBaseターゲット表を作成します。

TRUNCATE

ターゲット表の内容を新しいデータで置換します。このオプションをfalseに設定した場合、新しいデータはターゲット表に追加されます。

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

HBASE_WAL

HBaseがデータ損失を回避するために使用するWrite-Ahead-Log (WAL)を有効または無効にします。パフォーマンスを向上させるためには、WALを無効にできます。

3.6.4 SQLデータベースからHive、HBaseおよびファイルへのデータのロード

SQLデータベースからHive、HBaseおよびファイル・ターゲットにデータをロードする手順は次のとおりです。

1. Hive、HBaseまたはファイル・ターゲットにロードするSQLソースのデータ・ストアを作成します。
SQLデータソースのリバース・エンジニアリングおよび構成の詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』を参照してください。

2. ソースとしてSQLソース・データ・ストアを、ターゲットとして対応するHBase表、Hive表またはHDFSファイルを使用して、マッピングを作成します。マッピングの物理ダイアグラムで指定されているIKM SQL to Hive-HBase-File (SQOOP)ナレッジ・モジュールを使用します。この統合ナレッジ・モジュールは、SQLソースからHive、HBaseまたはファイル・ターゲットにデータをロードします。SQOOPを使用して、Hive、HBaseおよびファイル・ターゲットにデータをロードします。SQOOPは、パラレルなJDBC接続を使用してデータをロードします。

IKM SQL to Hive-HBase-File (SQOOP)

IKM SQL to Hive-HBase-File (SQOOP)では、次のものがサポートされます。

- ステージングでのマッピング

- ステージングでの結合

- ステージングでのフィルタ式

- データセット

- ルックアップ

- 導出表

表3-11に、IKM SQL to Hive-HBase-File (SQOOP)のオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-11 IKM SQL to Hive-HBase-File (SQOOP)のオプション

オプション

説明

CREATE_TARG_TABLE

ターゲット表を作成します。このオプションは、ターゲットがHiveまたはHBaseである場合にのみ適用されます。

TRUNCATE

既存のターゲット表の内容を新しいデータで置換します。HiveおよびHBaseターゲットの場合、ターゲット・データが切り捨てられます。ファイル・ターゲットの場合、ターゲット・ディレクトリが削除されます。ファイル・ターゲットの場合は、このオプションをtrueに設定する必要があります。

SQOOP_PARALLELISM

並列度を指定します。より正確には、抽出に使用されるマッパー・プロセスの数を指定します。

SQOOP_PARALLELISMオプションを1より大きい値に設定した場合、SPLIT_BYオプションを定義する必要があります。

SPLIT_BY

パラレル抽出のためにソース・データをn個のチャンクに分割する際に使用されるターゲット列を指定します(nはSQOOP_PARALLELISM)。データ・チャンクのサイズを均等にするためには、均一に配布された値が分割列に含まれている必要があります。データ・チャンク境界を計算するためには、SELECT MIN(EMP.EMPNO), MAX(EMP.EMPNO) from EMPLOYEE EMPのような問合せが使用されます。余分な全表スキャンが行われないように、分割列に索引を付ける必要があります。

BOUNDARY_QUERY

パラレル抽出のためにソース・データをチャンクに分割する際に、分割列の最小値と最大値が取得されます(KMオプションSPLIT-BY)。状況によっては、これが最善の境界値ではなかったり、境界値を取得する最適な方法ではないこともあります。このような場合は、このKMオプションを、1つの行と2つの列(分割列に使用される最小値と最大値)を返すSQL問合せに設定できます。この範囲は、パラレル実行のためにSQOOP_PARALLELISMチャンクに分割されます。ハードコードされたOracleソース範囲の例:

SELECT 1000, 2000 FROM DUAL

コンテキストの独立性を保つため、通常の表名はodiRef.getObjectNameコールを介して挿入する必要があります。たとえば、次のようになります。

SELECT MIN(EMPNO), MAX(EMPNO) FROM <%=odiRef.getObjectName("EMP")%>

TEMP_DIR

一時ファイルの格納に使用するディレクトリ(sqoopスクリプト、stdout、stderrリダイレクトなど)を指定します。このオプションを空白のままにした場合、次に示すシステムのデフォルトの一時ディレクトリが使用されます。

<?=System.getProperty("java.io.tmp")?>

MAPRED_OUTPUT_BASE_DIR

SQOOPにより一時ファイル用のサブディレクトリが作成される先のhdfsディレクトリを指定します。作業表に似た名前のサブディレクトリが、一時データを格納するためにここに作成されます。

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

USE_HIVE_STAGING_TABLE

データをHiveターゲット表にロードする前にHive作業表にロードします。このオプションをfalseに設定した場合、データはターゲット表に直接ロードされます。

このオプションをfalseに設定できるのは、次のすべての条件に該当する場合のみです。

- すべてのターゲット列がマップされている場合

- 既存のHive表で標準のHive行セパレータ(\n)および列デリミタ(\01)が使用されている場合

このオプションをfalseに設定すると、余分なデータ転送手順がなくなるために、パフォーマンスが向上します。

このオプションは、ターゲット・テクノロジがHiveである場合にのみ適用されます。

USE_GENERIC_JDBC_CONNECTOR

ターゲット・テクノロジ用のコネクタが使用できない場合に汎用JDBCコネクタを使用するかどうかを指定します。

SQOOPには、特定のテクノロジに対する固有のコネクタが用意されています。これらのコネクタによってSQL方言が処理され、パフォーマンスが最適化されます。各ターゲット・テクノロジ用のコネクタが存在する場合は、このコネクタを使用する必要があります。存在しない場合は、汎用JDBCコネクタを使用できます。

EXTRA_HADOOP_CONF_PROPERTIES

オプションの汎用Hadoopプロパティ。

EXTRA_SQOOP_CONF_PROPERTIES

オプションのSQOOPプロパティ。

EXTRA_SQOOP_CONNECTOR_CONF_PROPERTIES

オプションのSQOOPコネクタ・プロパティ。

3.6.5 Hive内のデータの検証と変換

データがHiveにロードされた後は、次のナレッジ・モジュールを使用してデータを検証および変換できます。

3.6.5.1 IKM Hive Control Append

このナレッジ・モジュールは、データを検証および制御し、切捨て/挿入(追加)モードでHiveターゲット表に統合します。無効なデータはエラー表に分離され、再利用できます。IKM Hive Control Appendでは、このナレッジ・モジュールまたはIKM Hive Transformを使用するインライン・ビュー・マッピングがサポートされています。

表3-12にオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-12 IKM Hive Control Appendのオプション

オプション

説明

FLOW_CONTROL

フロー制御をアクティブにします。

RECYCLE_ERRORS

以前の制御から拒否されたデータをリサイクルします。

STATIC_CONTROL

ターゲット・データの挿入または更新後にターゲット表を制御します。

CREATE_TARG_TABLE

ターゲット表を作成します。

TRUNCATE

ターゲット表の内容を新しいデータで置換します。このオプションをtrueに設定すると、パフォーマンスが向上します。

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

HIVE_COMPATIBILE

Hiveバージョンの互換性を指定します。このオプションで指定できる値は、0.7および0.8です。

- 0.7: 追加動作をシミュレートします。Hive 0.7 (CDH3)の場合はこれを使用する必要があります。

- 0.8: Hiveの追加機能を使用します(このほうがパフォーマンスがよくなります)。Hive 0.8 (CDH4)以上が必要です。

3.6.5.2 CKM Hive

このナレッジ・モジュールは、Hive表のデータ整合性をチェックします。Hiveデータ・ストアの制約の妥当性を検証し、無効なレコードをエラー表に転送します。CKM Hiveは、静的制御およびフロー制御に使用できます。格納されるデータに対するこれらの制約を定義する必要もあります。

表3-13に、このチェック・ナレッジ・モジュールのオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-13 CKM Hiveのオプション

オプション

説明

DROP_ERROR_TABLE

実行前にエラー表を削除します。このオプションをYESに設定した場合、ターゲット表に対する制御が実行されるたびに、エラー表が削除されます。つまり、以前の制御操作中に拒否、特定および格納されたレコードはすべて失われます。それ以外の場合、以前の拒否は保持されます。エラー表の他に、<error table>_tmpという名前の表も削除されます。

HIVE_COMPATIBILE

Hiveバージョンの互換性を指定します。このオプションで指定できる値は、0.7および0.8です。

- 0.7: 追加動作をシミュレートします。Hive 0.7 (CDH3)の場合はこれを使用する必要があります。

- 0.8: Hiveの追加機能を使用します(このほうがパフォーマンスがよくなります)。Hive 0.8 (CDH4)以上が必要です。

3.6.5.3 IKM Hive Transform

このナレッジ・モジュールは変換を実行します。シェル・スクリプトを使用してデータを変換してから、置換モードを使用してそれをHiveターゲット表に統合します。ナレッジ・モジュールはインライン・ビュー・マッピングをサポートしており、IKM Hive Control Appendのインライン・ビューとして使用できます。

変換スクリプトでは、ソース・データ・ストアで定義されている順序で入力列を読み取る必要があります。マップされたソース列のみが変換に送られます。変換スクリプトで、ターゲット・データストアで定義されている順に出力列を提供する必要があります。

表3-14に、この統合ナレッジ・モジュールのオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-14 IKM Hive Transformのオプション

オプション

説明

CREATE_TARG_TABLE

ターゲット表を作成します。

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

TRANSFORM_SCRIPT_NAME

変換スクリプトのファイル名を定義します。この変換スクリプトを使用して、入力データが出力構造に変換されます。次のようなローカル・パスとHDFSパスの両方がサポートされています。

ローカル・スクリプトの場所: file:///tmp/odi/script1.pl

HDFSスクリプトの場所: hdfs://namenode:nnPort/tmp/odi/script1.pl

次の要件が満たされていることを確認してください。

- パス/ファイルには、ODIエージェントとHiveサーバーの両方からアクセスできる必要があります。スクリプトを起動する結果のMRジョブを実行するのはHiveサーバーなので、Hiveサーバーに読取りアクセスが必要です。

- TRANSFORM_SCRIPTが設定されている(ODIでマッピング実行時にスクリプト・ファイルが作成される)場合、HDFS Java APIを使用してスクリプト・ファイルを記述するのはODIエージェントなので、ODIエージェントでパス/ファイルが書込み可能になっている必要があります。

KMオプションTRANSFORM_SCRIPTが設定されている場合、次の記述を構成の際の参考にしてください。

- HDFSスクリプトの場所の場合:
作成されたスクリプト・ファイルはODIエージェント・ユーザーにより所有され、所有側ディレクトリのグループを受け取ります。詳細は、『Hadoop Hdfs Permissions Guide』を参照してください。HDFSスクリプトに対する前述の2つの要件を満たすための標準構成は、HDFSスクリプト・ディレクトリのグループにODIエージェント・ユーザー(oracleの場合)およびHiveサーバー・ユーザー(hiveの場合)が含まれるようにすることです。グループhadoopにoracleおよびhiveが含まれている場合、次に示すサンプル・コマンドでは、HDFSスクリプト・ディレクトリの所有権が調整されます。

logon as hdfs user hdfs dfs -chown oracle:hadoop /tmp/odi/myscriptdir

- ローカル・スクリプトの場所の場合:
作成されたスクリプト・ファイルはODIエージェント・ユーザーにより所有され、ODIエージェント・ユーザーのデフォルト・グループを受け取ります(スクリプト・ディレクトリに対してSGIDが設定されていない場合)。スティッキー・グループ・ビットが設定されている場合、ファイルはかわりにスクリプト・ディレクトリのグループにより所有されます。ローカル・スクリプトに対する前述の2つの要件を満たすための標準構成は、SGIDを使用するHDFS構成と同様です。

chown oracle:hadoop /tmp/odi/myscriptdir chmod g+s /tmp/odi/myscriptdir

TRANSFORM_SCRIPT

変換スクリプトの内容を定義します。この変換スクリプトを使用して、入力データが出力構造に変換されます。空白のままにした場合、TRANSFORM_SCRIPT_NAMEで指定されたファイルがすでに存在している必要があります。空白にしない場合、スクリプト・ファイルが作成されます。

スクリプトの例(1対1の変換): #! /usr/bin/csh -f cat

マップされたすべてのソース列が、タブ区切りデータとして、stdinを介してこのスクリプトにスプールされます。続いて、このunixスクリプトによってデータが変換され、データがstdoutにタブ区切りデータとして書き出されます。このスクリプトでは、ターゲット列と同じ数の出力列を提供する必要があります。

TRANSFORM_SCRIPT_MODE

8進表記で先頭にゼロが付く、スクリプト・ファイルに対するUnix/HDFSファイル権限。たとえば、所有者およびグループに対する完全な権限は、0770です。

警告: 0777のような広範囲の権限を使用すると、セキュリティ・リスクが発生します。

ディレクトリ権限の詳細は、TRANSFORM_SCRIPT_NAMEのKMオプションの説明も参照してください。

PRE_TRANSFORM_DISTRIBUTE

ナレッジ・モジュールによる変換スクリプト適用前のデータの分散を可能にするソース列名のカンマ区切りリスト(オプション)を提供します。

PRE_TRANSFORM_SORT

ナレッジ・モジュールによる変換スクリプト適用前のデータのソートを可能にするソース列名のカンマ区切りリスト(オプション)を提供します。

POST_TRANSFORM_DISTRIBUTE

ナレッジ・モジュールによる変換スクリプト適用後のデータの分散を可能にするターゲット列名のカンマ区切りリスト(オプション)を提供します。

POST_TRANSFORM_SORT

ナレッジ・モジュールによる変換スクリプト適用後のデータのソートを可能にするターゲット列名のカンマ区切りリスト(オプション)を提供します。

3.6.6 HiveおよびHDFSからOracleデータベースへのデータのロード

IKM File-Hive to Oracle (OLH-OSCH)は、Oracle Loader for Hadoopを使用してHDFSファイルまたはHiveソースからOracleデータベース・ターゲットにデータを統合します。ナレッジ・モジュールは、マッピング構成および選択されたオプションを使用して、適切なOracle Databaseターゲット・インスタンスを生成します。HiveとHadoopのバージョンは、Oracle Loader for Hadoopの要件に従う必要があります。

関連資料:

- HadoopおよびHiveの必須バージョンについては、『Oracle Big Data Connectorsユーザーズ・ガイド』のOracle Loader for Hadoopの設定に関する項を参照してください。

- 必要な環境変数の設定については、「Hadoopジョブを実行するためのOracle Data Integratorエージェントの設定」を参照してください。

表3-15に、この統合ナレッジ・モジュールのオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-15 IKM File - Hive to Oracle (OLH-OSCH)

オプション

説明

OLH_OUTPUT_MODE

HadoopデータをOracleにロードする方法を指定します。指定できる値は、JDBC、OCI、DP_COPY、DP_OSCHおよびOSCHです。

- JDBC出力モード: 多数のダイレクト・インサートJDBC接続を使用してデータが挿入されます。まれに、JDBCモードでは、Hadoopでタスクの再開が試行されるためにターゲット表でレコードが重複することがあります。

- OCI出力モード: ダイレクト・パス・モードで多数のダイレクト・インサートOCI接続を使用してデータが挿入されます。USE_ORACLE_STAGINGがfalseに設定されている場合、ターゲット表をパーティション化する必要があります。USE_ORACLE_STAGINGがtrueに設定されている場合、FLOW_TABLE_OPTIONSで明示的にパーティション化を指定する必要があります(例: "PARTITION BY HASH(COL1) PARTITIONS 4")。まれに、OCIモードでは、Hadoopでタスクの再開が試行されるためにターゲット表でレコードが重複することがあります。

- DP_COPY出力モード: OLHによって多数のDataPumpエクスポート・ファイルが作成されます。これらのファイルは"Hadoop fs -copyToLocal"コマンドによって、EXT_TAB_DIR_LOCATIONで指定されたローカル・パスに転送されます。Oracle Databaseエンジンがこのパスにアクセスできる必要があります。コピー・ジョブが完了すると、ターゲット・データベースで外部表が定義され、それによりEXT_TAB_DIR_LOCATIONからファイルへのアクセスが行われます。

- DP_OSCH出力モード: OLHによって多数のDataPumpエクスポート・ファイルが作成されます。エクスポート・フェーズ後、ターゲット・データベースに外部表が作成され、それによりOSCHを介したこれらの出力ファイルへの直接アクセスが行われます。Oracle Databaseエンジンがこのパスにアクセスできる必要があります。コピー・ジョブが完了すると、ターゲット・データベースで外部表が定義され、それによりEXT_TAB_DIR_LOCATIONからファイルへのアクセスが行われます。

- OSCH出力モード: OSCHモードのロードでは、OLHは使用されません。ODIによって、ターゲット・データベースに外部表が作成され、これによりOSCHを介した入力ファイルへのアクセスが行われます。読取りできるのはデリミタ付きファイルおよび固定長ファイルのみです。OLHの前処理は行われないため、Hiveまたはカスタム入力形式(RegexInputFormatなど)からのロードはサポートされません。

REJECT_LIMIT

Oracle Loader for Hadoopおよび外部表のエラーの最大数を指定します。たとえば、UNLIMITEDを指定すると、すべてのエラーを除外します。整数値(10を指定すると、10件の拒否を許可): この値は、Oracle Loader for Hadoopのジョブ定義および外部表定義で使用されます。

CREATE_TARG_TABLE

ターゲット表を作成します。

TRUNCATE

ターゲット表の内容を新しいデータで置換します。

DELETE_ALL

ターゲット表内のすべてのデータを削除します。

USE_HIVE_STAGING_TABLE

Oracle Loader for Hadoopで抽出が実行される前に、Hiveソース・データをマテリアライズします。このオプションをfalseに設定した場合、Oracle Loader for Hadoopは直接Hiveソース・データにアクセスします。このオプションをfalseに設定できるのは、次のすべての条件に該当する場合のみです。

- 単一ソース表のみ

- 変換、フィルタ、結合なし

- データセットなし

このオプションをfalseに設定すると、余分なデータ転送手順がなくなるために、パフォーマンスが向上します。

このオプションは、ソース・テクノロジがHiveである場合にのみ適用されます。

USE_ORACLE_STAGING_TABLE

中間Oracleデータベース・ステージング表を使用します。

抽出されたデータは、外部表によってOracleで使用可能になります。USE_ORACLE_STAGING_TABLEがtrueに設定されている場合(デフォルト)、外部表は一時(I$)表として作成されます。次に、このI$表データがターゲット表に挿入されます。このオプションをfalseに設定できるのは、次のすべての条件に該当する場合のみです。

- OLH_OUTPUT_MODEがJDBCまたはOCIに設定されている場合

- すべてのソース列がマップされている場合

- すべてのターゲット列がマップされている場合

- ターゲット側のマッピング式がない場合

このオプションをfalseに設定すると、余分なデータ転送手順がなくなるためにパフォーマンスが向上しますが、Oracle Loader for Hadoopによって複数のトランザクションでデータがロードされるため、部分データがターゲット表にロードされる可能性があります。

EXT_TAB_DIR_LOCATION

外部表のファイル・システム・パスを指定します。以下の点に注意する必要があります。

- OLH_OUTPUT_MODE = DP_*|OSCHの場合にのみ適用されます。

- OLH_OUTPUT_MODE = DP_*の場合: このパスには、ODIエージェントとターゲット・データベース・エンジンの両方からアクセスできる必要があります。

- OLH_OUTPUT_MODE = DP_*の場合: 外部ディレクトリ・オブジェクトの名前はI$表の名前です。

- OLH_OUTPUT_MODE = DP_COPYの場合: ODIエージェントはhadoop-fsコマンドを使用して、dpファイルをこのディレクトリにコピーします。

- OLH_OUTPUT_MODE = DP_*|OSCHの場合: このパスには外部表のlog/bad/dscファイルが含まれます。

- ODIエージェントは、クリーンアップ時にこのディレクトリからすべてのファイルを削除してから、OLH/OSCHを起動します。

TEMP_DIR

一時ファイルの格納に使用するディレクトリ(sqoopスクリプト、stdout、stderrリダイレクトなど)を指定します。このオプションを空白のままにした場合、次に示すシステムのデフォルトの一時ディレクトリが使用されます。

<?=System.getProperty("java.io.tmp")?>

MAPRED_OUTPUT_BASE_DIR

Oracle Loader for Hadoopジョブで一時ファイル/datapump出力ファイル用のサブディレクトリが作成される先のHDFSディレクトリを指定します。

FLOW_TABLE_OPTIONS

作成時に統合表の属性を指定するもので、パフォーマンス向上のために使用します。このオプションは、デフォルトでNOLOGGINGに設定されます。このオプションは空のままにしておくこともできます。

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

OVERRIDE_INPUTFORMAT

デフォルトでは、InputFormatクラスはソースのデータストア/テクノロジ(DelimitedTextInputFormatまたはHiveToAvroInputFormat)から導出されます。このオプションを使用すると、ユーザーはカスタムInputFormatのクラス名を指定できます。OLH_OUTPUT_MODE=OSCHと一緒に使用することはできません。

たとえば、Webログ・ファイルのようなカスタム・ファイル形式を読み取る場合、値oracle.hadoop.loader.lib.input.RegexInputFormatを割り当てることによりOLH RegexInputFormatを使用できます。

正規表現の指定方法の詳細は、KMオプションの「EXTRA_OLH_CONF_PROPERTIES」を参照してください。

EXTRA_OLH_CONF_PROPERTIES

特に、カスタムInputFormatを使用する場合(詳細はKMオプション「OVERRIDE_INPUTFORMAT」を参照)、InputFormatに追加の構成パラメータが必要となることがあります。これらは、OLH構成ファイル内に提供されています。このKMオプションを使用すると、追加のプロパティをOLH構成ファイルに追加できます。OLH_OUTPUT_MODE=OSCHと一緒に使用することはできません。

たとえば、apache Webログ・ファイル形式のロードで、カスタム・ファイル形式の読取りにOLH RegexInputFormatを使用する場合、このKMオプションにより正規表現およびその他の解析詳細を指定します。

<property> <name>oracle.hadoop.loader.input.regexPattern</name> <value>([^ ]*) ([^ ]*) ([^ ]*) (-|\[[^\]]*\]) ([^ \"]*|\"[^\"]*\") (-|[0-9]*) (-|[0-9]*) (\".*?\") (\".*?\") (\".*?\")</value> <description>RegEx for Apache WebLog format</description> </property>

3.6.7 HiveおよびHDFSからSQLデータベースへのデータのロード

IKM File-Hive to SQL (SQOOP)は、SQOOPを使用してHDFSファイルまたはHiveソースからSQLデータベースにデータを統合します。

IKM File-Hive to SQL (SQOOP)

IKM File-Hive to SQL (SQOOP)では、次のものがサポートされます。

- Hiveのフィルタ、結合、データセット、変換および集計

- IKM Hive Control Appendにより生成されたインライン・ビュー

- IKM Hive Transformにより生成されたインライン・ビュー

- LKM HBase to Hive (HBase SerDe)を使用するHive-HBaseソース表

- ファイル・ソース・データ(デリミタ付きファイル形式のみ)

表3-16に、この統合ナレッジ・モジュールのオプションを示します。詳細は、ナレッジ・モジュールを参照してください。

表3-16 IKM File-Hive to SQL (SQOOP)

オプション

説明

CREATE_TARG_TABLE

ターゲット表を作成します。

TRUNCATE

ターゲット・データストアの内容を新しいデータで置換します。このオプションをfalseに設定した場合、新しいデータはターゲット・データストアに追加されます。

DELETE_ALL

ターゲット・データストア内のすべての行を削除します。

SQOOP_PARALLELISM

並列度を指定します。より正確には、SQOOPエクスポート時に使用されるマッパーの数と、パラレルJDBC接続の数を指定します。

USE_TARGET_STAGING_TABLE

デフォルトでは、ソース・データはターゲット側のステージング表にステージングされてから、ターゲット表に移動されます。このオプションをfalseに設定した場合、SQOOPによってソース・データが直接ターゲット表にロードされるため、追加のデータ転送手順がなくなることでパフォーマンスは向上し、ターゲットRDBM内の表領域の必要性が少なくなります。

ファイル・ソースの設定でこのオプションをfalseに設定できるのは、次のすべての条件に該当する場合のみです。

- すべてのソース列をマップする必要がある場合

- ソース列とターゲット列の順序が同じである場合

- 最初のファイル列を最初のターゲット列にマップする必要がある場合

- マッピングの差分がない場合

- 1対1のマッピングのみの場合(式がない)

以下の点に注意する必要があります。

- SQOOPは複数のライタを使用し、それぞれがターゲットに対する独自のJDBC接続を持ちます。各ライタは、複数のトランザクションを使用してデータを挿入します。つまり、USE_TARGET_STAGING_TABLEがfalseに設定されている場合、ターゲット表に対する変更はアトミックでなくなり、ライタが失敗するとターゲット表が部分的に更新されることがあります。

- SQOOP用のTeradataコネクタは常に、ロード中に追加のステージング表を作成します。このコネクタ・ステージング表は、KMオプションとは無関係です。

USE_GENERIC_JDBC_CONNECTOR

ターゲット・テクノロジ用のコネクタが使用できない場合に汎用JDBCコネクタを使用するかどうかを指定します。

SQOOPには、特定のテクノロジに対する固有のコネクタが用意されています。これらのコネクタによってSQL方言が処理され、パフォーマンスが最適化されます。各ターゲット・テクノロジ用のコネクタが存在する場合は、このコネクタを使用する必要があります。存在しない場合は、汎用JDBCコネクタを使用できます。

FLOW_TABLE_OPTIONS

ターゲット側の作業表を作成する際に、RDBMS固有の表オプションを使用すると、パフォーマンスを向上させることができます。デフォルトでは、このオプションは空であり、ナレッジ・モジュールは次の表オプションを使用します。

- Oracleの場合: NOLOGGING

- DB2の場合: NOT LOGGED INITIALLY

- Teradataの場合: no fallback, no before journal, no after journal

明示的な値を指定すると、これらのデフォルトがオーバーライドされます。

TEMP_DIR

一時ファイルの格納に使用するディレクトリ(sqoopスクリプト、stdout、stderrリダイレクトなど)を指定します。このオプションを空白のままにした場合、次に示すシステムのデフォルトの一時ディレクトリが使用されます。

<?=System.getProperty("java.io.tmp")?>

MAPRED_OUTPUT_BASE_DIR

SQOOPにより一時ファイル用のサブディレクトリが作成される先のHDFSディレクトリを指定します。作業表に似た名前のサブディレクトリが、一時データを格納するためにここに作成されます。

DELETE_TEMPORARY_OBJECTS

データ統合後に表、ファイル、スクリプトなどの一時オブジェクトを削除します。デバッグなどに使用できるよう一時オブジェクトを保持する場合は、このオプションをNOに設定します。

TERADATA_PRIMARY_INDEX

ターゲット表の主索引。Teradataは主索引を使用して、データを複数のAMPに分散します。データを均等に分散して処理パフォーマンスを最大にするには、カーディナリティが高い(個別値が多数存在する)主索引を選択することが重要です。主索引を選択する際は、Teradataの推奨事項に従ってください。

このオプションは、Teradataターゲットにのみ適用されます。

TERADATA_FLOW_TABLE_TYPE

Teradataフロー表のタイプ(SETまたはMULTISET)。

このオプションは、Teradataターゲットにのみ適用されます。

TERADATA_OUTPUT_METHOD

Teradataコネクタがデータをロードする方法を指定します。有効な値は次のとおりです。

- batch.insert: バッチ処理されたプリペアド文を使用する複数のJDBC接続(最初は最も簡単)

- multiple.fastload: 複数のFastLoad接続

- internal.fastload: 単一の調整済FastLoad接続(パフォーマンスは最も高い)

このオプションは、Teradataターゲットにのみ適用されます。

EXTRA_HADOOP_CONF_PROPERTIES

オプションの汎用Hadoopプロパティ。

EXTRA_SQOOP_CONF_PROPERTIES

オプションのSQOOPプロパティ。

EXTRA_SQOOP_CONNECTOR_CONF_PROPERTIES

オプションのSQOOPコネクタ・プロパティ。

4 JD Edwards World

この章では、Oracle Data IntegratorでのJD Edwards Worldナレッジ・モジュールの使用方法について説明します。

この章の内容は次のとおりです。

- 4.1項「概要」

- 4.2項「インストールおよび構成」

- 4.3項「トポロジの設定」

- 4.4項「統合プロジェクトの設定」

- 4.5項「モデルの作成およびリバース・エンジニアリング」

- 4.6項「マッピングの設計」

4.1 概要

JD Edwards (JDE) Worldは、は、ビジネス価値、標準ベースのテクノロジおよび業界での豊富な経験を結合し、総所有コストの低いビジネス・ソリューションを実現する、包括的なERPソフトウェアの統合アプリケーション・スイートです。

4.1.1 概念

Oracle Data IntegratorのJDEナレッジ・モジュールは、次のような目的で、JDE Worldの成熟したデータベースレベルの統合メソッドを使用しています。

- JDE Worldデータ構造のリバース・エンジニアリング

- JDE Worldからのデータの読取り(ダイレクト・データベース統合)

- JDE WorldアプリケーションへのZ表によるデータの書込み(インタフェース表の統合)

4.1.2 ナレッジ・モジュール

Oracle Data Integratorには、JDE Worldデータを処理するためのナレッジ・モジュールが用意されています。これらのリストを表4-1に示します。これらの特定のJDE World KMでは、Oracle Data IntegratorによるJDE Worldのプラットフォームと任意のデータベース・アプリケーションとの接続性および統合を提供しています。

表4-1 JDEナレッジ・モジュール

ナレッジ・モジュール

説明

RKM JDE World

DB2 iSeries JDBCドライバ(jt400)を介して、DB2 iSeriesデータベースにインストールされたJDE Worldから、表やインタフェース表などのアプリケーション・オブジェクトのメタデータをリバース・エンジニアリングします。

RKM JDE World (JDE World JDBC Driver)

JDE World JDBC Driverを介して、DB2 iSeriesデータベースにインストールされたJDE Worldから、表やインタフェース表などのアプリケーション・オブジェクトのメタデータをリバース・エンジニアリングします。

IKM JDE World Control Append

任意のソースからのデータをJDE Worldに統合します。制御追加モードでZ表内のデータを統合します。

- データは制御可能: 無効なデータはエラー表に分離され、再利用できます。

- KMでは、RPGプログラムを使用してJDE Worldへの統合を実行します。

4.2 インストールおよび構成

JDE Worldデータでの作業を開始する前に、この項の情報を必ず読んでください。

- システム要件および動作要件

- テクノロジ固有の要件

- 接続性要件

4.2.1 システム要件および動作要件

インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。

サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。

http://www.oracle.com/technology/products/oracle-data-integrator/index.html

4.2.2 テクノロジ固有の要件

この項では、JDE Worldナレッジ・モジュールのテクノロジ固有の要件をリストします。

RKM JDE World

- jt400.jar - このjarファイルは、~/.odi/oracledi/userlibフォルダに置く必要があります。

RKM JDE World (JDE World JDBC Driver)

- JDEWorldJDBC.jar - このJDE World JDBCドライバ・ファイルは、~/.odi/oracledi/userlibフォルダに置く必要があります。

IKM JDE World Control Append

RPGプログラムには次のファイルが必要です。

- JDEWorldJDBC.jar - このJDE World JDBCドライバ・ファイルは、~/.odi/oracledi/userlibフォルダに置く必要があります。
フォルダに関する詳細は、Oracle Data Integratorのインストールと構成の「追加ドライバとオープン・ツールの追加」を参照してください。

- BaseJar.jar - このjarファイルは、~/.odi/oracledi/userlibフォルダに置く必要があります。

- config.xml - この構成ファイルはODI_HOME/odi/studio/binフォルダに置く必要があります。

注意:
この3つのファイルはODIと一緒に提供され、ODI_HOME/odi/misc/jde-worldディレクトリにあります。

ヒント:
ODI_HOME/odi/misc/jde-worldディレクトリには、jde.propertiesファイルもあります。このプロパティ・ファイルは、IKM JDE World Control AppendでJDE_SECURITY_FILEオプションを使用している場合に利用できるテンプレートです。このオプションの詳細は、4.6.2項「JDEでのデータの統合」を参照してください。このテンプレートを使用する際には、次のことを実行する必要があります。

- プロパティ・ファイルの名前の変更

- 接続情報(JD Edwards Worldのユーザー、パスワード、環境およびアドレス)の入力
接続に関するオプションの詳細は、表4-2を参照してください。また、表の下にはセキュリティ・ファイルの例が記載されています。

- Oracle Data Integrator Studioまたはスタンドアロン・エージェントのみがアクセス可能なディレクトリへのテンプレートの移動。プロパティ・ファイルにはユーザー名とパスワードが含まれているため、このディレクトリには他のユーザーはだれもアクセスできないようにしてください。

4.2.3 接続性要件

Oracle Data Integratorは、JDBC接続を使用して、JDE Worldデータをホストするデータベースに接続します。

RKM JDE World (JDE World JDBC Driver)は、JDE Worldからメタデータ情報を抽出するために、JDE World JDBCドライバを使用してデータベースにアクセスします。JDE World JDBCドライバを使用すると、JDE Worldソフトウェアに組み込まれたセキュリティと柔軟性のレベルを維持しながら、非JDE WorldアプリケーションがJDE Worldデータにアクセスできるようになります。

IKM JDE World Control AppendおよびRKM JDE Worldの両方で、標準のIBM Toolbox for Javaドライバ(jt400.jar)が使用され、ここで、SQL問合せを実行してデータベースに挿入またはアクセスし、JDE Worldのメタデータ情報を抽出します。

注意:
JDBC URLでは、*SQL命名規則が使用されます。たとえば、jdbc:as400://195.10.10.13;translate binary=true;naming=systemのように、命名規則をsystemに指定しないでください。
アプリケーションが*SYS専用に設計されている場合を除いて、*SQLを常に使用する必要があります。Oracle Data Integratorでは、デフォルトで*SQL命名規則が使用されます。

IBM DB2 for iSeriesとのJDBC接続性の詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のIBM DB2 for iSeriesの接続性要件に関する項を参照してください。

4.3 トポロジの設定

この手順では、データ・サーバー、およびJDE Worldデータの格納に使用される物理スキーマと論理スキーマを、Oracle Data Integratorでで宣言します。

4.3.1 データ・サーバーの作成

JDE World表は、IBM DB2 for iSeriesライブラリに格納されています。

RKM JDE Worldを使用している場合:

『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のDB2/400データ・サーバーの作成に関する項に記載されている標準の手順で、IBM DB2 for iSeriesテクノロジ用のデータ・サーバーを作成します。

注意:
データ・サーバーの接続パラメータを定義する際、JDBC URLフィールドにtranslate binary=trueを設定します。
たとえば、次のようになります。

jdbc:as400://10.139.142.183;translate binary=true

このデータ・サーバーは、JDE Worldデータを格納するライブラリを指している必要があります。

RKM JDE World (JDE World JDBC Driver)を使用している場合:

次の情報を使用して、IBM DB2 for iSeriesテクノロジ用のデータ・サーバーを作成します。

- JDBC Driver: com.jdedwards.as400.access.JDEWJDBCDriver

- JDBC URL: jdew://<host>;translatebinary=true;JDEWEnvironment=<name>;user=<name>;pwd=<passwd>;JDEWTableNomenclature=OBJN_OBJT;JDEWColumnNomenclature=FDFT_FDFN
JDBC URLで指定されているオプションについては、JDE World JDBC Driverユーザー・ガイドを参照してください。

4.3.2 物理スキーマの作成

4.3.1項「データ・サーバーの作成」で作成したデータ・サーバーの下に物理スキーマを作成します。『Oracle Data Integratorの管理』の物理スキーマの作成に関する項の説明に従って、標準の手順を使用します。

このスキーマは、リバース・エンジニアリングするJDE World表を含むライブラリを指している必要があります。

注意:
JDE表を格納するライブラリは、物理スキーマ定義で作業スキーマとして定義しないでください。また、このライブラリは、マッピングのステージング領域として使用しないでください。

『Oracle Data Integratorの管理』の論理スキーマの作成に関する項の説明に従って、標準の手順を使用してこの物理スキーマ用の論理スキーマを作成し、特定のコンテキストで関連付けます。

4.4 統合プロジェクトの設定

JDE Worldの機能を使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Data Integratorでの統合プロジェクトの開発』の統合プロジェクトの作成に関する項を参照してください。

次のKMをOracle Data Integratorプロジェクトにインポートします。

- IKM JDE World Control Append

- RKM JDE World

- RKM JDE World (JDE World JDBC Driver)

これらの特定のJDE World KMに加えて、JDE World表をホストするテクノロジの標準LKMをインポートします。利用できるKMのリストは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のIBM DB2 for iSeriesナレッジ・モジュールに関する項を参照してください。

4.5 モデルの作成およびリバース・エンジニアリング

この項の内容は次のとおりです。

- モデルの作成

- JDE表のリバース・エンジニアリング

4.5.1 モデルの作成

『Oracle Data Integratorでの統合プロジェクトの開発』のモデルの作成に関する項の説明に従い、標準の手順を使用して、JDE World表をホストするIBM DB2/400テクノロジに基づくモデル、およびJDE World接続の構成時に作成された論理スキーマに基づくモデルを作成します。

4.5.2 JDE表のリバース・エンジニアリング

JDE RKMはJDE表のリバース・エンジニアリングを行うことができます。これらのRKMは、表やインタフェース表など、JDEオブジェクトからメタデータを取得します。

RKM JDE WorldまたはRKM JDE World (JDE World JDBCドライバ)を使用してJDE表のカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』のモデルのリバースエンジニアリングに関する項の説明に従って、通常の手順を使用します。この項では、JDE World表固有のフィールドのみについて説明します。

1. モデルの「リバース」タブで、RKM JDE WorldまたはRKM JDE World (JDE World JDBC Driver)を選択します。

2. 選択したRKMに対するオプションを設定します。
RKM JDE World (JDE World JDBC Driver)に対して、次のようにオプションを設定します。

- JDE_MODULES: JDEシステムの短縮名が次のように示されます。
00は、基盤環境です。

01は、アドレス帳です。

02は、電子メールです。

%は、すべてのJDEシステムです。

デフォルトは01です。

注意:
モジュールのリストも指定できます。このリストでは、モジュールは次の例のように、カンマで区切り、一重引用符で囲む必要があります。
'01','02','04'

RKM JDE Worldに対して、次のようにオプションを設定します。

- JDE_DATA_TABLES: データ表のリバース・エンジニアリングを行うには、このオプションをYESに設定します。

- JDE_Z_TABLES: インタフェース表(Z表)のリバース・エンジニアリングを行うには、このオプションをYESに設定します。

- JDE_MODULES: JDEシステムの短縮名が次のように示されます。
00は、基盤環境です。

01は、アドレス帳です。

02は、電子メールです。

%は、すべてのJDEシステムです。

デフォルトは01です。

注意:
モジュールのリストも指定できます。このリストでは、モジュールは次の例のように、カンマで区切り、一重引用符で囲む必要があります。
'01','02','04'

- JDE_LANGUAGE: Eは英語、Fはフランス語、Sはスペイン語など、オブジェクトの説明やコメントの取得に使用する言語を示します。デフォルトはEです。

3. リバースする表を選択するには、「マスク」フィールドでリバース・マスクを指定します。「リバース」タブの「マスク」フィールドで、名前に基づいてリバース・エンジニアリングされるオブジェクトがフィルタ処理されます。「マスク」フィールドは空にしないでください。少なくともパーセント記号(%)を含める必要があります。

リバース・エンジニアリング・プロセスによって、モジュールごとにグループ化されたデータストアが返されます。これらのデータストアをマッピングのソースまたはターゲットとして使用できます。

4.6 マッピングの設計

JDE Worldのデータ表はマッピングのソースとして使用できます。JDE Z表は、マッピングのターゲットとして使用できます。

マッピング用に選択したKMによって、このマッピングの機能およびパフォーマンスが決まります。この項に示す推奨事項は、JDE Worldデータのロードおよび統合に関連する様々な状況でのKMの選択に役立ちます。

4.6.1 JDEからのデータのロード

RKM JDE WorldまたはRKM JDE World (JDE World JDBC Driver)を使用してリバース・エンジニアリングを実行すると、JDE Worldのデータ表をマッピングのソースとして使用し、JDE Worldアプリケーションからデータを抽出して他のシステム(データ・ウェアハウス、他のデータベースなど)に統合できます。

この状況でJDE Worldをソースとして使用することは、マッピングでソースとしてDB2/400を使用することと同じです。汎用SQLおよびIBM DB2 for iSeriesのKMをこの目的で使用できます。詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』の次の章を参照してください。

- 「汎用SQL」

- 「IBM DB2 for iSeries」

4.6.2 JDEでのデータの統合

RKM JDE Worldを使用してリバース・エンジニアリングを実行すると、JDE Z表をマッピングのターゲットとして使用し、IKM JDE World Control Appendにより任意のシステムからのデータをJDE Worldアプリケーションにロードできます。

JDE Worldへのデータの統合は、次の2つのフェーズで実行されます。

- 最初のフェーズでは、RPGプログラムをコールすることなく、いくつかのマッピングを使用して、データがZ表のセットに統合されます。これらのマッピングでは、JDE_INVOKEオプションをNoに設定して、IKM JDE World Control Appendを使用できます。

- 2番目のフェーズでは、RPGプログラムが起動され、Z表からのデータがJDE Worldに統合されます。これは、一般的に、最後に要求されるZ表をロードするマッピングで行われます。このマッピングでは、JDE_INVOKEオプションをYesに設定して、IKM JDE World Control Appendを使用します。

これらのマッピングはパッケージに並べる必要があります。

Oracle Data Integratorでは、自動的にRPGプログラムをコールしてJDE Worldに書き込むことができます。IKMでのRPGプログラム・コールの有効化は、JDEへの移入に必要なすべてのZ表をロードした後でのみ行ってください。IKM JDE World Control Appendにより、RPGプログラムがコールされるとともにZ表のロードが可能となります。

JDE Worldをターゲットにするマッピングを作成する手順は次のとおりです。

1. Z表をターゲット・データストアとしてマッピングを作成します。

2. 通常どおり結合、フィルタおよびマッピングを作成します。

3. 物理ダイアグラム・プロパティで、「統合ナレッジ・モジュール」タブを開き、IKM JDE World Control Appendを選択します。

4. 標準のKMオプション(INSERT、COMMIT、FLOW_CONTROL)を設定します。

5. このマッピングでRPGプログラムを起動する場合は、KMオプションを次のように指定します。

1. JDE_INVOKEオプションをYesに設定します。

2. セキュリティ・ファイルを作成する場合は、表4-2に示すように接続関連のオプションを設定します。

表4-2 接続関連KMオプション

オプション

値

備考

USE_SECURITY_FILE

Yes

RPGプログラム実行時のセキュリティを向上させるため、システムはJDE_SECURITY_FILEオプションで指定されたテキスト・ファイルを読み取り、このテキスト・ファイルに示されているJD Edwards Worldのユーザー、パスワード、環境およびアドレスを使用します。

JDE_SECURITY_FILE

接続セキュリティ・ファイルの絶対パス

このファイルには、JDE_USER、JDE_PASSWORD、JDE_ENVIRONMENTおよびJDE_ADDRESSの各オプションで指定したJDE Worldのユーザー、パスワード、環境およびアドレスが含まれています。詳細は、次のセキュリティ・ファイルの例を参照してください。

USE_SECURITY_FILEがYesに設定されている場合は必須です。この場合は、JDE_USER、JDE_PASSWORD、JDE_ENVIRONMENTおよびJDE_ADDRESSの値を設定する必要はありません。

RPGプログラムに必要なファイルとともに提供されたテンプレート・セキュリティ・ファイルを使用できます。詳細は、4.2.2項「テクノロジ固有の要件」のヒントを参照してください。

JDE_USER

JDE Worldユーザー

ユーザーは、ONEWORLDプロファイルを所有する必要があります。

JDE_PASSWORD

JDE Worldパスワード

ユーザーのJDE Worldパスワードです。

JDE_ENVIRONMENT

JDE World環境

JDE Worldの環境です。

JDE_ADDRESS

JDE Worldアドレス

iSeriesサーバーのIPアドレスまたは完全アドレスです。

次の例はセキュリティ・ファイルを示しています。セキュリティ・ファイル内では同じ構文名とキー名を使用する必要があります。

Username=ODI
Password=password
Environment=JDEENV
Address=iseries.organization.com

3. RPGプログラムのパラメータを表4-3に示すように設定します。

表4-3 RPGプログラム関連KMオプション

オプション

値

備考

JDE_PRGNAME

PRGプログラムの名前

例: P01051Z

JDE_CLNAME

PRGプログラムのタイプ

例: J01051Z

JDE_VERSION

処理するレポートのバージョンの名前

例: XJDE0006

注意:

- 複製および処理するレポートのバージョン名を入力します。レポートのテンプレートは実行できません。

- ODIでは、一時バージョンを作成します。

JDE_KCO

バッチID

例: 1

バッチIDによって、RPGプログラムで処理される行を指定できます。

JDE_EDTN

トランザクションID

例: 1

トランザクションIDによって、1つのトランザクション内の複数の行をグループ化できます。これは通常、ヘッダー詳細表のケースです。ヘッダーは、トランザクションIDによって詳細にリンクされています。このIKMでは切捨ては行われません。

IKM JDE World Control Appendの制限

- RECYCLE_ERRORSオプションを使用する際には、マッピングに更新キーが設定されている必要があります。

- このモジュールをジャーナル化されたソース表と組み合せて使用する場合、ソースの削除を含めないようデータが自動的にフィルタ処理されます。

- FLOW_CONTROLおよびSTATIC_CONTROLオプションは、無効なデータを分離するためにチェック・ナレッジ・モジュールをコールします(CKMが設定されていない場合、エラーが発生します)。

- RPGプログラムは、JDE World iSeriesサーバー上で実行する必要があります。

- Oracle Data Integratorランタイム・エージェントは、このサーバー上にインストールできます。ただし、RPGプログラムを実行するためにサーバーにランタイム・エージェントをインストールする必要はありません。RPGプログラムは、ローカル・エージェントを使用して実行可能です。

- RPGプログラムが起動されたかどうかの情報以外に、ODIはプログラムの実行に関する詳細を示しません。プログラムの実行の詳細を把握するには、iSeriesサーバーで作成されたログ・ファイルを確認するか、スプール・ファイル(WRKSPLF)コマンドでWorkを発行します。

5 Oracle PeopleSoft

この章では、Oracle Data IntegratorでのOracle PeopleSoftナレッジ・モジュールの使用方法について説明します。

この章では、次の項目について説明します。

- 5.1項「概要」

- 5.2項「インストールおよび構成」

- 5.3項「トポロジの設定」

- 5.4項「プロジェクトの設定」

- 5.5項「モデルの作成およびリバース・エンジニアリング」

- 5.6項「マッピングの設計」

5.1 概要

Oracle Data Integratorでは、Oracle PeopleSoftアプリケーションから抽出されたデータを統合します。また、PeopleSoftメタデータのリバース・エンジニアリングおよびPeopleSoft表からのスケーラブルなデータ抽出をサポートします。

5.1.1 概念

PeopleSoft用Oracle Data Integrator KMは、次のような目的で、PeopleSoftの成熟した統合メソッドを使用しています。

- PeopleSoftデータ構造(ビジネス・オブジェクト、表、ビュー、列、キーおよび外部キー)をデータストア形式でリバース・エンジニアリングします。Oracle Data Integratorでは、OracleおよびMicrosoft SQL ServerのデータベースでホストされるPeopleSoftインスタンスに対してこの処理を実行する、2つの専用ナレッジ・モジュール(KM)が提供されます。

- データレベルでの統合アプローチを使用してPeopleSoftからデータを抽出します。PeopleSoftデータを含むデータベース表からデータが抽出されます。

5.1.2 ナレッジ・モジュール

Oracle Data Integratorには、PeopleSoftデータを処理するためのナレッジ・モジュールが用意されています。これらのリストを表5-1に示します。PeopleSoftに固有のこれらのナレッジ・モジュールでは、Oracle Data IntegratorとPeopleSoftプラットフォームとの間の統合および接続性が提供されています。

これらのKMでは、PeopleSoftをデータレベルで統合できます。つまり、データの抽出がPeopleSoftビジネス・オブジェクト表で直接実行されます。この方法は読取り専用です。

表5-1 Oracle PeopleSoftナレッジ・モジュール

ナレッジ・モジュール

説明

RKM PeopleSoft ORACLE

PeopleSoftからビジネス・オブジェクト、表、ビュー、列、キーおよび外部キーを取得する、リバース・エンジニアリング・ナレッジ・モジュール。PeopleSoft表をホストするデータベースはOracleです。

5.2 インストールおよび構成

PeopleSoftテクノロジでの作業を開始する前に、この項の情報を必ず読んでください。

- システム要件および動作要件

- テクノロジ固有の要件

- 接続性要件

5.2.1 システム要件および動作要件

インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。

サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。

http://www.oracle.com/technology/products/oracle-data-integrator/index.html

5.2.2 テクノロジ固有の要件

Oracle Data IntegratorでPeopleSoftデータを使用するためのテクノロジ固有の要件はありません。

5.2.3 接続性要件

Oracle Data Integratorは、JDBC接続を使用して、PeopleSoftデータをホストするデータベースに接続します。OracleデータベースおよびMicrosoft SQL ServerデータベースとのJDBC接続性の詳細は、『Oracle Fusion Middleware Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracle Databaseの接続性要件に関する項およびMicrosoft SQL Serverの接続性要件に関する項を参照してください。

5.3 トポロジの設定

この手順では、データ・サーバーおよび、PeopleSoftデータの格納に使用される物理スキーマと論理スキーマを、Oracle Data Integratorで宣言します。

5.3.1 データ・サーバーの作成

PeopleSoft表は、OracleスキーマまたはMicrosoft SQL Serverデータベースに格納できます。

OracleまたはMicrosoft SQL Serverのいずれかのテクノロジのデータ・サーバーを作成します。『Oracle Fusion Middleware Oracle Data Integrator接性およびナレッジ・モジュール・ガイド』のOracleデータ・サーバーの作成に関する項またはMicrosoft SQL Serverデータ・サーバーの作成に関する項を参照してください。

このデータ・サーバーは、PeopleSoftデータを格納するデータベース・インスタンスを表します。

5.3.2 物理スキーマの作成

5.3.1項「データ・サーバーの作成」で作成したデータ・サーバーの下に物理スキーマを作成します。『Oracle Data Integratorの管理』の物理スキーマの作成に関する項の説明に従って、標準の手順を使用します。

このスキーマは、リバース・エンジニアリングするPeopleSoft表を含むOracleスキーマまたはMicrosoft SQL Serverデータベースです。

注意:
PeopleSoft表を格納するOracleスキーマまたはMicrosoft SQL Serverデータベースは、物理スキーマ定義で作業スキーマとして定義しないでください。また、このスキーマまたはデータベースは、マッピングのステージング領域として使用しないでください。

『Oracle Data Integratorの管理』の論理スキーマの作成に関する項の説明に従って、標準の手順を使用してこの物理スキーマ用の論理スキーマを作成し、特定のコンテキストで関連付けます。

5.4 プロジェクトの設定

PeopleSoftの機能を使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』の統合プロジェクトの作成に関する項を参照してください。

次のKMをOracle Data Integratorプロジェクトにインポートします。

- RKM PeopleSoft ORACLE

これらの特定のPeopleSoft KMに加えて、OracleテクノロジまたはMicrosoft SQL Serverテクノロジの標準LKMをインポートします。利用できるKMのリストは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracle Databaseのナレッジ・モジュールに関する項とMicrosoft SQL Serverのナレッジ・モジュールに関する項を参照してください。

5.5 モデルの作成およびリバース・エンジニアリング

この項の内容は次のとおりです。

- モデルの作成

- PeopleSoft表のリバース・エンジニアリング

5.5.1 モデルの作成

『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のモデルの作成に関する項の説明に従って、OracleテクノロジまたはMicrosoft SQLテクノロジ、および標準の手順を使用したトポロジの設定時に作成された論理スキーマに基づいてモデルを作成します。

5.5.2 PeopleSoft表のリバース・エンジニアリング

PeopleSoft RKMでは、データ・レベルでPeopleSoftデータ構造をリバース・エンジニアリングし、PeopleSoftディレクトリから取得した情報を付加できます。

データの抽出はPeopleSoftビジネス・オブジェクト表で直接実行されます。このアクセス方法は読取り専用です。

リバース・エンジニアリング・プロセスでは、次に示す情報を返します。

- サブモデルとしてのビジネス・オブジェクト

- 属性として関連付けられた列と制約を持つデータストアとしてのビジネス・オブジェクト表

- リバースされた表と列に添付されたコメント

PeopleSoft RKMを使用して、PeopleSoft表のカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のモデルのリバースエンジニアリングに関する項に記載されている通常の手順を使用します。この項では、PeopleSoft表固有のフィールドのみについて説明します。

1. モデルの「リバース」タブで、「RKM PeopleSoft ORACLE」を選択します。

2. BUSINESS OBJECT RKMオプションを次のように設定します。
CCM、DBIまたはDPOなどのビジネス・オブジェクト・コードを入力します。

ビジネス・オブジェクト・コードは、PeopleSoftのオブジェクト・オーナーIDに対応します。様々なオブジェクト・オーナーIDがPeopleSoftビュー、EO_BCOWNRID_VWにリストされています。このフィールドは、リバース・エンジニアリングするビジネス・オブジェクトをフィルタ処理するためのマスクとして使用されます。このフィールドは空にしないでください。少なくともパーセント記号(%)を含める必要があります。

3. リバースする表を選択するには、「マスク」フィールドにリバース・エンジニアリング・マスクを指定します。「リバース」タブの「マスク」フィールドで、名前に基づいてリバース・エンジニアリングされるオブジェクトがフィルタ処理されます。「マスク」フィールドは空にしないでください。少なくともパーセント記号(%)を含める必要があります。

リバース・エンジニアリング・プロセスでは、アプリケーションおよび表をサブモデルおよびデータストアとして返します。これらのPeopleSoftデータストアは、マッピングでソースとして使用できます。

5.6 マッピングの設計

PeopleSoftデータ表は、マッピングのソースとして使用できます。

マッピング用に選択したKMによって、このマッピングの機能およびパフォーマンスが決まります。この項に示す推奨事項は、PeopleSoftデータのロードに関連する様々な状況でのKMの選択に役立ちます。

5.6.1 PeopleSoftからのデータのロード

PeopleSoftデータ表は、マッピングのソースとして使用し、PeopleSoftデータベースからデータを抽出して他のシステム(データ・ウェアハウス、他のデータベースなど)に統合できます。

この状況でPeopleSoftをソースとして使用することは、マッピングのソースとしてOracleデータストアまたはMicrosoft SQL Serverデータストアを使用することと同じです。汎用SQL、Oracle DatabaseまたはMicrosoft SQL ServerのKMをこの目的で使用できます。詳細は、『Oracle Fusion Middleware Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』の次の章を参照してください。

- 「Oracle Database」

- 「汎用SQL」

- 「Microsoft SQL Server」

6 SAP ABAP BW

この章では、Oracle Data IntegratorでのSAP BWナレッジ・モジュールの使用方法について説明します。

この章の内容は次のとおりです。

- 6.1項「概要」

- 6.2項「インストールおよび構成」

- 6.3項「トポロジの定義」

- 6.4項「プロジェクトの設定」

- 6.5項「モデルの作成およびリバース・エンジニアリング」

- 6.6項「マッピングの設計」

- 6.7項「SAP BW統合の考慮事項」

6.1 概要

SAP BWナレッジ・モジュールにより、Oracle Data IntegratorはSAP Java Connector (SAP JCo)ライブラリを使用してSAP-BWシステムに接続できます。これらのアダプタでは、SAP-BWシステムから大量のデータを抽出できます。

SAP BWアダプタを初めて使用する場合は、『Oracle Data IntegratorのためのSAP ABAP BWアダプタ・スタート・ガイド』を確認することをお薦めします。

これには、完全な前提条件のリストとSAP接続テストを含む手順を追った説明が含まれています。

6.1.1 概念

Oracle Data IntegratorのSAP BWナレッジ・モジュールは、次のような目的で、SAP-BWシステムの成熟したな統合方法を使用しています。

- SAP BWメタデータのリバース・エンジニアリング

- SAP BWシステム(ソース)からOracleステージング領域またはOracle以外のステージング領域へのデータの抽出およびロード

リバース・エンジニアリング・プロセスでは、ODIモデル内の次のSAP BWオブジェクトを返します。

- 各ODS/DSOオブジェクトは、ODIデータストアとして表されます。

- 各InfoObjectは、ODIでデータストアを最大3つまで含むサブモデルとして表されます。

- マスター・データを持つInfoObjectsには、すべてのInfoObject属性を含むマスター・データ・データストアがあります。

- テキスト・データが添付されているInfoObjectsには、すべてのテキスト関連の属性を含むテキスト・データストアがあります。

- 定義された階層を持つInfoObjectsには、すべての階層関連の属性を含む階層データストアがあります。

- 各InfoCubeは、単一のODIデータストアとして表されます。このデータストアには、すべてのディメンションのすべての特性に関する属性とすべてのキー数値に関する列が含まれます。

- 各OpenHubDestinationは、ODIデータストアとして表されます。

6.1.2 ナレッジ・モジュール

Oracle Data Integratorには、表6-1に示されている、SAP BWデータを処理するためのナレッジ・モジュールが用意されています。

Oracle Data Integrator SAP BWナレッジ・モジュールでは、SAP JCoライブラリを使用したSAP BWシステムからの統合が可能です。このKMのセットには、次の機能があります。

- SAP BWシステムからSAP BWデータを読み取ります。

- Oracleステージング領域またはOracle以外のステージング領域にこのデータをロードします。

- SAPメタデータをリバース・エンジニアリングし、必要なメタデータのみを選択するようツリー・ブラウザに指示します。

- フレックスフィールドを使用してSAP BWデータ・ターゲット・タイプ(InfoCube、InfoObject、ODS/DSO、OpenHubおよびテキスト表)およびその属性をマップします。

表6-1 SAP BWナレッジ・モジュール

ナレッジ・モジュール

説明

LKM SAP BW to Oracle (SQLLDR)

SQL*LOADERコマンド行ユーティリティを使用して、SAP BWシステムからフラット・ファイルにデータを抽出し、これをOracleステージング領域にロードします。

RKM SAP ERP接続テスト

このRKMは、Oracle Data IntegratorからのSAP接続のテストに使用します。詳細は、付録B「SAP ABAP ERPアダプタの追加情報」を参照してください。

RKM SAP BW

InfoCubes、InfoObjects (テキストおよび階層を含む)、ODS/DSOおよびOpenHubDestinationsのSAP固有のメタデータを取得するリバース・エンジニアリング・ナレッジ・モジュール。

LKM SAP BW to SQL

JDBC接続を使用して、SAP BWからフラット・ファイルにデータを抽出し、これをステージング領域にロードします。

6.1.3 SAP BW統合プロセスの概要

RKM SAP BWにより、Oracle Data Integrator (ODI)ではSAP JCoライブラリを使用してSAP BWシステムに接続し、SAP BWメタデータのカスタマイズされたリバース・エンジニアリングを実行できます。

LKM SAP BW to Oracle (SQLLDR)およびLKM SAP BW to SQLは、SAP BWシステム(ソース)からOracleステージング領域またはOracle以外のステージング領域にデータを抽出およびロードする役割を果たします。

注意:
SAP BWへのアクセスはABAPを使用して行われます。その結果、接続に使用されるテクノロジはSAP ABAPで、テクノロジ要素およびモデルはSAP ABAPテクノロジに基づきます。ODIにSAP BWテクノロジは存在しませんが、SAP ABAPテクノロジに基づいたSAP BW固有のKMが存在します。

6.1.3.1 リバースエンジニアリング・プロセス

リバース・エンジニアリングではRKM SAP BWを使用します。

このナレッジ・モジュールでは、SAP BWメタデータを取得するための専用RFCプログラムを自動インストールします。また、SAP BWデータ・オブジェクトのリストを抽出し、オプションでメタデータ・ブラウザのグラフィック・インタフェースにこのリストを表示します。ユーザーは、リバース・エンジニアリングするSAP BWオブジェクトをこのリストから選択します。

リバース・エンジニアリング・プロセスでは、データ・ターゲット、主キー、外部キーおよびインデックスがOracle Data Integratorモデルにリバース・エンジニアリングされます。

6.1.3.2 統合プロセス

SAPからのデータ統合は、LKM SAP BW to Oracle (SQLLDR)およびLKM SAP BW to SQLによって管理されます。

LKM SAP BW to Oracle (SQLLDR)は、ABAPを経由したSAPからのマッピング・ソーシングと、Oracle Databaseへのステージング領域の配置に使用され、LKM SAP BW to SQLは、Oracle以外のステージング領域用に使用されます。

KMではまず、指定されたマッピングに必要な抽出プロセスに対応する、最適化されたABAPコードを生成します。このコードには、ソースのSAP BWサーバー内で直接処理できるフィルタおよび結合が含まれます。このABAPプログラムは、自動的にアップロードされ、OdiSAPAbapExecuteツールを使用して実行されて、SAP内に抽出ファイルが生成されます。

その後、KMは、この抽出ファイルを事前に構成されたFTPサーバーまたは共有ディレクトリのいずれかに転送します。さらに、このファイルは、このサーバーからODIエージェントがあるマシンに、FTP、SFTPまたはSCPを使用してダウンロードされるか、またはコピーされ、最後にSQL*LoaderまたはJDBC接続を使用してそのステージング領域にロードされます。また、このエージェントが、FTPサーバーのディスク上にある抽出ファイルを直接読み取ることもできます。詳細は、6.7.1項「ファイル転送の構成」を参照してください。

他の統合プロセス(データの整合性チェックおよび統合)は、他のOracle Data Integration KMで管理されます。

6.2 インストールおよび構成

SAP BWデータでの作業を開始する前に、この項の情報を必ず読んでください。

- システム要件および動作要件

- テクノロジ固有の要件

- 接続性要件

6.2.1 システム要件および動作要件

インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。

サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。

http://www.oracle.com/technology/products/oracle-data-integrator/index.html

6.2.2 テクノロジ固有の要件

SAP BWの一部のナレッジ・モジュールでは、SAP-BWシステムおよびOracleデータベースに固有の機能を使用します。この項では、これらの機能に関連する要件をリストします。

- アダプタとの互換性があるJCoバージョンを使用する必要があります。サポートされるJCoバージョンのリストはOracle Technology Network (OTN)で入手できます。詳細は、6.2.1項「システム要件および動作要件」を参照してください。

- Oracle Data IntegratorおよびJCoの両方と互換性があるJVMバージョンを使用する必要があります。

- このアダプタは、SAPシステムからODIエージェントにデータを転送するための転送モードとして、共有ディレクトリを使用したデータ転送とFTPを経由するデータ転送の2つをサポートしています。詳細および制約については、6.7.1項「ファイル転送の構成」を参照してください。
ファイル転送モードの選択に応じて、次の要件を満たす必要があります。

- 共有ディレクトリを使用したデータ転送(推奨される転送方式)
LKM SAP BW to Oracle (SQLLDR)には、SAPシステムとODIエージェントとの間で共有されるフォルダが必要です。SAPアプリケーション・サーバーでは、SAPシステムとODIエージェント・マシンからアクセス可能なフォルダにデータを書き込むことでデータを転送します。これは通常、ODIエージェント・マシンのフォルダをSAPシステムと共有することで行われます。共有フォルダは、必ずしもODIエージェント・マシン上に置く必要はないことに注意してください。共有フォルダがODIエージェント・マシンとSAPシステムの両方からアクセス可能であるかぎりは、サード・マシン上に共有フォルダを置くこともできます。

注意:
セキュリティ上の理由から、SAPサーバー上にあるフォルダは共有しないでください。そのかわりに、ODIエージェント・マシンのフォルダをSAPシステムと共有するか、または共有ファイル・サーバーとしてサード・マシンを使用します。

共有フォルダは、SAPシステムにアクセスできる必要があります。基盤となるオペレーティング・システムのみへのアクセスでは不十分です。つまり、フォルダはSAPトランザクションAL11内で宣言される必要があり、その結果、フォルダはAL11内で正常に開かれます。

- FTP経由のデータ転送
LKM SAP BW to Oracle (SQLLDR)では、SAP BWシステムからのデータのアップロードにFTPサーバーが必要になります。このデータの読取りは、マッピングを実行するエージェントによって(このエージェントがFTPサーバー・マシン上で実行されている場合)ローカルで実行されるか、またはリモートで(このエージェントがFTPサーバーとは異なるマシン上にある場合)実行されます。このFTPサーバーは、SAP BWマシンとエージェント・マシンの両方からネットワーク経由でアクセスできる必要があります。

- 「LKM SAP BW to Oracle (SQLLDR)」のみ: LKM SAP BW to Oracle (SQLLDR)を使用したマッピングの実行時には、エージェントを実行するマシン上にSQL*Loaderが必要です。SQL*Loaderは、SAPからOracleステージング領域に抽出されたデータのロードに使用されます。

6.2.3 接続性要件

Oracle Data Integratorは、JCoを使用してSAP BWデータをホストするSAP BWシステムに接続します。また、SAPシステムから抽出されたデータのホストには、FTPサーバーまたは共有ディレクトリを使用します。

この項では、次の必要な接続情報について説明します。

- JCoのインストールと構成

- SAPシステムへのODI SAPコンポーネントのインストール

- SAP環境設定の検証

- SAP接続情報の収集

- FTP接続情報の収集

- 共有ディレクトリ情報の収集

- オープン・ツールの追加

6.2.3.1 JCoのインストールと構成

SAPアダプタでは、JCoを使用してSAPシステムに接続します。プロジェクトを続行する前にJCoを構成する必要があります。

JCoをインストールおよび構成する手順は次のとおりです。

1. http://service.sap.com/connectorsから構成でサポートされるJCoバージョンをダウンロードします。Oracle Technology Networkから入手できる互換性マトリックスでサポートされるJCoバージョンを確認します。
http://www.oracle.com/technology/products/oracle-data-integrator/10.1.3/htdocs/documentation/odi_certification.xls

注意:

- JCo 3.0.2以降のバージョンが必要です

- 使用中のオペレーティング・システムおよびシステム・アーキテクチャ(32ビットまたは64ビット)と一致するSAP JCoパッケージを選択します。たとえば、ODIを32ビットのJVMで実行している場合、CPUおよびOSが64ビットでも、32ビットのSAP JCoをダウンロードする必要があります。32ビットと64ビットのアーキテクチャを組み合せると、SAP JCoで必要なネイティブ・ライブラリで接続失敗が発生するため、この組合せは不可能です。

- odi.confには、ODI Studio用に使用するJDKパスが含まれています。

2. 適切な配布パッケージを任意のディレクトリ<sapjco-install-path>に解凍します。

3. プラットフォームに対応するJCoドキュメント(<sapjco-install-path>/javadoc/installation.html)に記載されているインストール手順に従います。

4. 必要なファイル(sapjco3.jarおよびsapjco3.dll/.so)を<ODI_HOME>/odi/sdk/libディレクトリ(ODI Studio、ODIスタンドアロン・エージェント)および<WLS_DOMAIN>/libディレクトリ(JEEエージェント)にコピーします。

5. SAPを使用してODIコンポーネント(ODI Studio、スタンドアロン・エージェント)を再起動します。

6. JCoインストールをチェックします。

注意:
SAP Secure Network Connectionsの場合、次のことを確認してください。

- 環境変数SECUDIRが、証明書ファイルを含むディレクトリを指していること。

- 環境変数SNC_LIBが、sapcrypto.dll/libsapcrypto.so (Linux用)を含むディレクトリを指していること。

証明書およびCryptoライブラリの詳細は、SAP管理者に問い合せてください。

6.2.3.2 SAPシステムへのODI SAPコンポーネントのインストール

ODI SAPアダプタは、いくつかのODI SAP RFCを使用してSAPシステムと通信します。これらのRFCは、SAP送信リクエストを使用してSAP Basisチームがインストールします。付録C「ODI SAPコンポーネントのインストール」に示す手順に従い、ODI SAPコンポーネントをインストールして、SAPユーザーに必要な認可を割り当てる場合は、SAP管理者に連絡してください。

6.2.3.3 SAP環境設定の検証

付録C「ODI SAP設定の検証」には、ODI SAPアダプタで使用する場合のSAP環境の基本検証に関する手順があります。SAP Basisチームに連絡してすべての検証を実行し、画面ショットのような検証結果と確認内容をお知らせください。

6.2.3.4 SAP接続情報の収集

SAP BWシステムに接続するには、SAP管理者に次の情報を要求する必要があります。

- SAPグループ・ログオンの場合:

- SAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- メッセージ・サーバー: SAP Message ServerのIPアドレス/ホスト名。

- メッセージ・サーバー・ポート: SAP Message Serverのポート番号またはサービス名。

- グループ/サーバー: SAPログオン・グループの名前。

- SAPサーバー・ログオンの場合:

- SAP BWシステムのIPアドレスまたはホスト名: SAPが実行されているホストのIPアドレスまたはホスト名。

- SAPクライアント番号: SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。

- SAPシステム番号: Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号。

- SAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- SAP BWシステムのIPアドレスまたはホスト名: SAPが実行されているホストのIPアドレスまたはホスト名。

- SAPユーザー: SAPシステムにログオンするためにユーザーに指定される一意のユーザー名。

- SAPパスワード: ユーザーのログインに使用される、大文字と小文字を区別するパスワード。

- SAP言語: 英語はEN、ドイツ語はDEなど、ログイン時に使用される言語コード。

- SAPクライアント番号: SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。

- SAPシステム番号: Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号。

- SAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- SAP SNC接続プロパティ(オプション)/SAPルーター文字列(オプション): SAPでは、SNCおよびSAPルーターを使用してセキュリティを強化しています。これは、これらのセキュリティの実装時に使用されます。

- SAPトランスポート・レイヤー名: SAPランドスケープ内のトランスポート・レイヤーを一意に識別する文字列。これにより、ODIは、SAPでの後のデプロイメントでトランスポート・リクエストを作成できます。ここにデフォルト値がある場合でも、このトランスポート・レイヤー名は、SAP Basisチームからの提供を受ける必要があります。これを行わない場合、インストールの際、大幅な遅れにつながる可能性があります。

- SAP Temporary Directory (SAP_TMP_DIR): このパラメータは、SAPシステムでのカスタム作業ディレクトリを定義する場合に使用します。これは、FTP転送モードの場合のみ適用されます。このパスは、抽出時に一時ファイルに使用されます。デフォルト値(フレックスフィールド値は空白のまま)では、SAPプロファイルで定義されるDIR_HOMEパスを使用します。
一時ファイルに使用されるディレクトリをSAPアプリケーション・サーバーで指定します。パスの最後は、SAPアプリケーション・サーバーが稼働するOSに応じて、スラッシュまたはバックスラッシュにしてください。ODI SAPユーザーには、このディレクトリに対する読取りおよび書込み権限が必要です。

注意:
デフォルト値(空のFF値)は、クリティカルなSAPシステムの場合は使用しないでください。抽出時に一時ファイルが多すぎると、それぞれのファイル・システムがいっぱいになり、SAPシステムで深刻な問題が生じることがあります。SAP開発システムの場合も、デフォルト値をオーバーライドすることを強くお薦めします。

- SAP BWバージョン: 3.5または7.0。

- SAP文字セット: この文字セットは、SAPシステムがUNICODEシステムではない場合にのみ必要となります。文字セットの完全なリストは、『Oracle Databaseグローバリゼーション・サポート・ガイド』のロケール・データに関する項を参照してください。たとえば、クロアチア語のデータの場合はEE8ISO8859P2です。UNICODEシステムの場合はUTF8を使用します。

注意:
前述の接続データ(SAP SNC接続プロパティおよびSAPルーター文字列を除く)はすべて必須であり、SAP管理者から要求されます。接続設定時には、SAP管理者にサポートを依頼することを検討することもできます。

6.2.3.5 FTP接続情報の収集

SAP BWシステムでは、FTPプロトコルを使用してデータをサーバーにプッシュします。システム管理者から次の情報を収集します。

- FTPサーバー名またはIPアドレス

- FTPログインID

- FTPログイン・パスワード

- 一時データ・ファイルを格納するためのディレクトリ・パス

FTPサーバーがSAPシステムとODIエージェント・マシンの両方からアクセスできることを検証してください。

6.2.3.6 共有ディレクトリ情報の収集

共有ディレクトリ情報の収集は、共有ディレクトリを使用したデータ転送を計画する場合にのみ適用されます。SAPシステムでは、共有フォルダにデータをプッシュします。後述の設定のため、システム管理者から次の情報を収集します。

- 共有フォルダの(UNC)パス名

共有フォルダがSAPシステムとODIエージェント・マシンの両方からアクセスできることおよび、アクセスに対話型認証が必要ないことを確認します。

共有フォルダは、<sid>admユーザーを使用してSAPシステムからアクセスできる必要があること、およびODIエージェントを起動するオペレーティング・システム・ユーザーからアクセスできる必要があることに注意してください。

6.2.4 オープン・ツールの追加

オープン・ツールをインストールしてODIに追加する手順の詳細は、『Oracle Data Integratorツール・リファレンス』を参照してください。この項では、SAP ABAP固有のステップについてのみ説明します。

1. デザイナに接続します。

2. 「ファイル」→「オープン・ツールの追加/削除」…を選択します。

3. 「オープン・ツールの追加/削除」ウィンドウで、「オープン・ツール・クラス名」フィールドに次の名前を入力します。
oracle.odi.sap.km._OdiSapAbapExecuteStoppable

4. 「オープン・ツールの追加」をクリックします。

5. オープン・ツールが次のように表示されます。

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

6.3 トポロジの定義

SAP統合に使用する2つのデータ・サーバーを定義する必要があります。定義するのは、SAP ABAPデータ・サーバーとFTPデータ・サーバーです。

1. ファイル・データ・サーバーの作成

2. SAP ABAPデータ・サーバーの作成

6.3.1 ファイル・データ・サーバーの作成

このデータ・サーバーはFTPサーバーまたはファイル・サーバーに相当し、抽出ファイルはSAPからここにプッシュされ、SQL*LoaderまたはJDBCドライバ用に取得されます。

6.3.1.1 ファイル・データ・サーバーの作成

『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のファイル・データ・サーバーの作成に関する項の説明に従って、ファイル・データ・サーバーを作成します。この項では、SAP BWに固有のパラメータについて説明します。

データ転送モードの選択に応じて、このデータ・サーバーは次のいずれかを指す必要があります。

- 既存のFTPサーバー。抽出ファイルがSAPからここにプッシュされ、ロード用に取得されます。

- 共有フォルダ。SAPシステムにより抽出ファイルがここに書き込まれ、SQL*LoaderまたはODIフラット・ファイル・ドライバからそのファイルが取得されます。このスキーマは、抽出ファイルがプッシュされるFTPホスト内のフォルダを表します。

データ・サーバーのパラメータはデータ転送モードによって異なることに注意してください。

- FTPを使用してデータを転送する場合は、次のようにパラメータを設定します。

- ホスト(データ・サーバー): FTPサーバーのIPホスト名またはIPアドレス

- ユーザー: FTPサーバーにログインするためのユーザー名

- パスワード: ユーザーのパスワード

- 共有ディレクトリを使用してデータを転送する場合は、次のようにパラメータを設定します。

- ホスト(データ・サーバー): 該当なし

- ユーザー: 該当なし

- パスワード: 該当なし

- 「LKM SAP BW to SQL」とともに使用する場合は、これらの追加パラメータも構成する必要があります。

- JDBCドライバ・クラス: com.sunopsis.jdbc.driver.file.FileDriver

- JDBC URL: jdbc:snps:dbfile?ENCODING=UTF8
前述のURLはSAP UNICODEシステム用です。非UNICODEシステムの場合のENCODINGパラメータの詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のファイル・データ・サーバーの作成に関する項を参照してください。このURLで選択するエンコーディングは、SAPアプリケーション・サーバーで使用するコード・ページと一致する必要があります。

詳細は、6.7.1項「ファイル転送の構成」を参照してください。

6.3.1.2 ファイル・スキーマの作成

このファイル・データ・サーバーでは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のファイル物理スキーマの作成に関する項の説明に従って、物理スキーマを作成します。

このスキーマは、FTPホストまたはファイル・サーバーのいずれかにあるフォルダを表します。これは、抽出ファイルがプッシュされるフォルダであることに注意してください。データ転送モードに応じて、データおよび作業スキーマを次のように指定します。

- FTPファイル転送の場合:

- ディレクトリ(スキーマ): リモートの場所から抽出ファイルをアップロードまたはダウンロードするためのFTPサーバー上のパス。このパスは、SAP BWシステムからFTPサーバーに抽出ファイルをアップロードする際に使用されます。また、抽出ファイルをダウンロードするリモート・エージェントによって使用されます。このパスにはスラッシュを使用する必要があり、スラッシュ文字で終了する必要があります。

- ディレクトリ(作業スキーマ): FTPサーバー・マシン上のローカル・パス。このパスは、FTPを経由することなく抽出ファイルにアクセスするため、このマシン上にインストールされたエージェントによって使用されます。このアクセス方法は、LKM SAP BW to Oracle (SQLLDR)またはLKM SAP BW to SQLのFTP_TRANSFER_METHODパラメータがNONEに設定されている場合に使用されます。作業スキーマはローカル・ディレクトリの場所です。そのため、スラッシュまたはバックスラッシュは、オペレーティング・システムに応じて使用する必要があります。このパスは、スラッシュまたはバックスラッシュで終了する必要があります。
データ・スキーマと作業スキーマで指定されたパス名は必ずしも同じ名前ある必要はありません。FTPサーバーが、/sapfiles (ディレクトリ(スキーマ)の値)という名前のFTPディレクトリにアクセスできる一方、ローカルでは、c:\inetpub\ftproot\sapfiles (ディレクトリ(作業スキーマ)の値)にあるファイルがアクセスされます。

- 共有ディレクトリ転送の場合:

- ディレクトリ(スキーマ): 抽出ファイルの書込みおよび読取りを行う共有フォルダのパス(UNC)。SAPシステムによってこのフォルダに抽出ファイルが書き込まれます。また、リモート・エージェントによって、抽出ファイルをODIエージェント・マシンにコピーする場合にも使用されます。このパスには、SAPアプリケーション・サーバーのオペレーティング・システムに応じてスラッシュまたはバックスラッシュを使用し、その終わりにはスラッシュ文字またはバックスラッシュ文字を使用する必要があります。

- ディレクトリ(作業スキーマ): 共有フォルダをホストするサーバー・マシン上のローカル・パス。このパスは、共有フォルダを経由することなく抽出ファイルにアクセスするため、このマシン上にインストールされたエージェントによって使用されます。このアクセス方法は、LKM SAP BW to Oracle (SQLLDR)またはLKM SAP BW to SQLのFTP_TRANSFER_METHODパラメータがFSMOUNT_DIRECTに設定されている場合に使用されます。作業スキーマはローカル・ディレクトリの場所です。そのため、スラッシュまたはバックスラッシュは、オペレーティング・システムに応じて使用する必要があります。このパスは、スラッシュまたはバックスラッシュで終了する必要があります。

詳細は、6.7.1項「ファイル転送の構成」を参照してください。

File Server for SAP ABAPと呼ばれるファイル論理スキーマを作成して、物理スキーマにマップします。この論理スキーマ名はあらかじめ定義されており、SAP ABAPのファイル・サーバーにする必要があります。

6.3.2 SAP ABAPデータ・サーバーの作成

このSAP ABAPデータ・サーバーはSAPサーバーに相当し、ここからデータが抽出されます。

6.3.2.1 SAP ABAPデータ・サーバーの作成

SAP ABAPデータ・サーバーを構成する手順は次のとおりです。

1. 『Oracle Data Integratorでの統合プロジェクトの開発』のデータ・サーバーの作成に関する項の説明に従って、標準の手順を使用してSAP ABAPテクノロジ用のデータ・サーバーを作成します。このデータ・サーバーではSAP接続情報を使用します。

2. 接続パラメータを設定します。

- 名前: ODIに表示されるデータ・サーバーの名前。たとえば、SAP_BWなどです。

- ユーザー: SAP管理者から提供されたSAP BWユーザー。

- パスワード: このユーザーのSAP BWパスワード。このパスワードでは大文字と小文字が区別されます。

3. ログオン・タイプに固有の接続パラメータを設定します。

- SAPグループ・ログオンの場合(「フレックスフィールド」タブ):

- フレックスフィールドSAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- フレックスフィールドSAP Message Serverホスト: SAP Message ServerのIPアドレス/ホスト名。

- フレックスフィールドSAP Message Serverポート: SAP Message Serverのポート番号またはサービス名。

- フレックスフィールドSAPグループ: SAPログオン・グループの名前。

- SAPサーバー・ログオンの場合:

- ホスト(データ・サーバー): SAP BWシステムのIPアドレスまたはホスト名。

- フレックスフィールドSAPクライアント番号: SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。

- フレックスフィールド「SAPシステム番号」: Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号。

- フレックスフィールドSAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

4. SAPセキュア・ネットワーク設定を設定します(オプション)。

- フレックスフィールドSNC: セキュリティのレベル: 「SNCなし」の場合は0、「認証」の場合は1、「整合性」の場合は2、「暗号化」の場合は3、「使用可能な最大セキュリティ設定」の場合は9

- フレックスフィールドSNC: クライアント名: SNCクライアント名

- フレックスフィールドSNC: パートナ名: SNCパートナ名

5. 「フレックスフィールド」タブに、このデータ・サーバーのフレックスフィールド値を設定します。

- SAP言語: ログイン時に使用される言語コード。たとえば、英語の場合はEN、ドイツ語の場合はDEです。

- SAPルーター文字列: ルーター文字列。このパラメータはオプションで、空のままにすることもできます。

- SAP文字セット: この文字セットは、SAPシステムがUNICODEシステムではない場合にのみ必要となります。文字セットの完全なリストは、『Oracle Databaseグローバリゼーション・サポート・ガイド』のロケール・データに関する項を参照してください。たとえば、クロアチア語のデータの場合はEE8ISO8859P2です。UNICODEシステムの場合はUTF8を使用します。

- SAP一時ディレクトリ: (共有フォルダ転送と比較して) FTPベースのファイル転送の場合、データはSAPサーバーのデフォルトの一時ディレクトリに抽出されます。必要に応じて、別のフォルダを使用できます。

- SAP抽出タイムアウト: ODIがタイムアウトになる前にSAPバックグラウンド・ジョブを待機する最大秒数。

- SAP BWバージョン: SAP BWバージョンを次のように入力します。

- SAP BW 7.0以降のシステムの場合、700と入力します。

- SAP BI 3.5システムの場合、350と入力します。

- SAP ERPバージョン& SAP ABAPバージョン: SAP BWコネクタでは使用しません。

- SAP Allow ABAP Upload: ABAPコードをこのSAPシステムでアップロードできる場合、1に設定します。通常、任意の開発以外のシステム用に0に設定します。詳細は、6.7.3項「本番環境でのABAPのアップロードおよびABAPコードの制御」を参照してください。

- SAP Allow ABAP Execute: ABAPコードをこのSAPシステムで実行できる場合、1に設定します。詳細は、6.7.3項「本番環境でのABAPのアップロードおよびABAPコードの制御」を参照してください。

注意:
SAP接続およびFTP接続定義を検証するためのテスト・ボタンはサポートされていません。

- SAPトランスポート層名。: このトランスポート層は、ODIが新しい送信リクエストを作成する場合に使用されます。デフォルトのトランスポート層名はSAPです。SAPシステムで異なるトランスポート層が使用される場合、このフレックスフィールドを適宜更新する必要があります。そうしないと、TRの作成は失敗します。

データ・サーバー名を除いて、SAPデータ・サーバーの定義の際に指定するすべてのパラメータはSAP管理者によって提供される必要があります。これらのパラメータの詳細は、「SAP接続情報の収集」を参照してください。

6.3.2.2 SAP ABAPスキーマの作成

SAP ABAPスキーマを構成する手順は次のとおりです。

1. 『Oracle Data Integratorの管理』の物理スキーマの作成に関する項の説明に従って、SAP ABAPデータ・サーバーの下に物理スキーマを作成します。このスキーマには、特定の構成は必要ありません。SAP ABAPデータ・サーバーの下に物理スキーマが1つのみ必要となります。

2. 適切なコンテキスト内で、『Oracle Data Integratorの管理』の論理スキーマの作成に関する項の説明に従って、この物理スキーマ用の論理スキーマを作成します。

6.4 プロジェクトの設定

SAP BWの機能を使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Data Integratorでの統合プロジェクトの開発』の統合プロジェクトの作成に関する項を参照してください。

次のKMをOracle Data Integratorプロジェクトにインポートします。

- RKM SAP BW

- LKM SAP BW to Oracle (SQLLDR)

- LKM SAP BW to SQL

これらの特定のSAP BW KMに加えて、Oracle Databaseでデータの抽出およびデータの品質チェックを実行する標準Oracle LKM、IKMおよびCKMをインポートします。利用できるKMのリストは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracle Databaseに関する項を参照してください。

6.5 モデルの作成およびリバース・エンジニアリング

この項の内容は次のとおりです。

- SAP BWモデルの作成

- SAP BWモデルのリバース・エンジニアリング

6.5.1 SAP BWモデルの作成

『Oracle Data Integratorでの統合プロジェクトの開発』のモデルの作成に関する項の説明に従って、標準の手順を使用してSAP ABAPテクノロジおよびSAP ABAP論理スキーマに基づくSAP BWモデルを作成します。

6.5.2 SAP BWモデルのリバース・エンジニアリング

RKM SAP BWを使用してカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』のモデルのリバースエンジニアリングに関する項の説明に従って、通常の手順を使用します。この項では、SAP BW固有のフィールドのみについて説明します。

1. SAP BWモデルの「リバース・エンジニアリング」タブでRKM SAP BWを選択します。

2. RKM SAP BWでは、USE_GUI KMオプションをtrueに設定します。

3. モデルを保存します。

4. モデル・エディタ・ツールバーで、「リバースエンジニアリング」をクリックします。

5. セッションが開始されると、ツリー・メタデータ・ブラウザが表示されます。リバースするデータ・ストア・オブジェクト(複数も可)を選択します。

6. ツリー・メタデータ・ブラウザ・ウィンドウで、「リバースエンジニアリング」をクリックします。

リバース・エンジニアリング・プロセスでは、選択されたデータ・ストア・オブジェクトをデータストアとして返します。

注意:
ランタイム・エージェント上でリバース・エンジニアリングを実行する場合は、USE_GUIオプションをfalseに設定する必要があります。このオプションは、Studioに組み込まれたエージェントを使用して、カスタマイズされたリバース・エンジニアリングを開始する場合にのみ使用されます。

6.6 マッピングの設計

Oracleステージング領域にSAP BWデータをロードするマッピングを作成する手順は次のとおりです。

1. SAP BWモデルからソース・データストアを使用してマッピングを作成します。このマッピングは、Oracleターゲットを持つか、またはステージング領域としてOracleスキーマを使用する必要があります。

2. マッピングに結合、フィルタおよびマップ属性を作成します。

3. マッピングの物理的ダイアグラムで、SAP BWソース・データ・オブジェクトのアクセス・ポイントを選択します。このオブジェクトのプロパティ・インスペクタが開きます。

4. 「ロード・ナレッジ・モジュール」タブでLKM SAP BW to Oracle (SQLLDR)を選択します。

6.7 SAP BW統合の考慮事項

この項の内容は次のとおりです。

- ファイル転送の構成

- 実行モード

- 本番環境でのABAPのアップロードおよびABAPコードの制御

- ODI SAPのトランスポート・リクエストの管理

- SAPパッケージおよびSAP機能グループ

- ログ・ファイル

- SAP BWアダプタの制限

6.7.1 ファイル転送の構成

ODI SAPアダプタは、ABAPプログラムを使用してデータを抽出します。SAPシステムからODIエージェントにデータを転送するため、アダプタでは2つの転送モードと各種の構成がサポートされます。

- 共有ディレクトリを使用した転送(推奨)

- FTPベースの転送

6.7.1.1 共有ディレクトリを使用した転送(推奨)

抽出プロセスの間に、ABAPプログラムによって共有フォルダのデータ・ファイルにデータのチャンクが書き込まれます。パフォーマンスを向上させるには、この共有フォルダをODIエージェント・マシンに置く必要があります。この設定でLKM SAP BW to Oracle (SQLLDR)の場合: SQL*Loaderによって、そのデータ・ファイルをローカルに読み込み、そのデータをOracleステージング領域にロードします。LKM SAP BW to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをローカルに読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

フォルダがODIエージェント・マシン上にない場合、ODIエージェントではまず、共有フォルダからエージェントにファイルをコピーする必要があります。そして、次の手順でそのデータをSQL*LoaderまたはJDBC接続を使用してロードします。

構成1: 共有フォルダがODIエージェント・マシンに物理的に配置される場合(推奨)

図6-1 構成1

FTP_TRANSFER_METHOD = FSMOUNT_DIRECTの場合にこの構成を使用します。この構成では、次のデータの移動が行われます。

1. ABAPプログラムによって、FETCH_ BATCH SIZEレコードのチャンクが抽出され、そのレコードが共有フォルダ内のファイルに書き込まれます。

2. LKM SAP BW to Oracle (SQLLDR)の場合: SQL*Loaderによって、このTEMP_DIRからデータ・ファイルが読み込まれ、そのデータがOracleステージング領域にロードされます。LKM SAP BW to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをこのTEMP_DIRから読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. ファイル・サーバー/ODIエージェント・マシンを指すファイル・データ・サーバーを作成します。

- ホスト(データ・サーバー): 該当なし

- ユーザー: 該当なし

- パスワード: 該当なし

2. このファイル・データ・サーバーの下に、ファイル・ホスト・サーバー内の共有フォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- データ・スキーマ: 抽出ファイルを書き込むABAPプログラムによって使用される共有フォルダのパス(UNC)。

- ディレクトリ(作業スキーマ): 共有フォルダをホストするサーバー・マシン上のローカル・パス。このパスは、共有フォルダを経由することなく抽出ファイルにアクセスするため、このマシン上にインストールされたエージェントおよびSQL*Loaderによって使用されます。

注意:
ctl、bad、dscなどの一時ファイルは、ランタイム・エージェントのローカルの一時フォルダに作成されます。デフォルトの一時ディレクトリは、システムの一時ディレクトリです。UNIXでは通常/tmpとなり、Windowsではc:\Documents and Settings\<user>\Local Settings\Tempとなります。KMオプションのTEMP_DIRを使用してこのディレクトリを変更できます。

構成2: 共有フォルダがODIエージェント・マシン上に物理的に配置されていない場合

図6-2 構成2

FTP_TRANSFER_METHOD = FSMOUNTの場合にこの構成を使用します。この構成では、次のデータの移動が行われます。

1. ABAPプログラムによって、FETCH_ BATCH SIZEレコードのチャンクが抽出され、そのレコードが共有フォルダ内のファイルに書き込まれます。

2. ランタイム・エージェントによって、KMのTEMP_DIRオプションで指定されたディレクトリにファイルがコピーされます。

3. LKM SAP BW to Oracle (SQLLDR)の場合: SQL*Loaderによって、このTEMP_DIRからデータ・ファイルが読み込まれ、そのデータがOracleステージング領域にロードされます。LKM SAP BW to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをこのTEMP_DIRから読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. 抽出ファイルがSAPからプッシュされ、SQL*Loader用に取得されるファイル・サーバーを指すファイル・データ・サーバーを作成します。
このデータ・サーバーのパラメータを次のように設定します。

- ホスト(データ・サーバー): 該当なし

- ユーザー: 該当なし

- パスワード: 該当なし

2. このファイル・データ・サーバーで、共有フォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- ディレクトリ(スキーマ): 抽出ファイルを書き込むABAPプログラムとそのファイルをコピーするエージェントによって使用される共有フォルダのパス(UNC)。

- ディレクトリ(作業スキーマ): <未定義>。データ・ファイルがファイル・サーバーのファイル・システムから直接アクセスされることはないため、このパスは空白のままにします。

データ・ファイルは、ローカルの一時フォルダにある共有フォルダからランタイム・エージェントにコピーされます。デフォルトの一時ディレクトリは、システムの一時ディレクトリです。UNIXでは通常/tmpとなり、Windowsではc:\Documents and Settings\<user>\Local Settings\Tempとなります。KMオプションのTEMP_DIRを使用してこのディレクトリを変更できます。

6.7.1.2 FTPベースの転送

抽出プロセスの最後に、ABAPプログラムによってFTPサーバーにデータ・ファイルがアップロードされます。パフォーマンスを向上させるには、このFTPサーバーをランタイム・エージェントと同じマシン上に置く必要があります。

エージェントがFTPサーバーと同じマシン上にない場合は、FTPサーバーからファイルをダウンロードした後に、SQL*LoaderまたはJDBC接続を使用してそのファイルをステージング領域にロードします。このダウンロード処理は、FTP、SFTPまたはSCPを使用して実行されます。

図6-3 構成1: FTPサーバーがODIエージェント・マシンにインストールされている場合

図6-3に示される構成は、FTP_TRANSFER_METHOD = NONEの際に使用されます。この構成では、次のデータの移動が行われます。

1. ABAPプログラムでは、データを抽出し、そのデータ・ファイルをFTPサーバーにアップロードします。

2. LKM SAP BW to Oracle (SQLLDR)の場合: SQL*Loaderによって、そのデータ・ファイルをローカルに読み込み、そのデータをOracleステージング領域にロードします。LKM SAP BW to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをローカルに読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. FTPサーバーを指すファイル・データ・サーバーを作成します。

- ホスト(データ・サーバー): FTPサーバーのホスト名またはIPアドレス

- ユーザー: FTPサーバーにログインするためのユーザー名

- パスワード: ユーザーのパスワード

2. このファイル・データ・サーバーに、抽出ファイルがプッシュされるFTPホスト内のフォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- ディレクトリ(スキーマ): SAP抽出ファイルをアップロードするためのFTPサーバー上のパス。

- ディレクトリ(作業スキーマ): SAP抽出ファイルを含むFTPサーバー・マシン上のローカル・パス。エージェントおよびSQL*LoaderまたはODIフラット・ファイル・ドライバによって、この場所から抽出ファイルを読み込みます。

図6-4 構成2: FTPサーバーがODIエージェント・マシンにインストールされていない場合

図6-4に示される構成は、FTP_TRANSFER_METHODがFTP、SFTPまたはSCPの際に使用されます。この構成では、次のデータの移動が行われます。

1. ABAPプログラムでは、データを抽出し、そのデータ・ファイルをFTPサーバーにアップロードします。

2. ODIエージェントによって、FTPサーバーからKMオプションのTEMP_DIRで指定するディレクトリにそのファイルがダウンロードされます。

3. LKM SAP BW to Oracle (SQLLDR)の場合: SQL*Loaderによって、このTEMP_DIRからデータ・ファイルが読み込まれ、そのデータがOracleステージング領域にロードされます。LKM SAP BW to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをこのTEMP_DIRから読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. FTPサーバーを指すファイル・データ・サーバーを作成します。

- ホスト(データ・サーバー): FTPサーバーのホスト名またはIPアドレス

- ユーザー: FTPサーバーにログインするためのユーザー名

- パスワード: ユーザーのパスワード

2. このファイル・データ・サーバーに、抽出ファイルがプッシュされるFTPホスト内のフォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- ディレクトリ(スキーマ): SAP抽出ファイルをアップロードするためのFTPサーバー上のパス。

- ディレクトリ(作業スキーマ): <未定義>。データ・ファイルがFTPサーバーのファイル・システムから直接アクセスされることはないため、このパスは空白のままにします。

考慮点および制限:

FTPベースのデータ転送では、広範囲にわたる(S)FTPファイル転送を使用し、転送前にすべてのデータをSAPのアプリケーション・サーバー・メモリー内に保持する必要があります。したがって、SAPセッションごとに必要なメモリー量は、抽出されるデータ量に応じて増加するため、データ量の上限を設定することになります。この上限は、SAP内でのセッション・メモリーの設定を増やすことてある程度調節できます。

共有フォルダ・ベースの構成に必要な設定は多少複雑になりますが、すべてのデータをSAP ASのメモリーに格納する必要がなくなるため、推奨される抽出方法です。

6.7.2 実行モード

バックグラウンド処理

デフォルトでは、生成済ABAPコードはABAPレポートとしてデプロイされます。このレポートは、実行時にバックグラウンド処理のためにSAPスケジューラに発行されます。ジョブ・ステータスは、その後ODIによってモニターされます。

KMオプションのJOB_CLASSでは、バックグラウンド・ジョブの優先度を定義します。有効な値(SAP JOB_CLASS設定に対応)は次のとおりです。

JOB_CLASS = Aは最高の優先度です

JOB_CLASS = Bは標準の優先度です

JOB_CLASS = Cは最低の優先度です

ダイアログ・モード処理

後方互換性のため、KMオプションのBACKGROUND_PROCESSINGをfalseに設定できます。生成済ABAPコードはその後、RFCとしてデプロイされます。このRFCは、実行時にデータを抽出するためにODIからコールされます。

ダイアログ・モード処理は非推奨になっており、現在後方互換性のためにのみサポートされています。将来のリリースでは、ダイアログ処理は完全に削除される可能性があります。

6.7.3 本番環境でのABAPのアップロードおよびABAPコードの制御

開発の際には、ODIはABAPコードを生成し、マッピングを実行するたびに、これがSAP開発システムにアップロードされます。この自動的なコードのアップロードによって開発サイクルが早くなります。

マッピングまたはパッケージがユニット・テストされ、開発環境から移行する準備が整うと、他のSAP ABAPコードと同様にSAPのCTS (Change and Transport System)を使用して生成されたSAP ABAPコードをそれぞれのSAPシステムに転送する必要があります。これはSAPの標準的な動作です。このタスクを簡略化するために、開発環境へのアップロードの際にSAPトランスポート・リクエストが自動的に作成されます。生成されたODI SAP ABAPプログラムのトランスポートについては、SAP管理者に確認してください。

開発、テストおよび本番で異なるODIリポジトリを使用している場合、ODIシナリオがそれぞれのSAPシステムのODI ABAPコードと一致していることを確認してください。つまり、SAP CTSを使用してSAP ABAPコードをSAP開発システムからSAP QAシステムにトランスポートし、(トランスポートされるABAPコードを生成した)ODIシナリオをODI開発リポジトリからODI QAリポジトリにトランスポートする必要があります。ODIシナリオのトランスポート方法の詳細は、『Oracle Data Integratorでの統合プロジェクトの開発』の第13章「シナリオの使用」を参照してください。

開発以外のODIでABAPコードをアップロードする必要がなくなると、ABAPコードはSAPのCTSによってトランスポートされるため、このような開発以外のシステムではABAPのアップロードができなくなります。

LKMオプションのUPLOAD_ABAP_CODEをNoに設定することによってアップロードを明示的に無効にできますが、通常、ODIトポロジ内のSAPデータ・サーバー上で定義された「SAP Allow ABAP Upload」フレックスフィールドを使用して無効にされます。つまり、ABAPコードのアップロードは、LKMオプションのUPLOAD_ABAP_CODEおよびSAP Allow ABAP Uploadフレックスフィールドの両方をYesに設定した場合にかぎり実行されます。本番システムへのアップロードを無効にするには、トポロジ内の「SAP Allow ABAP Upload」フレックスフィールドを0に設定するのみで十分です。

ヒント:
開発環境ではABAPコードをアップロードし、QAまたは本番環境ではそのアップロードをスキップするマッピングを構成する手順は次のとおりです。

1. すべてのマッピングにおいて、KMオプションのUPLOAD_ABAP_CODEをYesに設定します。

2. トポロジ内のSAPデータ・サーバーを次のように構成します。

- すべてのSAP開発システムで、SAP Allow ABAP Uploadフレックスフィールドを1に設定します。

- 他のすべてのSAPシステムで、SAP Allow ABAP Uploadフレックスフィールドを0に設定します。

注意:
抽出プロセスを開始する前に、ODIは、マッピングおよびシナリオがSAPにインストールされているコードと一致することを確認します。シナリオが変更されたがABAPコードは再アップロードされていないなどの不一致がある場合は、例外がスローされます。

場合によっては、マッピングのABAP抽出コードのインストールのみを行い、データを抽出しないことが望ましい場合があります(自動インストールの場合など)。この場合、すべてのマッピングは、KMオプションのEXECUTE_ABAP_CODEを各マッピングでFalseに設定してパッケージ内でリンクできます。このパッケージを実行すると、ずべてのABAPコードがインストールされますが、どれも実行されません。

すべてのマッピングの変更を回避(前述のようにEXECUTE_ABAP_CODEをFalseに設定)するために、かわりにODI DataServerのSAP Allow ABAP Executeフレックスフィールドを使用して、すべてのSAP ABAPの実行を無効にできます。このフレックスフィールドが無効の場合、KMオプションのEXECUTE_ABAP_CODEがTrueに設定されていてもABAPコードは実行されません。

手動アップロード

場合によっては、開発システムでも自動アップロードが許可されないことがあります。そのような場合、KMオプションのMANUAL_ABAP_CODE_UPLOADにより手動アップロードが可能です。trueに設定すると、生成済ABAPコードを含むテキスト・ファイルがODIで作成されます。テキスト・ファイルの名前は、デフォルトではREPORT_ ZODI_<Mapping Id>_<SourceSet Id>.ABAPのような名前です。このコードはSAP管理者に渡され、インストールされます。インストールされると、ODIマッピングはMANUAL_ABAP_CODE_UPLOADおよびUPLOAD_ABAP_CODEを使用して実行できるようになり、両方の設定がfalseに戻されます。

6.7.4 ODI SAPのトランスポート・リクエストの管理

開発の際には、マッピングを実行するたびに、ABAPコードがSAPシステムにアップロードされます。より正確には、次のようになります。

SAPデータを抽出するODIマッピングは、1つ以上のABAP抽出プログラムを生成します(たとえば、結合場所がステージングに設定されると、2つの抽出ジョブが作成されます)。デフォルトでは、1つのマッピングのすべてのABAP抽出プログラムが1つのSAP機能グループに割り当てられます。別のマッピングのABAP抽出プログラムは、別のSAP機能グループに割り当てられます。デフォルトの機能グループ名は、ZODI_FGR_<Mapping Id>のような名前です。

アップロード中、各ODIマッピング(各SAP機能グループ)に対してSAP CTSトランスポート・リクエストが作成されます。このため、SAP CTSを介して生成されたODI ABAP抽出プログラムの詳細な開発が可能になります。

グループ化(バックグラウンド処理)

複数のODIマッピングのABAPコードをより大まかなデプロイメント制御のために単一のトランスポート・リクエストにグループ化する必要がある場合、次の手順を実行する必要があります。

- すべてのABAPレポートの共通接頭辞にKMオプションのSAP_REPORT_NAME_PREFIXを設定します。たとえば、すべてのマッピングでZODI_DWH_SALES_にします。

- すべての個別マッピングにKMオプションのABAP_PROGRAM_NAMEを選択します。たとえば、LOAD01、LOAD02などです。

これらのサンプル設定の結果は、ZODI_DWH_SALES_LOAD01、ZODI_DWH_SALES_LOAD02などと呼ばれる、ABAPレポートを含む単一のトランスポート・リクエストになります。

グループ化(ダイアログ・モード処理、非推奨)

複数のODIマッピングのABAPコードをより大まかな開発制御のための単一のトランスポート・リクエストにグループ化する必要がある場合、これらのマッピングのすべてのLKMのKMオプションのSAP_FUNCTION_GROUPをユーザー定義の値(ZODI_FGR_DWH_SALESなど)に設定できます。こうすることによって、ODIはすべてのABAP抽出プログラムを同じSAP機能グループに生成し、このグループは単一のトランスポート・リクエストに結合されます。サイトの有効な機能グループ名は、SAP管理者に確認してください。

ヒント:
生成されたABAP抽出プログラムの名前は、デフォルトではZODI_<Mapping Id>_<SourceSet Id>のような名前です。このことによって、一意のプログラム名による便利な開発を行えます。MappingIdは変更されませんが、ODIマッピングの特定の変更によって、SourceSetIdが変更され、結果としてそれぞれの抽出プログラム名が変更されます。したがって、開発が安定した後にはユーザー定義のプログラム名を使用することをお薦めします。ABAPプログラム名は、LKMオプションのABAP_PROGRAM_NAMEの値を定義することによって設定できます(ZODI_DWH_SALES_DATA01など)。該当する命名規則については、SAP管理者に確認してください。

トランスポート・リクエストの説明

ODIでトランスポート・リクエストが作成されると、トランスポート・リクエストの説明が、KMオプションのSAP_TRANSPORT_REQUEST_DESCで提供されたテキストに設定され、KMオプションのFUNCTION_GROUPで定義された機能グループに適用されます。

デフォルトでは、ODIステップ名(通常はマッピング名)が使用されます。

ODI:<%=odiRef.getPackage("PACKAGE_NAME")%>のようなコード生成式は、いくつかのマッピングを1つのSAP機能グループ / SAPトランスポート・リクエストにグループ化する場合に役立つ場合があります。

6.7.5 SAPパッケージおよびSAP機能グループ

SAPパッケージ

ODI SAPアダプタによってインストールされたすべてのSAPオブジェクトは、次のSAPパッケージにグループ化されます。

- ZODI_RKM_PCKGは、任意のRKM関連オブジェクトを含みます。これらのオブジェクトは開発フェーズ中に使用されます。

- ZODI_LKM_PCKGは、任意のSAP LKMで生成された任意の抽出プログラムを含みます。

SAP管理者からリクエストされた場合、KMオプションのSAP_PACKAGE_NAME_ODI_DEVおよびSAP_PACKAGE_NAME_ODI_PRODを使用して、これらのデフォルト名を上書きできます。これらの値は、初回インストール時に設定する必要があります。後で変更する場合、ODI SAPアダプタを(事前にアンインストールして)再インストールする必要があります。

LKMオプションのSAP_PACKAGE_NAMEで常に、RKMの初回インストール時に指定したものと同じ値を使用する必要があることに注意してください。つまり、RKMの初回インストール時に非デフォルト値を使用すると、すべてのマッピングでLKMオプションのSAP_PACKAGE_NAMEにその非デフォルト値を設定する必要があります。

SAP機能グループ

すべてのSAP機能モジュールは、次のSAP機能グループにグループ化されます。

- ZODI_FGRは、メタデータの取得用モジュールなどのデプロイメント時に必要な任意の機能モジュールを含みます。これらの機能モジュールは、RKMによって初回インストール時にインストールされます。
RKMの初回インストール時に、RKMオプションのSAP_FUNCTION_GROUP_ODI_DEVを使用してデフォルト名を上書きできます。

- ZODI_FGR_PRODは、ABAPレポート実行ステータスのモニタリング用など、本番の実行時に必要な任意の機能モジュールを含みます。これらの機能モジュールは、RKMによって初回インストール時にインストールされます。
RKMの初回インストール時に、RKMオプションのSAP_FUNCTION_GROUP_ODI_PRODを使用してデフォルト名を上書きできます。

- ZODI_FGR_PROD_...は、任意のデータ抽出機能モジュールを含みます。そのような機能モジュールは、非推奨のダイアログ・モード(BACKGROUND_PROCESSING = false)の使用時にLKMによって生成されます。

デフォルトでは、すべてのマッピングで独自の機能グループが使用されます。デフォルト値は、前述の2つの機能グループ名とは関係ないLKMオプションのSAP_FUNCTION_GROUPを使用して上書きできます。

詳細は、6.7.4項「ODI SAPのトランスポート・リクエストの管理」を参照してください。

6.7.6 ログ・ファイル

RKMおよびLKMの実行中、多くのメッセージがODIのロギング機能のログに記録されます。ODIログ・ファイルおよびその他のログ・ファイルにあるこれらのメッセージには、有用なトラブルシューティングの詳細が含まれていることがあります。ODIのロギング機能の詳細は、『Oracle Data Integratorの管理』のODIコンポーネントの実行時ロギングに関する項を参照してください。表6-2には、各種ログ・ファイルとその使用方法が示されています。

表6-2 ログ・ファイル

デフォルトのログ・ファイル名

KM /フェーズ

コンテンツ

<ODI Logs>

RKM

メタデータ取得の実行ログ

<ODI Logs>

RKM

RKM用SAP RFCの初回インストールに関する情報

<ODI Logs>

LKM - 生成時

ABAPエクストラクタのコード生成に関する情報

<ODI Logs>

LKM - 実行時

ABAPエクストラクタのインストールに関する情報

<ODI Logs>

LKM - 実行時

デルタ抽出に関する情報

<System Temp Dir or local FTP dir>/ ZODI_<Mapping Id>_<SrcSet>_<Context>.log

LKM - 実行時

SQL*Loaderログ・ファイル

<System Temp Dir or local FTP dir>/ ZODI_<Mapping Id>_<SrcSet>_<Context>.out

LKM - 実行時

SQL*Loader実行時のOS標準出力には、SQL*Loaderがインストールされていない場合などの情報を含めることができます。

<System Temp Dir or local FTP dir>/ ZODI_<Mapping Id>_<SrcSet>_<Context>.err

LKM - 実行時

SQL*Loader実行時のOSエラー出力には、SQL*Loaderがインストールされていない場合などの情報を含めることができます。

6.7.7 SAP BWアダプタの制限

SAP ABAP BWアダプタには次の制限があります。

- ODIトポロジ・マネージャ内のSAP接続定義を検証する「テスト」ボタンはサポートされていません。

- 表のリバース・エンジニアリング後は、SAP BWデータ・ストア・タイプ(InfoCube、InfoObject、ODS/DSO、OpenHub、階層およびテキスト表)を変更できません。

- SAP ABAP KMでは、順序付けられた結合のみをサポートします。

- 完全外部結合および右外部結合はサポートされません。

- 1対多のリレーションシップ(InfoCubeおよび関連付けられたInfoObject結合)では、最初のデータ・ターゲットはInfoCube、次はInfoObjectsおよびそのTextTablesにする必要があります。

- InfoCubeは、ソースの複数のIOに左外部結合できます。

注意:

- ソースのText表に結合できるのは、これらのInfoObjectのいずれか1つのみです。

- 複数のInfoObjectをそれぞれのText表にステージングで結合できます。

- 階層データストアは、ソース上で他のどのSAP BWオブジェクトとも結合できません。

- マスター・データを持たないInfoObjectsのテキスト・データストアは、ソース上で他のどのSAP BWオブジェクトとも結合できません。

- OpenHubデータストアは、ソースで他のどのSAP BWオブジェクトとも結合できません。

- 属性RSHIENMのみが、HIER_0GL_ACCOUNT.RSHIENM = 'MYHIER1'などの定数文字列値を使用してフィルタ処理できます。

7 SAP ABAP ERP

この章では、Oracle Data IntegratorでのSAP ERPナレッジ・モジュールの使用方法について説明します。

この章の内容は次のとおりです。

- 7.1項「概要」

- 7.2項「インストールおよび構成」

- 7.3項「トポロジの定義」

- 7.4項「プロジェクトの設定」

- 7.5項「モデルの作成およびリバース・エンジニアリング」

- 7.6項「マッピングの設計」

- 7.7項「SAP ERP統合の考慮事項」

7.1 概要

SAP ERPナレッジ・モジュールにより、Oracle Data IntegratorはSAP Java Connector (SAP JCo)ライブラリを使用してSAP-ERPシステムに接続できます。これらのアダプタでは、SAP-ERPシステムから大量のデータを抽出できます。

SAP ERPアダプタを初めて使用する場合は、『Oracle Data IntegratorのためのSAP ABAP ERPアダプタ・スタート・ガイド』を確認することをお薦めします。

これには、完全な前提条件のリストとSAP接続テストを含む手順を追った説明が含まれています。

7.1.1 概念

Oracle Data IntegratorのSAP ERPナレッジ・モジュールは、次のような目的で、SAP-ERPシステムの成熟したな統合方法を使用しています。

- SAP ERPメタデータのリバース・エンジニアリング

- SAP ERPシステム(ソース)からOracleステージング領域またはOracle以外のステージング領域へのデータの抽出およびロード

7.1.2 ナレッジ・モジュール

Oracle Data Integratorには、表7-1に示されている、SAP ERPデータを処理するためのナレッジ・モジュールが用意されています。

Oracle Data IntegratorのSAP ERPナレッジ・モジュールでは、SAP JCoライブラリを使用した、SAP ERPシステムからの統合が可能です。このKMのセットには、次の機能があります。

- SAP ERPシステムからSAPデータを読み取ります。

- Oracleステージング領域またはOracle以外のステージング領域にこのSAPデータをロードします。

- SAPメタデータをリバース・エンジニアリングし、必要なメタデータのみを選択するようツリー・ブラウザに指示します。

- フレックスフィールドを使用してSAPの表タイプ(透過、クラスタおよびプール)をマップします

表7-1 SAP ERPナレッジ・モジュール

ナレッジ・モジュール

説明

LKM SAP ERP to Oracle (SQLLDR)

SQL*LOADERコマンド行ユーティリティを使用して、SAP ERPからフラット・ファイルにデータを抽出し、これをOracleステージング領域にロードします。

LKM SAP ERP to SQL

JDBC接続を使用して、SAP ERPからフラット・ファイルにデータを抽出し、これをステージング領域にロードします。

RKM SAP ERP

モジュール、アプリケーション・コンポーネント、表、列、主キー、外部キーおよびインデックスのSAP固有のメタデータを取得するリバース・エンジニアリング・ナレッジ・モジュール。

RKM SAP ERP接続テスト

このRKMは、Oracle Data IntegratorからのSAP接続のテストに使用します。詳細は、付録B「SAP接続テスト」を参照してください。

7.1.3 SAP ABAP統合プロセスの概要

RKM SAP ERPにより、Oracle Data IntegratorではSAP JCoライブラリを使用してSAP ERPシステムに接続し、SAPメタデータのカスタマイズされたリバース・エンジニアリングを実行できます。

LKM SAP ERP to Oracle (SQLLDR)およびLKM SAP ERP to SQLは、SAP ERPシステム(ソース)からOracleステージング領域またはOracle以外のステージング領域にデータを抽出およびロードする役割を果たします。

注意:
SAP ERPへのアクセスはABAPを使用して行われます。その結果、接続に使用されるテクノロジはSAP ABAPになります。

7.1.3.1 リバース・エンジニアリング・プロセス

リバース・エンジニアリングではRKM SAP ERPを使用します。

このKMでは、SAPメタデータを取得するための専用RFCプログラムを自動インストールします。また、すべてのSAP表のリストを抽出し、オプションでメタデータ・ブラウザのグラフィック・インタフェースにこのリストを表示します。ユーザーは、リバース・エンジニアリングする表をこのリストから選択します。

リバース・エンジニアリング・プロセスによって、表、主キー、外部キーおよびインデックスが取得されます。

7.1.3.2 統合プロセス

SAPからのデータ統合は、LKM SAP ERP to Oracle (SQLLDR)およびLKM SAP ERP to SQLによって処理されます。

LKM SAP ERP to Oracle (SQLLDR)は、ABAPを経由したSAPからのマッピング・ソーシングと、Oracle Databaseへのステージング領域の配置に使用され、LKM SAP ERP to SQLは、Oracle以外のステージング領域用に使用されます。

KMではまず、指定されたマッピングに必要な抽出プロセスに対応する、最適化されたABAPコードを生成します。このコードには、ソースのSAPサーバー内で直接処理できるフィルタおよび結合が含まれます。このABAPプログラムは、自動的にアップロードされ、OdiSAPAbapExecuteツールを使用して実行されて、SAP内に抽出ファイルが生成されます。

その後、KMは、この抽出ファイルを事前に構成されたFTPサーバーまたは共有ディレクトリのいずれかに転送します。さらに、このファイルは、このサーバーからODIエージェントがあるマシンに、FTP、SFTPまたはSCPを使用してダウンロードされるか、またはコピーされ、最後にSQL*LoaderまたはJDBC接続を使用してそのステージング領域にロードされます。また、このエージェントが、FTPサーバーのディスク上にある抽出ファイルを直接読み取ることもできます。詳細は、7.7.1項「ファイル転送の構成」を参照してください。

他の統合プロセス(データの整合性チェックおよび統合)は、他のOracle Data Integration KMで管理されます。

7.2 インストールおよび構成

SAP ERPデータでの作業を開始する前に、この項の情報を必ず読んでください。

- システム要件と動作要件

- テクノロジ固有の要件

- 接続性要件

7.2.1 システム要件と動作保証情報

インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。

サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。

http://www.oracle.com/technology/products/oracle-data-integrator/index.html

7.2.2 テクノロジ固有の要件

SAP ERPの一部のナレッジ・モジュールでは、SAPおよびOracleデータベースに固有の機能を使用します。この項では、これらの機能に関連する要件をリストします。

- アダプタとの互換性があるJCoバージョンを使用する必要があります。サポートされるJCoバージョンのリストはOracle Technology Network (OTN)で入手できます。詳細は、7.2.1項「システム要件と動作保証情報」を参照してください。

- Oracle Data IntegratorおよびJCoの両方と互換性があるJVMバージョンを使用する必要があります。

- このアダプタは、SAPシステムからODIエージェントにデータを転送するための転送モードとして、共有ディレクトリを使用したデータ転送とFTPを経由するデータ転送の2つをサポートしています。詳細および制約については、7.7.1項「ファイル転送の構成」を参照してください。
ファイル転送モードの選択に応じて、次の要件を満たす必要があります。

- 共有ディレクトリを使用したデータ転送(推奨される転送方式)
LKM SAP ERP to Oracle (SQLLDR)には、SAPシステムとODIエージェントとの間で共有されるフォルダが必要です。SAPアプリケーション・サーバーでは、SAPシステムとODIエージェント・マシンからアクセス可能なフォルダにデータを書き込むことでデータを転送します。これは通常、ODIエージェント・マシンのフォルダをSAPシステムと共有することで行われます。共有フォルダは、必ずしもODIエージェント・マシン上に置く必要はないことに注意してください。共有フォルダがODIエージェント・マシンとSAPシステムの両方からアクセス可能であるかぎりは、サード・マシン上に共有フォルダを置くこともできます。

注意:
セキュリティ上の理由から、SAPサーバー上にあるフォルダは共有しないでください。そのかわりに、ODIエージェント・マシンのフォルダをSAPシステムと共有するか、または共有ファイル・サーバーとしてサード・マシンを使用します。

共有フォルダは、SAPシステムにアクセスできる必要があります。基盤となるオペレーティング・システムのみへのアクセスでは不十分です。つまり、フォルダはSAPトランザクションAL11内で宣言される必要があり、その結果、フォルダはAL11内で正常に開かれます。

- FTP経由のデータ転送
LKM SAP ERP to Oracle (SQLLDR)では、SAP ERPシステムからのデータのアップロードにFTPサーバーが必要です。このデータの読取りは、マッピングを実行するエージェントによって(このエージェントがFTPサーバー・マシン上で実行されている場合)ローカルで実行されるか、またはリモートで(このエージェントがFTPサーバーとは異なるマシン上にある場合)実行されます。このFTPサーバーは、SAP ERPマシンとエージェント・マシンの両方からネットワーク経由でアクセスできる必要があります。

- 「LKM SAP ERP to Oracle (SQLLDR)」のみ: LKM SAP ERP to Oracle (SQLLDR)を使用したマッピングの実行時には、エージェントを実行するマシン上にSQL*Loaderが必要です。SQL*Loaderは、SAPからOracleステージング領域に抽出されたデータのロードに使用されます。

7.2.3 接続性要件

Oracle Data Integratorは、JCoを使用してSAP ERPデータをホストするSAP-ERPシステムに接続します。また、SAPシステムから抽出されたデータのホストには、FTPサーバーまたは共有ディレクトリを使用します。

この項では、次の必要な接続情報について説明します。

- JCoのインストールと構成

- SAPシステムへのODI SAPコンポーネントのインストール

- SAP環境設定の検証

- SAP接続情報の収集

- FTP接続情報の収集

- 共有ディレクトリ情報の収集

- オープン・ツールの追加

7.2.3.1 JCoのインストールと構成

SAPアダプタでは、JCoを使用してSAPシステムに接続します。プロジェクトを続行する前にJCoを構成する必要があります。

JCoをインストールおよび構成する手順は次のとおりです。

1. http://service.sap.com/connectorsから構成でサポートされるJCoバージョンをダウンロードします。Oracle Technology Networkから入手できる互換性マトリックスでサポートされるJCoバージョンを確認します。
http://www.oracle.com/technology/products/oracle-data-integrator/10.1.3/htdocs/documentation/odi_certification.xls

注意:

- JCo 3.0.2以降のバージョンが必要です

- 使用中のオペレーティング・システムおよびシステム・アーキテクチャ(32ビットまたは64ビット)と一致するSAP JCoパッケージを選択します。たとえば、ODIを32ビットのJVMで実行している場合、CPUおよびOSが64ビットでも、32ビットのSAP JCoをダウンロードする必要があります。32ビットと64ビットのアーキテクチャを組み合せると、SAP JCoで必要なネイティブ・ライブラリで接続失敗が発生するため、この組合せは不可能です。

- odi.confには、ODI Studio用に使用するJDKパスが含まれています。

2. 適切な配布パッケージを一時ディレクトリ<sapjco-install-path>に解凍します。

3. プラットフォームに対応するJCoドキュメント(<sapjco-install-path>/javadoc/installation.html)に記載されているインストール手順に従います。

4. 必要なファイル(sapjco3.jarおよびsapjco3.dll/.so)を<ODI_HOME>/odi/sdk/libディレクトリ(ODI Studio、ODIスタンドアロン・エージェント)および<WLS_DOMAIN>/libディレクトリ(JEEエージェント)にコピーします。

5. SAPを使用してODIコンポーネント(ODI Studio、スタンドアロン・エージェント)を再起動します。

6. JCoインストールをチェックします。

注意:
SAP Secure Network Connectionsの場合、次のことを確認してください。

- 環境変数SECUDIRが、証明書ファイルを含むディレクトリを指していること。

- 環境変数SNC_LIBが、sapcrypto.dll/libsapcrypto.so (Linux用)を含むディレクトリを指していること。

証明書およびCryptoライブラリの詳細は、SAP管理者に問い合せてください。

7.2.3.2 SAPシステムへのODI SAPコンポーネントのインストール

ODI SAPアダプタは、いくつかのODI SAP RFCを使用してSAPシステムと通信します。これらのRFCは、SAP送信リクエストを使用してSAP Basisチームがインストールします。付録C「ODI SAPコンポーネントのインストール」に示す手順に従い、ODI SAPコンポーネントをインストールして、SAPユーザーに必要な認可を割り当てる場合は、SAP管理者に連絡してください。

7.2.3.3 SAP環境設定の検証

付録C「ODI SAP設定の検証」には、ODI SAPアダプタで使用する場合のSAP環境の基本検証に関する手順があります。SAP Basisチームに連絡してすべての検証を実行し、画面ショットのような検証結果と確認内容をお知らせください。

7.2.3.4 SAP接続情報の収集

SAP ERPシステムに接続するには、SAP管理者に次の情報を要求する必要があります。

- SAPグループ・ログオンの場合:

- SAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- メッセージ・サーバー: SAP Message ServerのIPアドレス/ホスト名。

- メッセージ・サーバー・ポート: SAP Message Serverのポート番号またはサービス名。

- グループ/サーバー: SAPログオン・グループの名前。

- SAPサーバー・ログオンの場合:

- SAP ERPシステムのIPアドレスまたはホスト名: SAPが実行されているホストのIPアドレスまたはホスト名。

- SAPクライアント番号: SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。

- SAPシステム番号: Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号。

- SAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- SAP ERPシステムのIPアドレスまたはホスト名: SAPが実行されているホストのIPアドレスまたはホスト名。

- SAPユーザー: SAPシステムにログオンするためにユーザーに指定される一意のユーザー名。

- SAPパスワード: ユーザーのログインに使用される、大文字と小文字を区別するパスワード。

- SAP言語: 英語はEN、ドイツ語はDEなど、ログイン時に使用される言語コード。

- SAPクライアント番号: SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。

- SAPシステム番号: Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号。

- SAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- SAP SNC接続プロパティ(オプション)/SAPルーター文字列(オプション): SAPでは、SNCおよびSAPルーターを使用してセキュリティを強化しています。これは、これらのセキュリティの実装時に使用されます。

- SAPトランスポート・レイヤー名: SAPランドスケープ内のトランスポート・レイヤーを一意に識別する文字列。これにより、ODIは、SAPでの後のデプロイメントでトランスポート・リクエストを作成できます。

- SAP Temporary Directory (SAP_TMP_DIR): このパラメータは、SAPシステムでのカスタム作業ディレクトリを定義する場合に使用します。これは、FTP転送モードの場合のみ適用されます。このパスは、抽出時に一時ファイルに使用されます。デフォルト値(フレックスフィールド値は空白のまま)では、SAPプロファイルで定義されるDIR_HOMEパスを使用します。
一時ファイルに使用されるディレクトリをSAPアプリケーション・サーバーで指定します。パスの最後は、SAPアプリケーション・サーバーが稼働するOSに応じて、スラッシュまたはバックスラッシュにしてください。ODI SAPユーザーには、このディレクトリに対する読取りおよび書込み権限が必要です。

注意:
デフォルト値(空のFF値)は、クリティカルなSAPシステムの場合は使用しないでください。抽出時に一時ファイルが多すぎると、それぞれのファイル・システムがいっぱいになり、SAPシステムで深刻な問題が生じることがあります。SAP開発システムの場合も、デフォルト値をオーバーライドすることを強くお薦めします。

- SAP ABAPバージョン: SAPシステムのバージョン

- SAP文字セット: この文字セットは、SAPシステムがUNICODEシステムではない場合にのみ必要となります。文字セットの完全なリストは、『Oracle Databaseグローバリゼーション・サポート・ガイド』のロケール・データに関する項を参照してください。たとえば、クロアチア語のデータの場合はEE8ISO8859P2です。UNICODEシステムの場合はUTF8を使用します。

注意:
前述の接続データ(SAP SNC接続プロパティおよびSAPルーター文字列を除く)はすべて必須であり、SAP管理者から要求されます。接続設定時には、SAP管理者にサポートを依頼することを検討することもできます。

7.2.3.5 FTP接続情報の収集

FTP接続情報の収集は、FTPを使用したデータ転送を計画する場合にのみ適用されます。SAP ERPシステムでは、FTPプロトコルを使用してデータをサーバーにプッシュします。システム管理者から次の情報を収集します。

- FTPサーバー名またはIPアドレス

- FTPログインID

- FTPログイン・パスワード

- 一時データ・ファイルを格納するためのディレクトリ・パス

FTPサーバーがSAPシステムとODIエージェント・マシンの両方からアクセスできることを検証してください。

7.2.3.6 共有ディレクトリ情報の収集

共有ディレクトリ情報の収集は、共有ディレクトリを使用したデータ転送を計画する場合にのみ適用されます。SAPシステムでは、共有フォルダにデータをプッシュします。後述の設定のため、システム管理者から次の情報を収集します。

- 共有フォルダの(UNC)パス名

共有フォルダがSAPシステムとODIエージェント・マシンの両方からアクセスできることおよび、アクセスに対話型認証が必要ないことを確認します。

共有フォルダは、<sid>admユーザーを使用してSAPシステムからアクセスできる必要があること、およびODIエージェントを起動するオペレーティング・システム・ユーザーからアクセスできる必要があることに注意してください。

7.2.4 オープン・ツールの追加

オープン・ツールをインストールしてODIに追加する手順の詳細は、『Oracle Data Integratorツール・リファレンス』を参照してください。この項では、SAP ABAP固有のステップについてのみ説明します。

1. デザイナに接続します。

2. 「ファイル」→「オープン・ツールの追加/削除」…を選択します。

3. 「オープン・ツールの追加/削除」ウィンドウで、「オープン・ツール・クラス名」フィールドに次の名前を入力します。
oracle.odi.sap.km._OdiSapAbapExecuteStoppable

4. 「オープン・ツールの追加」をクリックします。

5. オープン・ツールが次のように表示されます。

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

7.3 トポロジの定義

SAP統合に使用する2つのデータ・サーバーを定義する必要があります。定義するのは、SAP ABAPデータ・サーバーとファイル・データ・サーバーです。

1. ファイル・データ・サーバーの作成

2. SAP ABAPデータ・サーバーの作成

7.3.1 ファイル・データ・サーバーの作成

このデータ・サーバーはFTPサーバーまたはファイル・サーバーに相当し、抽出ファイルはSAPからここにプッシュされ、ロード用に取得されます。

7.3.1.1 ファイル・データ・サーバーの作成

『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のファイル・データ・サーバーの作成に関する項の説明に従って、ファイル・データ・サーバーを作成します。この項では、SAP ERPに固有のパラメータについて説明します。

データ転送モードの選択に応じて、このデータ・サーバーは次のいずれかを指す必要があります。

- 既存のFTPサーバー。抽出ファイルがSAPからここにプッシュされ、ロード用に取得されます。

- 共有フォルダ。SAPシステムにより抽出ファイルがここに書き込まれ、SQL*LoaderまたはODIフラット・ファイル・ドライバからそのファイルが取得されます。このスキーマは、抽出ファイルがプッシュされるFTPホスト内のフォルダを表します。

データ・サーバーのパラメータはデータ転送モードによって異なることに注意してください。

- FTPを使用してデータを転送する場合は、次のようにパラメータを設定します。

- ホスト(データ・サーバー): FTPサーバーのIPホスト名またはIPアドレス

- ユーザー: FTPサーバーにログインするためのユーザー名

- パスワード: ユーザーのパスワード

- 共有ディレクトリを使用してデータを転送する場合は、次のようにパラメータを設定します。

- ホスト(データ・サーバー): 該当なし

- ユーザー: 該当なし

- パスワード: 該当なし

- 「LKM SAP ERP to SQL」で使用する場合、これらの追加のパラメータを構成する必要があります。

- JDBCドライバ・クラス: com.sunopsis.jdbc.driver.file.FileDriver

- JDBC URL: jdbc:snps:dbfile?ENCODING=UTF8
前述のURLはSAP UNICODEシステム用です。非UNICODEシステムの場合のENCODINGパラメータの詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のファイル・データ・サーバーの作成に関する項を参照してください。このURLで選択するエンコーディングは、SAPアプリケーション・サーバーで使用するコード・ページと一致する必要があります。

詳細は、7.7.1項「ファイル転送の構成」を参照してください。

7.3.1.2 ファイル・スキーマの作成

このファイル・データ・サーバーでは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のファイル物理スキーマの作成に関する項の説明に従って、物理スキーマを作成します。

このスキーマは、FTPホストまたはファイル・サーバーのいずれかにあるフォルダを表します。これは、抽出ファイルがプッシュされるフォルダであることに注意してください。データ転送モードに応じて、データおよび作業スキーマを次のように指定します。

- FTPファイル転送の場合:

- ディレクトリ(スキーマ): リモートの場所から抽出ファイルをアップロードまたはダウンロードするためのFTPサーバー上のパス。このパスは、SAP ERPシステムからFTPサーバーに抽出ファイルをアップロードする際に使用されます。また、抽出ファイルをダウンロードするリモート・エージェントによって使用されます。このパスにはスラッシュを使用する必要があり、スラッシュ文字で終了する必要があります。

- ディレクトリ(作業スキーマ): FTPサーバー・マシン上のローカル・パス。このパスは、FTPを経由することなく抽出ファイルにアクセスするため、このマシン上にインストールされたエージェントによって使用されます。このアクセス方法は、LKM SAP ERP to Oracle (SQLLDR)またはLKM SAP ERP to SQLのFTP_TRANSFER_METHODパラメータがNONEに設定されている場合に使用されます。作業スキーマはローカル・ディレクトリの場所です。そのため、スラッシュまたはバックスラッシュは、オペレーティング・システムに応じて使用する必要があります。このパスは、スラッシュまたはバックスラッシュで終了する必要があります。
データ・スキーマと作業スキーマで指定されたパス名は必ずしも同じ名前ある必要はありません。FTPサーバーが、/sapfiles (ディレクトリ(スキーマ)の値)という名前のFTPディレクトリにアクセスできる一方、ローカルでは、c:\inetpub\ftproot\sapfiles (ディレクトリ(作業スキーマ)の値)にあるファイルがアクセスされます。

- 共有ディレクトリ転送の場合:

- ディレクトリ(スキーマ): 抽出ファイルの書込みおよび読取りを行う共有フォルダのパス(UNC)。SAPシステムによってこのフォルダに抽出ファイルが書き込まれます。また、リモート・エージェントによって、抽出ファイルをODIエージェント・マシンにコピーする場合にも使用されます。このパスには、SAPアプリケーション・サーバーのオペレーティング・システムに応じてスラッシュまたはバックスラッシュを使用し、その終わりにはスラッシュ文字またはバックスラッシュ文字を使用する必要があります。

- ディレクトリ(作業スキーマ): 共有フォルダをホストするサーバー・マシン上のローカル・パス。このパスは、共有フォルダを経由することなく抽出ファイルにアクセスするため、このマシン上にインストールされたエージェントによって使用されます。このアクセス方法は、LKM SAP ERP to Oracle (SQLLDR)またはLKM SAP ERP to SQLのFTP_TRANSFER_METHODパラメータがFSMOUNT_DIRECTに設定されている場合に使用されます。作業スキーマはローカル・ディレクトリの場所です。そのため、スラッシュまたはバックスラッシュは、オペレーティング・システムに応じて使用する必要があります。このパスは、スラッシュまたはバックスラッシュで終了する必要があります。

詳細は、7.7.1項「ファイル転送の構成」を参照してください。

File Server for SAP ABAPと呼ばれるファイル論理スキーマを作成して、物理スキーマにマップします。この論理スキーマ名はあらかじめ定義されており、SAP ABAPのファイル・サーバーにする必要があります。

7.3.2 SAP ABAPデータ・サーバーの作成

このSAP ABAPデータ・サーバーはSAPサーバーに相当し、ここからデータが抽出されます。

7.3.2.1 SAP ABAPデータ・サーバーの作成

SAP ABAPデータ・サーバーを構成する手順は次のとおりです。

1. 『Oracle Data Integratorでの統合プロジェクトの開発』のデータ・サーバーの作成に関する項の説明に従って、標準の手順を使用してSAP ABAPテクノロジ用のデータ・サーバーを作成します。このデータ・サーバーではSAP接続情報を使用します。

2. 接続パラメータを設定します。

- 名前: ODIに表示されるデータ・サーバーの名前。たとえば、SAP_ERPなどです。

- ユーザー: SAP管理者から提供されたSAP ERPユーザー。

- パスワード: このユーザーのSAP ERPパスワード。このパスワードでは大文字と小文字が区別されます。

3. ログオン・タイプに固有の接続パラメータを設定します。

- SAPグループ・ログオンの場合(「フレックスフィールド」タブ)

- フレックスフィールドSAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

- フレックスフィールドSAP Message Serverホスト: SAP Message ServerのIPアドレス/ホスト名。

- フレックスフィールドSAP Message Serverポート: SAP Message Serverのポート番号またはサービス名。

- フレックスフィールドSAPグループ: SAPログオン・グループの名前。

- SAPサーバー・ログオンの場合

- ホスト(データ・サーバー): SAP ERPシステムのIPアドレスまたはホスト名。

- フレックスフィールドSAPクライアント番号: SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。

- フレックスフィールド「SAPシステム番号」: Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号。

- フレックスフィールドSAPシステムID: ランドスケープにおける3文字で一意のSAPシステムの識別子。

4. SAPセキュア・ネットワーク設定を設定します(オプション)。

- フレックスフィールドSNC: セキュリティのレベル: 「SNCなし」の場合は0、「認証」の場合は1、「整合性」の場合は2、「暗号化」の場合は3、「使用可能な最大セキュリティ設定」の場合は9

- フレックスフィールドSNC: クライアント名: SNCクライアント名

- フレックスフィールドSNC: パートナ名: SNCパートナ名

5. 「フレックスフィールド」タブに、このデータ・サーバーの他のフレックスフィールド値を設定します。

- SAP言語: ログイン時に使用される言語コード。たとえば、英語の場合はEN、ドイツ語の場合はDEです。

- SAPルーター文字列: ルーター文字列。このパラメータはオプションで、空のままにすることもできます。

- SAP文字セット: SAPシステムの文字セット。この情報は、データのロード時にSQLLDRで使用されます。UNICODE SAPシステムの場合は、デフォルト値のUTF8を使用します。文字セットの完全なリストは、『Oracle Databaseグローバリゼーション・サポート・ガイド』のロケール・データに関する項を参照してください。たとえば、クロアチア語のデータの場合はEE8ISO8859P2です。

- 文字セットの完全なリストは、『Oracle Databaseグローバリゼーション・サポート・ガイド』のロケール・データ: 文字セットに関する項を参照してください。たとえば、クロアチア語のデータの場合はEE8ISO8859P2です。

- SAP一時ディレクトリ: (共有フォルダ転送と比較して) FTPベースのファイル転送の場合、データはSAPサーバーのデフォルトの一時ディレクトリに抽出されます。必要に応じて、別のフォルダを使用できます。

- SAP抽出タイムアウト: ODIがタイムアウトになる前にSAPバックグラウンド・ジョブを待機する最大秒数。

- SAP ABAPバージョン: SAP ABAPバージョンを次のように入力します。

- SAP 4.6Cには46Cと入力します。

- SAP 4.7には620と入力します。

- SAP ECC 5.0には640と入力します。

- SAP ECC 6.0には700と入力します。

- SAP ERPバージョン: 今後の使用のために予約されています。

- SAP Allow ABAP Upload: ABAPコードをこのSAPシステムでアップロードできる場合、1に設定します。通常、任意の開発以外のシステム用に0に設定します。詳細は、7.7.3項「ABAPのアップロードの制御」を参照してください。

- SAP Allow ABAP Execute: ABAPコードをこのSAPシステムで実行できる場合、1に設定します。詳細は、7.7.3項「ABAPのアップロードの制御」を参照してください。

注意:
SAP接続およびFTP接続定義を検証するためのテスト・ボタンはサポートされていません。

- SAPトランスポート層名。: このトランスポート層は、ODIが新しい送信リクエストを作成する場合に使用されます。デフォルトのトランスポート層名はSAPです。SAPシステムで異なるトランスポート層が使用される場合、このフレックスフィールドを適宜更新する必要があります。そうしないと、TRの作成は失敗します。

データ・サーバー名を除いて、SAPデータ・サーバーの定義の際に指定するすべてのパラメータはSAP管理者によって提供される必要があります。これらのパラメータの詳細は、「SAP接続情報の収集」を参照してください。

7.3.2.2 SAP ABAPスキーマの作成

SAP ABAPスキーマを構成する手順は次のとおりです。

1. 『Oracle Data Integratorの管理』の物理スキーマの作成に関する項の説明に従って、SAP ABAPデータ・サーバーの下に物理スキーマを作成します。このスキーマには、特定の構成は必要ありません。SAP ABAPデータ・サーバーの下に物理スキーマが1つのみ必要となります。

2. 適切なコンテキスト内で、『Oracle Data Integratorの管理』の論理スキーマの作成に関する項の説明に従って、この物理スキーマ用の論理スキーマを作成します。

7.4 プロジェクトの設定

SAP ERPの機能を使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Data Integratorでの統合プロジェクトの開発』の統合プロジェクトの作成に関する項を参照してください。

次のKMをOracle Data Integratorプロジェクトにインポートします。

- RKM SAP ERP

- RKM SAP ERP接続テスト

- LKM SAP ERP to Oracle (SQLLDR)

- LKM SAP ERP to SQL

これらの特定のSAP ERP KMに加えて、Oracle Databaseでデータの抽出およびデータの品質チェックを実行する標準Oracle LKM、IKMおよびCKMをインポートします。利用できるKMのリストは、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』のOracle Databaseに関する項を参照してください。

7.5 モデルの作成およびリバース・エンジニアリング

この項の内容は次のとおりです。

- SAP ERPモデルの作成

- SAP ERPモデルのリバース・エンジニアリング

7.5.1 SAP ERPモデルの作成

『Oracle Data Integratorでの統合プロジェクトの開発』のモデルの作成に関する項の説明に従って、標準の手順を使用してSAP ABAPテクノロジおよびSAP ABAP論理スキーマに基づくSAP ERPモデルを作成します。

7.5.2 SAP ERPモデルのリバース・エンジニアリング

RKM SAP ERPを使用してカスタマイズされたリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』のモデルのリバースエンジニアリングに関する項の説明に従って、通常の手順を使用します。この項では、SAP ERP固有のフィールドのみについて説明します。

1. SAP ERPモデルの「リバース・エンジニアリング」タブでRKM SAP ERPを選択します。

2. RKM SAP ERPでは、USE_GUI KMオプションをtrueに設定します。

3. モデルを保存します。

4. モデル・エディタ・ツールバーで、「リバースエンジニアリング」をクリックします。

5. セッションが開始されると、ツリー・メタデータ・ブラウザが表示されます。リバースする表(複数も可)を選択します。

6. ツリー・メタデータ・ブラウザ・ウィンドウで、「リバースエンジニアリング」をクリックします。

リバース・エンジニアリング・プロセスでは、選択された表をデータストアとして返します。

注意:
ランタイム・エージェント上でリバース・エンジニアリングを実行する場合は、USE_GUIオプションをfalseに設定する必要があります。このオプションは、Studioに組み込まれたエージェントを使用して、カスタマイズされたリバース・エンジニアリングを開始する場合にのみ使用されます。

7.6 マッピングの設計

Oracleステージング領域にSAP ERPデータをロードするマッピングを作成する手順は次のとおりです。

1. SAP ERPモデルからソース・データストアを使用してマッピングを作成します。このマッピングは、Oracleターゲットを持つか、またはステージング領域としてOracleスキーマを使用する必要があります。

2. マッピングに結合、フィルタおよびマップ属性を作成します。

3. マッピングの物理的ダイアグラムで、SAP ABAPソース表のアクセス・ポイントを選択します。このオブジェクトのプロパティ・インスペクタが開きます。

4. 「ロード・ナレッジ・モジュール」タブでLKM SAP ERP to Oracle (SQLLDR)/LKM SAP ERP to SQLを選択します。

7.7 SAP ERP統合の考慮事項

この項の内容は次のとおりです。

- ファイル転送の構成

- 実行モード

- ABAPアップロードの管理

- ODI SAPのトランスポート・リクエストの管理

- SAPパッケージおよびSAP機能グループ

- ログ・ファイル

- SAP ABAPアダプタの制限

7.7.1 ファイル転送の構成

ODI SAPアダプタは、ABAPプログラムを使用してデータを抽出します。SAPシステムからODIエージェントにデータを転送するため、アダプタでは2つの転送モードと各種の構成がサポートされます。

- 共有ディレクトリを使用した転送(推奨)

- FTPベースの転送

7.7.1.1 共有ディレクトリを使用した転送(推奨)

抽出プロセスの間に、ABAPプログラムによって共有フォルダのデータ・ファイルにデータのチャンクが書き込まれます。パフォーマンスを向上させるには、この共有フォルダをODIエージェント・マシンに置く必要があります。この設定では、SQL*Loaderによってこのフォルダから直接データが読み取られ、それがデータベースにロードされます。

フォルダがODIエージェント・マシン上にない場合、ODIエージェントではまず、共有フォルダからエージェントにファイルをコピーする必要があります。そして、次の手順でそのデータをSQL*LoaderまたはJDBC接続を使用してロードします。

構成1: 共有フォルダがODIエージェント・マシンに物理的に配置される場合(推奨)

図7-1 構成1

FTP_TRANSFER_METHOD = FSMOUNT_DIRECTの場合にこの構成を使用します。この構成では、次のデータの移動が行われます。

1. ABAPプログラムによって、FETCH_ BATCH SIZEレコードのチャンクが抽出され、そのレコードが共有フォルダ内のファイルに書き込まれます。

2. LKM SAP ERP to Oracle (SQLLDR)の場合: SQL*Loaderによって、そのデータ・ファイルをローカルに読み込み、そのデータをOracleステージング領域にロードします。
LKM SAP ERP to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをローカルに読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. ファイル・サーバー/ODIエージェント・マシンを指すファイル・データ・サーバーを作成します。

- ホスト(データ・サーバー): 該当なし

- ユーザー: 該当なし

- パスワード: 該当なし

2. このファイル・データ・サーバーの下に、ファイル・ホスト・サーバー内の共有フォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- データ・スキーマ: 抽出ファイルを書き込むABAPプログラムによって使用される共有フォルダのパス(UNC)。

- ディレクトリ(作業スキーマ): 共有フォルダをホストするサーバー・マシン上のローカル・パス。このパスは、共有フォルダを経由することなく抽出ファイルにアクセスするため、このマシン上にインストールされたエージェントおよびSQL*Loaderによって使用されます。

注意:
ctl、bad、dscなどの一時ファイルは、ランタイム・エージェントのローカルの一時フォルダに作成されます。デフォルトの一時ディレクトリは、システムの一時ディレクトリです。UNIXでは通常/tmpとなり、Windowsではc:\Documents and Settings\<user>\Local Settings\Tempとなります。KMオプションのTEMP_DIRを使用してこのディレクトリを変更できます。

構成2: 共有フォルダがODIエージェント・マシン上に物理的に配置されていない場合

図7-2 構成2

FTP_TRANSFER_METHOD = FSMOUNTの場合にこの構成を使用します。この構成では、次のデータの移動が行われます。

1. ABAPプログラムによって、FETCH_ BATCH SIZEレコードのチャンクが抽出され、そのレコードが共有フォルダ内のファイルに書き込まれます。

2. ランタイム・エージェントによって、KMのTEMP_DIRオプションで指定されたディレクトリにファイルがコピーされます。

3. LKM SAP ERP to Oracle (SQLLDR)の場合: SQL*Loaderによって、このTEMP_DIRからデータ・ファイルが読み込まれ、そのデータがOracleステージング領域にロードされます。
LKM SAP ERP to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをこのTEMP_DIRから読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. 抽出ファイルがSAPからプッシュされ、SQL*Loader用に取得されるファイル・サーバーを指すファイル・データ・サーバーを作成します。
このデータ・サーバーのパラメータを次のように設定します。

- ホスト(データ・サーバー): 該当なし

- ユーザー: 該当なし

- パスワード: 該当なし

2. このファイル・データ・サーバーで、共有フォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- ディレクトリ(スキーマ): 抽出ファイルを書き込むABAPプログラムとそのファイルをコピーするエージェントによって使用される共有フォルダのパス(UNC)。

- ディレクトリ(作業スキーマ): <未定義>。データ・ファイルがファイル・サーバーのファイル・システムから直接アクセスされることはないため、このパスは空白のままにします。

データ・ファイルは、ローカルの一時フォルダにある共有フォルダからランタイム・エージェントにコピーされます。デフォルトの一時ディレクトリは、システムの一時ディレクトリです。UNIXでは通常/tmpとなり、Windowsではc:\Documents and Settings\<user>\Local Settings\Tempとなります。KMオプションのTEMP_DIRを使用してこのディレクトリを変更できます。

7.7.1.2 FTPベースの転送

抽出時に、ABAPプログラムは、データを一時ファイルに書き込みます。このファイルは、ODIデータ・サーバーのフレックスフィールドSAP_TMP_DIRで定義されるディレクトリに作成されます。SAP_TMP_DIRの詳細は、第7.2.3.4項「SAP接続情報の収集」を参照してください。

抽出プロセスの最後に、ABAPプログラムによってFTPサーバーにデータ・ファイルがアップロードされます。パフォーマンスを向上させるには、このFTPサーバーをランタイム・エージェントと同じマシン上に置く必要があります。

エージェントがFTPサーバーと同じマシン上にない場合は、FTPサーバーからファイルをダウンロードした後に、SQL*LoaderまたはJDBC接続を使用してそのファイルをステージング領域にロードします。このダウンロード処理は、FTP、SFTPまたはSCPを使用して実行されます。

図7-3 構成1: FTPサーバーがODIエージェント・マシンにインストールされている場合

図7-3に示される構成は、FTP_TRANSFER_METHOD = NONEの際に使用されます。この構成では、次のデータの移動が行われます。

1. ABAPプログラムでは、データを抽出し、そのデータ・ファイルをFTPサーバーにアップロードします。

2. LKM SAP ERP to Oracle (SQLLDR)の場合: SQL*Loaderによって、そのデータ・ファイルをローカルに読み込み、そのデータをOracleステージング領域にロードします。
LKM SAP ERP to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをローカルに読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. FTPサーバーを指すファイル・データ・サーバーを作成します。

- ホスト(データ・サーバー): FTPサーバーのホスト名またはIPアドレス

- ユーザー: FTPサーバーにログインするためのユーザー名

- パスワード: ユーザーのパスワード

2. このファイル・データ・サーバーに、抽出ファイルがプッシュされるFTPホスト内のフォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- ディレクトリ(スキーマ): SAP抽出ファイルをアップロードするためのFTPサーバー上のパス。

- ディレクトリ(作業スキーマ): SAP抽出ファイルを含むFTPサーバー・マシン上のローカル・パス。エージェントおよびSQL*LoaderまたはODIフラット・ファイル・ドライバによって、この場所から抽出ファイルを読み込みます。

図7-4 構成2: FTPサーバーがODIエージェント・マシンにインストールされていない場合

図7-4に示される構成は、FTP_TRANSFER_METHODがFTP、SFTPまたはSCPの際に使用されます。この構成では、次のデータの移動が行われます。

1. ABAPプログラムでは、データを抽出し、そのデータ・ファイルをFTPサーバーにアップロードします。

2. ODIエージェントによって、FTPサーバーからKMオプションのTEMP_DIRで指定するディレクトリにそのファイルがダウンロードされます。

3. LKM SAP ERP to Oracle (SQLLDR)の場合: SQL*Loaderによって、このTEMP_DIRからデータ・ファイルが読み込まれ、そのデータがOracleステージング領域にロードされます。
LKM SAP ERP to SQLの場合: ODIファイル・ドライバによって、そのデータ・ファイルをこのTEMP_DIRから読み込み、JDBCを使用してそのデータをOracle以外のステージング領域に挿入します。

この構成では、次のトポロジの設定が必要です。

1. FTPサーバーを指すファイル・データ・サーバーを作成します。

- ホスト(データ・サーバー): FTPサーバーのホスト名またはIPアドレス

- ユーザー: FTPサーバーにログインするためのユーザー名

- パスワード: ユーザーのパスワード

2. このファイル・データ・サーバーに、抽出ファイルがプッシュされるFTPホスト内のフォルダを表す物理スキーマを作成します。データおよび作業スキーマを次のように指定します。

- ディレクトリ(スキーマ): SAP抽出ファイルをアップロードするためのFTPサーバー上のパス。

- ディレクトリ(作業スキーマ): <未定義>。データ・ファイルがFTPサーバーのファイル・システムから直接アクセスされることはないため、このパスは空白のままにします。

考慮点および制限:

FTPベースのデータ転送では、広範囲にわたる(S)FTPファイル転送を使用し、転送前にすべてのデータをSAPのアプリケーション・サーバー・メモリー内に保持する必要があります。したがって、SAPセッションごとに必要なメモリー量は、抽出されるデータ量に応じて増加するため、データ量の上限を設定することになります。この上限は、SAP内でのセッション・メモリーの設定を増やすことてある程度調節できます。

共有フォルダ・ベースの構成に必要な設定は多少複雑になりますが、すべてのデータをSAP ASのメモリーに格納する必要がなくなるため、推奨される抽出方法です。

7.7.2 実行モード

バックグラウンド処理

デフォルトでは、生成済ABAPコードはABAPレポートとしてデプロイされます。このレポートは、実行時にバックグラウンド処理のためにSAPスケジューラに発行されます。ジョブ・ステータスは、その後ODIによってモニターされます。

KMオプションのJOB_CLASSでは、バックグラウンド・ジョブの優先度を定義します。有効な値(SAP JOB_CLASS設定に対応)は次のとおりです。

JOB_CLASS = Aは最高の優先度です

JOB_CLASS = Bは標準の優先度です

JOB_CLASS = Cは最低の優先度です

ダイアログ・モード処理

後方互換性のため、KMオプションのBACKGROUND_PROCESSINGをfalseに設定できます。生成済ABAPコードはその後、RFCとしてデプロイされます。このRFCは、実行時にデータを抽出するためにODIからコールされます。

ダイアログ・モード処理は非推奨になっており、現在後方互換性のためにのみサポートされています。将来のリリースでは、ダイアログ処理は完全に削除される可能性があります。

7.7.3 ABAPアップロードの管理

開発の際には、ODIはABAPコードを生成し、マッピングを実行するたびに、これがSAP開発システムにアップロードされます。この自動的なコードのアップロードによって開発サイクルが早くなります。

マッピングまたはパッケージがユニット・テストされ、開発環境から移行する準備が整うと、他のSAP ABAPコードと同様にSAPのCTS (Change and Control System)を使用して生成されたSAP ABAPコードをそれぞれのSAPシステムに転送する必要があります。これはSAPの標準的な動作です。このタスクを簡略化するために、開発環境へのアップロードの際にSAPトランスポート・リクエストが自動的に作成されます。生成されたODI SAP ABAPプログラムのトランスポートについては、SAP管理者に確認してください。

開発、テストおよび本番で異なるODIリポジトリを使用している場合、ODIシナリオがそれぞれのSAPシステムのODI ABAPコードと一致していることを確認してください。つまり、SAP CTSを使用してSAP ABAPコードをSAP開発システムからSAP QAシステムにトランスポートし、(トランスポートされるABAPコードを生成した)ODIシナリオをODI開発リポジトリからODI QAリポジトリにトランスポートする必要があります。ODIシナリオのトランスポート方法の詳細は、『Oracle Data Integratorでの統合プロジェクトの開発』の第13章「シナリオの使用」を参照してください。

開発以外のODIでABAPコードをアップロードする必要がなくなると、ABAPコードはSAPのCTSによってトランスポートされるため、このような開発以外のシステムではABAPのアップロードができなくなります。

LKMオプションのUPLOAD_ABAP_CODEをNoに設定することによってアップロードを明示的に無効にできますが、通常、ODIトポロジ内のSAPデータ・サーバー上で定義されたSAP Allow ABAP Uploadフレックスフィールドを使用して無効にされます。つまり、ABAPコードのアップロードは、LKMオプションのUPLOAD_ABAP_CODEおよびSAP Allow ABAP Uploadフレックスフィールドの両方をYesに設定した場合にかぎり実行されます。本番システムへのアップロードを無効にするには、トポロジ内の「SAP Allow ABAP Upload」フレックスフィールドを0に設定するのみで十分です。

ヒント:
開発環境ではABAPコードをアップロードし、QAまたは本番環境ではそのアップロードをスキップするマッピングを構成する手順は次のとおりです。

1. すべてのマッピングにおいて、KMオプションのUPLOAD_ABAP_CODEをYesに設定します。

2. トポロジ内のSAPデータ・サーバーを次のように構成します。

- すべてのSAP開発システムで、SAP Allow ABAP Uploadフレックスフィールドを1に設定します。

- 他のすべてのSAPシステムで、SAP Allow ABAP Uploadフレックスフィールドを0に設定します。

注意:
抽出プロセスを開始する前に、ODIは、マッピングおよびシナリオがSAPにインストールされているコードと一致することを確認します。シナリオが変更されたがABAPコードは再アップロードされていないなどの不一致がある場合は、例外がスローされます。

場合によっては、マッピングのABAP抽出コードのインストールを行い、データを抽出しないことが望ましい場合があります(自動インストールの場合など)。この場合、すべてのマッピングは、KMオプションのEXECUTE_ABAP_CODEを各マッピングでFalseに設定してパッケージ内でリンクできます。このパッケージを実行すると、ずべてのABAPコードがインストールされますが、どれも実行されません。

すべてのマッピングの変更を回避(前述のようにEXECUTE_ABAP_CODEをFalseに設定)するために、かわりにODI DataServerのSAP Allow ABAP Executeフレックスフィールドを使用して、すべてのSAP ABAPの実行を無効にできます。このフレックスフィールドが無効の場合、KMオプションのEXECUTE_ABAP_CODEがTrueに設定されていてもABAPコードは実行されません。

手動アップロード

場合によっては、開発システムでも自動アップロードが許可されないことがあります。そのような場合、KMオプションのMANUAL_ABAP_CODE_UPLOADにより手動アップロードが可能です。trueに設定すると、生成済ABAPコードを含むテキスト・ファイルがODIで作成されます。テキスト・ファイルの名前は、デフォルトではZODI_<Mapping Id>_<SourceSet Id>.ABAPのような名前です。このコードはSAP管理者に渡され、インストールされます。インストールされると、ODIマッピングはMANUAL_ABAP_CODE_UPLOADおよびUPLOAD_ABAP_CODEを使用して実行できるようになり、両方の設定がfalseに戻されます。

7.7.4 ODI SAPのトランスポート・リクエストの管理

開発の際には、マッピングを実行するたびに、ABAPコードがSAPシステムにアップロードされます。より正確には、次のようになります。

SAPデータを抽出するODIマッピングは、1つ以上のABAP抽出プログラムを生成します(たとえば、結合場所がステージングに設定されると、2つの抽出ジョブが作成されます)。デフォルトでは、1つのマッピングのすべてのABAP抽出プログラムが1つのSAP機能グループに割り当てられます。別のマッピングのABAP抽出プログラムは、別のSAP機能グループに割り当てられます。デフォルトの機能グループ名は、ZODI_FGR_<Mapping Id>のような名前です。

アップロード中、各ODIマッピング(各SAP機能グループ)に対してSAP CTSトランスポート・リクエストが作成されます。このため、SAP CTSを介して生成されたODI ABAP抽出プログラムの詳細な開発が可能になります。

グループ化(バックグラウンド処理)

複数のODIマッピングのABAPコードをより大まかなデプロイメント制御のために単一のトランスポート・リクエストにグループ化する必要がある場合、次の手順を実行する必要があります。

- すべてのABAPレポートの共通接頭辞にKMオプションのSAP_REPORT_NAME_PREFIXを設定します。たとえば、すべてのマッピングでZODI_DWH_SALES_にします。

- すべての個別マッピングにKMオプションのABAP_PROGRAM_NAMEを選択します。たとえば、LOAD01、LOAD02などです。

これらのサンプル設定の結果は、ZODI_DWH_SALES_LOAD01、ZODI_DWH_SALES_LOAD02などと呼ばれる、ABAPレポートを含む単一のトランスポート・リクエストになります。

グループ化(ダイアログ・モード処理、非推奨)

複数のODIマッピングのABAPコードをより大まかなデプロイメント制御のための単一のトランスポート・リクエストにグループ化する必要がある場合、これらのマッピングのすべてのLKMのKMオプションのSAP_FUNCTION_GROUPをユーザー定義の値(ZODI_FGR_DWH_SALESなど)に設定できます。こうすることによって、ODIはすべてのABAP抽出プログラムを同じSAP機能グループに生成し、このグループは単一のトランスポート・リクエストに結合されます。サイトの有効な機能グループ名は、SAP管理者に確認してください。

ヒント:
生成されたABAP抽出プログラムの名前は、デフォルトではZODI_<Mapping Id>_<SourceSet Id>のような名前です。このことによって、一意のプログラム名による便利な開発を行えます。MappingIdは変更されませんが、ODIマッピングの特定の変更によって、SourceSetIdが変更され、結果としてそれぞれの抽出プログラム名が変更されます。したがって、開発が安定した後にはユーザー定義のプログラム名を使用することをお薦めします。ABAPプログラム名は、LKMオプションのABAP_PROGRAM_NAMEの値を定義することによって設定できます(ZODI_DWH_SALES_DATA01など)。該当する命名規則については、SAP管理者に確認してください。

トランスポート・リクエストの説明

ODIでトランスポート・リクエストが作成されると、トランスポート・リクエストの説明が、KMオプションのSAP_TRANSPORT_REQUEST_DESCで提供されたテキストに設定され、KMオプションのFUNCTION_GROUPで定義された機能グループに適用されます。

デフォルトでは、ODIステップ名(通常はマッピング名)が使用されます。

ODI:<%=odiRef.getPackage("PACKAGE_NAME")%>のようなコード生成式は、いくつかのマッピングを1つのSAP機能グループ / SAPトランスポート・リクエストにグループ化する場合に役立つ場合があります。

7.7.5 SAPパッケージおよびSAP機能グループ

SAPパッケージ

ODI SAPアダプタによってインストールされたすべてのSAPオブジェクトは、次のSAPパッケージにグループ化されます。

- ZODI_RKM_PCKGは、任意のRKM関連オブジェクトを含みます。これらのオブジェクトは開発フェーズ中に使用されます。

- ZODI_LKM_PCKGは、任意のSAP LKMで生成された任意の抽出プログラムを含みます。

SAP管理者からリクエストされた場合、KMオプションのSAP_PACKAGE_NAME_ODI_DEVおよびSAP_PACKAGE_NAME_ODI_PRODを使用して、これらのデフォルト名を上書きできます。これらの値は、初回インストール時に設定する必要があります。後で変更する場合、ODI SAPアダプタを(事前にアンインストールして)再インストールする必要があります。

LKMオプションのSAP_PACKAGE_NAMEで常に、RKMの初回インストール時に指定したものと同じ値を使用する必要があることに注意してください。つまり、RKMの初回インストール時に非デフォルト値を使用すると、すべてのマッピングでLKMオプションのSAP_PACKAGE_NAMEにその非デフォルト値を設定する必要があります。

SAP機能グループ

すべてのSAP機能モジュールは、次のSAP機能グループにグループ化されます。

- ZODI_FGRは、メタデータの取得用モジュールなどのデプロイメント時に必要な任意の機能モジュールを含みます。これらの機能モジュールは、RKMによって初回インストール時にインストールされます。
RKMの初回インストール時に、RKMオプションのSAP_FUNCTION_GROUP_ODI_DEVを使用してデフォルト名を上書きできます。

- ZODI_FGR_PRODは、ABAPレポート実行ステータスのモニタリング用など、本番の実行時に必要な任意の機能モジュールを含みます。これらの機能モジュールは、RKMによって初回インストール時にインストールされます。
RKMの初回インストール時に、RKMオプションのSAP_FUNCTION_GROUP_ODI_PRODを使用してデフォルト名を上書きできます。

- ZODI_FGR_PROD_...は、任意のデータ抽出機能モジュールを含みます。そのような機能モジュールは、非推奨のダイアログ・モード(BACKGROUND_PROCESSING=false)の使用時にLKMによって生成されます。
デフォルトでは、すべてのマッピングで独自の機能グループが使用されます。デフォルト値は、前述の2つの機能グループ名とは関係ないLKMオプションのSAP_FUNCTION_GROUPを使用して上書きできます。

詳細は、「ODI SAPのトランスポート・リクエストの管理」を参照してください。

7.7.6 ログ・ファイル

RKMおよびLKMの実行中、多くのメッセージがODIのロギング機能のログに記録されます。ODIログ・ファイルおよびその他のログ・ファイルにあるこれらのメッセージには、有用なトラブルシューティングの詳細が含まれていることがあります。ODIのロギング機能の詳細は、『Oracle Data Integratorの管理』のODIコンポーネントの実行時ロギングに関する項を参照してください。表7-2には、各種ログ・ファイルとその使用方法が示されています。

表7-2 ログ・ファイル

デフォルトのログ・ファイル名

KM /フェーズ

コンテンツ

<ODI Logs>

RKM

メタデータ取得の実行ログ

<ODI Logs>

RKM

RKM用SAP RFCの初回インストールに関する情報

<ODI Logs>

LKM - 生成時

ABAPエクストラクタのコード生成に関する情報

<ODI Logs>

LKM - 実行時

ABAPエクストラクタのインストールに関する情報

<System Temp Dir or local FTP dir>/ ZODI_<Mapping Id>_<SrcSet>_<Context>.log

LKM - 実行時

SQL*Loaderログ・ファイル

<System Temp Dir or local FTP dir>/ ZODI_<Mapping Id>_<SrcSet>_<Context>.out

LKM - 実行時

SQL*Loader実行時のOS標準出力には、SQL*Loaderがインストールされていない場合などの情報を含めることができます。

<System Temp Dir or local FTP dir>/ ZODI_<Mapping Id>_<SrcSet>_<Context>.err

LKM - 実行時

SQL*Loader実行時のOSエラー出力には、SQL*Loaderがインストールされていない場合などの情報を含めることができます。

7.7.7 SAP ABAPアダプタの制限

SAP ABAPアダプタには次の制限があります。

- ODIトポロジ・マネージャ内のSAP接続定義を検証する「テスト」ボタンはサポートされていません。

- SAP表タイプ(透過、プールおよびクラスタ)は、表がリバース・エンジニアリングされた後は変更できません。

- SAP ABAP KMでは、順序付けられた結合のみをサポートします。

- 完全外部結合および右外部結合はサポートされません。

- 1対多のリレーションシップでは、結合の最初の表を1表にする必要があります。たとえば、MARAとMARCを結合する場合は、MARAを結合内の最初の表にする必要があります。

- ソース上で実行されるマッピング式は、いかなる変換も含まないようにしてください。

A SAP ABAP BWアダプタの追加情報

この付録では、SAPシステムへの接続に必要な権限、およびスタンドアロンのJavaユーティリティを使用したODI外部での接続テストの方法について説明します。

この付録の構成は、次のとおりです。

- A.1項「SAP ABAP BWで必要な権限」

- A.2項「SAPスタンドアロン接続テスト」

SAP BW KMの詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』を参照してください。

A.1 SAP ABAP BWで必要な権限

開発中に、RKMインストールおよびLKM実行のためにSAPシステムに接続するには、SAPダイアログ・ユーザーが必要です。SAP RFCユーザーでは不十分です。

このユーザーは、開発者ライセンス・キーを保持している必要があります。ライセンス・キーは、http://service.sap.comから取得できます。この開発者ライセンス・キーがないと、実行しようとしても失敗し、クリーン・アップ操作が必要になる場合があります。

後の本番環境でのRKM実行とLKM実行には、SAP RFCユーザーで十分です。

これらのSAPユーザー・タイプは次の操作で使用できます。

表A-1 必要なSAPユーザー・タイプ

操作

必要なSAPユーザー・タイプ

RKM: 設定

SAPダイアログ・ユーザー

RKM: リバース・エンジニアリング

SAPダイアログ・ユーザーまたはSAP RFCユーザー

LKM: 開発

SAPダイアログ・ユーザーまたはSAP RFCユーザー

LKM: 本番

SAPダイアログ・ユーザーまたはSAP RFCユーザー

ODIによって生成された抽出RFCのテスト

SAPダイアログ・ユーザーまたはSAP RFCユーザー

次の各表に、SAP BWナレッジ・モジュールを使用するために必要な権限の一覧を示します。

- RKM SAP BWの設定に必要な認可

- RKM SAP BWの実行に必要な認可

- LKM SAP BWの実行に必要な認可

- 本番でのLKM SAP BWの実行に必要な認可

- バックグラウンド・プロセスとしてのLKM SAP BWの実行に必要な認可

- 本番でのバックグラウンド・プロセスとしてのLKM SAP BWの実行に必要な認可

A.1.1 重要な考慮事項

SAP権限を構成するときは次の点を考慮してください。

- S_DATASETは物理ファイルへのアクセスを制御する認可オブジェクトであるため、SAPディレクトリおよびフォルダがマウントされたパスへのアクセス権を提供する必要があります。ここに示す値はサンプル・パスであり、該当するランドスケープ・ディレクトリ・パスか、または*(all)を指定する必要があります。

- NRまたは(NR)は、NOT REQUIREDを意味します。

A.1.2 RKM SAP BWの設定に必要な認可

RKM SAP BWの設定には、次の認可が必要です。

注意:
この認可には開発者キーが必要です。

オブジェクト

フィールド名

値(BW 3.5)

値(BI 7.0)

S_RFC

ACTVT

16

16

RFC_NAME

RFC1, RSAB, RSB3RD, SDIFRUNTIME, SUTL, SYST, SYSU, ZODI_FGR

RFC1, RSAB, RSB3RD, SDIFRUNTIME, SUTL, SYST, ZODI_*

RFC_TYPE

FUGR

FUGR

S_TCODE

TCD

SU53, SE38

SU53, SE38

S_ADMI_FCD

MEMO

S_CTS_ADMI

CTS_ADMFCT

TABL

TABL

S_DATASET

ACTVT

34

06,33,34

FILENAME

*

*

PROGRAM

SAPLSTRF

SAPLSLOG, SAPLSTRF, SAPLZODI*

S_TABU_DIS

ACTVT

03

DICBERCLS

*

S_DEVELOP

ACTVT

01,02,03,06

01,02,03,06,07,16

DEVCLAS

$TMP, ZODI_LKM_PCKG, ZODI_RKM_PCKG

$TMP, RSS, ZODI_LKM_PCKG, ZODI_RKM_PCKG

OBJNAME

Z$$$XRFC, ZODI_FGR, ZODI_FGR_PROD, ZODI_LKM_PCKG, ZODI_RKM_PCKG

Z$$$XRFC, RSSB, ZODI_FGR, ZODI_FGR_PROD, ZODI_LKM_PCKG, ZODI_RKM_PCKG

OBJTYPE

DEVC, FUGR, PROG

DEVC, FUGR, PROG

P_GROUP

*

S_TRANSPRT

ACTVT

01,02,03,06

01,02,03

TTYPE

DTRA, TASK

DTRA, TASK

S_RS_ADMWB

ACTVT

03,16

03,16

RSADMWBOBJ

INFOOBJECT

INFOOBJECT

S_RS_ICUBE

ACTVT

03

03

RSICUBEOBJ

*

*

RSINFOAREA

*

*

RSINFOCUBE

*

*

S_RS_IOBJ

ACTVT

03

03

RSIOBJ

*

*

RSIOBJCAT

*

*

RSIOBJPART

DEFINITION

DEFINITION

S_RS_ODSO

ACTVT

03

03

RSINFOAREA

*

*

RSODSOBJ

*

*

RSODSPART

DATA,DEFINITION

DATA,DEFINITION

A.1.3 RKM SAP BWの実行に必要な認可

RKM SAP BWの実行には、次の認可が必要です。

オブジェクト

フィールド名

値(BW 3.5)

値(BI 7.0)

S_RFC

ACTVT

16

16

RFC_NAME

RFC1, RSB3RD, SDIFRUNTIME, SYST, ZODI_FGR, RSAB

RFC1, RSB3RD, SDIFRUNTIME, SYST, ZODI_*

RFC_TYPE

FUGR

FUGR

S_TCODE

TCD

SU53

SU53, SE38

S_TABU_DIS

ACTVT

03

03

DICBERCLS

*

MA,SC

S_RS_ADMWB

ACTVT

03,16

03

RSADMWBOBJ

INFOOBJECT

INFOOBJECT

S_RS_ICUBE

ACTVT

03

03

RSICUBEOBJ

*

*

RSINFOAREA

*

*

RSINFOCUBE

*

*

S_RS_IOBJ

ACTVT

03

03

RSIOBJ

*

0*

RSIOBJCAT

*

0*

RSIOBJPART

DEFINITION

DEFINITION

S_RS_ODSO

ACTVT

03

03

RSINFOAREA

*

0*, T*, Z*

RSODSOBJ

*

0*, U*, Z*

RSODSPART

DATA,DEFINITION

DATA, DEFINITION

A.1.4 LKM SAP BWの実行に必要な認可

LKM SAP BWの実行には、次の認可が必要です。

注意:
この認可には開発者キーが必要です。

オブジェクト

フィールド名

値(BW 3.5)

値(BI 7.0)

S_RFC

ACTVT

16

16

RFC_NAME

RFC1, RSAB, SDIF, SYSU, SDIFRUNTIME, SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

S_TCODE

TCD

SE38,SU53

SE38,SU53

S_CTS_ADMI

CTS_ADMFCT

TABL

TABL

S_DATASET

ACTVT

06,33,34

06,33,34

FILENAME

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox

\\10.30.0.201\ODI_SAPTEST, \\10.30.0.201\ODI_SAPTEST\ZODI_233030*

PROGRAM

SAPLSLOG, SAPLSTRF, SAPLZODI*

SAPLSLOG, SAPLSTRF, SAPLZODI*

S_DEVELOP

ACTVT

01,02,03,06

01,02,03,06

DEVCLASS

OBJNAME

ZODI_FGR_PROD*

ZODI_FGR_PROD*

OBJTYPE

FUGR,PROG

FUGR,PROG

P_GROUP

S_PROGRAM

P_ACTION

EDIT,SUBMIT,VARIANT

P_GROUP

S_TRANSPRT

ACTVT

01

01

TTYPE

DTRA,TASK

DTRA,TASK

S_RS_AUTH

BIAUTH

0*

S_RS_ICUBE

ACTVT

03

RSICUBEOBJ

DATA,DEFINITION

RSINFOAREA

NODESNOTCONNECTED

RSINFOCUBE

0*,Z*

A.1.5 本番でのLKM SAP BWの実行に必要な認可

本番でのLKM SAP BWの実行には、次の認可が必要です。

オブジェクト

フィールド名

値(BW 3.5)

値(BI 7.0)

S_RFC

ACTVT

16

16

RFC_NAME

RFC1, SDIFRUNTIME, SYST, ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SYST, ZODI_FRG*, ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

S_TCODE

TCD

SU53

SU53

S_DATASET

ACTVT

06,33,34

06, 33, 34

FILENAME

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox

\\10.30.0.201\ODI_SAPTEST,
\\10.30.0.201\ODI_SAPTEST\ZODI_233030*

PROGRAM

SAPLSLOG, SAPLSTRF, SAPLZODI*

SAPLSLOG, SAPLSTRF, SAPLZODI*

S_RS_AUTH

BIAUTH

0*

S_RS_ICUBE

ACTVT

03

03

RSICUBEOBJ

DATA,DEFINITION

DEFINITION

RSINFOARE

NODESNOTCONNECTED

RSINFOCUBE

0*,Z*

S_RS_IOBJ

ACTVT

03

RSIOBJ

RSIOBJCAT

RSIOBJPART

DEFINITION

S_RS_ODSO

ACTVT

03

RSINFOAREA

RSODSOBJ

RSODSPART

DEFINITION

A.1.6 バックグラウンド・プロセスとしてのLKM SAP BWの実行に必要な認可

バックグラウンド・プロセスとしてのLKM SAP BWの実行には、次の認可が必要です。

注意:
この認可には開発者キーが必要です。

オブジェクト

フィールド名

値(BW 3.5)

値(BI 7.0)

S_RFC

ACTVT

16

16

RFC_NAME

RFC1, SDIFRUNTIME, RSAB, SYSU, SLST, SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SLST, SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

S_TCODE

TCD

SE38,SU53

SE38,SU53

S_BTCH_ADM

BTCADMIN

Y

Y

S_BTCH_JOB

JOBACTION

RELE

RELE

JOBGROUP

'

'

S_CTS_ADMI

CTS_ADMFCT

TABL

TABL

S_DATASET

ACTVT

06,33,34

06,33,34

FILENAME

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox, \\DELRC6\sapmnt*

\\10.30.0.201\ODI_SAPTEST,
\\10.30.0.201\ODI_SAPTEST\ZODI_233030*

PROGRAM

SAPLSLOG,SAPLSTRF,SAPLZODI*,ZODI*

SAPLSLOG,SAPLSTRF,SAPLZODI*,ZODI*

S_DEVELOP

ACTVT

01

01,02,03,06,16

DEVCLASS

OBJNAME

ZODI_FGR_PROD*

ZODI_FGR_PROD*

OBJTYPE

FUGR

FUGR,PROG

P_GROUP

S_PROGRAM

P_ACTION

EDIT,SUMMIT,VARIANT

P_GROUP

S_TRANSPRT

ACTVT

01,02,03

01,02

TTYPE

DTRA,TASK

DTRA,TASK

S_RS_AUTH

BIAUTH

0*

S_RS_ICUBE

ACTVT

03,06

RSICUBEOBJ

DATA,DEFINITION

RSINFOAREA

NODESNOTCONNECTED

RSINFOCUBE

0*,Z*

S_APP_LOG

ACTVT

03,06

03,06

ALG_OBJ

ZODI_APPOBJ

ZODI_APPOBJ

ALG_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

A.1.7 本番でのバックグラウンド・プロセスとしてのLKM SAP BWの実行に必要な認可

SAP本番環境でのバックグラウンド・プロセスとしてのLKM SAP BWの実行には、次の認可が必要です。

オブジェクト

フィールド名

値(BW 3.5)

値(BI 7.0)

S_RFC

ACTVT

16

16

RFC_NAME

RFC1, SDIFRUNTIME, SYSU, SLST, SYST, ZODI*

RFC1, SDIFRUNTIME, SLST, SYST, ZODI*

RFC_TYPE

FUGR

FUGR

S_TCODE

TCD

SU53

SU53

S_BTCH_ADM

BTCADMIN

Y

Y

S_BTCH_JOB

JOBACTION

RELE

RELE

JOBGROUP

''

''

S_DATASET

ACTVT

06,33,34

06,33,34

FILENAME

\\10.30.0.201\ODI_SAPTEST*, \\DEL-7TMK2BS\odiagentbox*,
\\DELRC6\sapmnt*

\\10.30.0.201\ODI_SAPTEST*, \\DEL-7TMK2BS\odiagentbox*, \\DELRC6\sapmnt*

PROGRAM

SAPLSTRF, ZODI*

ZODI*

S_DEVELOP

ACTVT

01, 02, 03, 06, 07, 16

DEVCLASS

OBJNAME

S_TCODE

OBJTYPE

SUSO

P_GROUP

S_RS_AUTH

BIAUTH

0*

S_RS_ICUBE

ACTVT

03

03

RSICUBEOB

DATA,DEFINITION

DATA,DEFINITION

RSINFOAREA

NODESNOTCONNECTED

0*,Z*

RSINFOCUBE

0*,Z*

0*,Z*

S_APPL_LOG

ACTVT

03,06

ALG_OBJECT

ZODI_APPOBJ

ALG_SUBOBJ

ZODI_SUBOBJ

A.2 SAPスタンドアロン接続テスト

『Oracle Data IntegratorのためのSAP ABAP BWアダプタ・スタート・ガイド』で説明している接続テストに加え、スタンドアロンJavaユーティリティを使用してODIの外部でテストを実行できます。このテストはSAP ERPおよびSAP BWに対するテストと同じです。

詳細は、B.2項「SAP接続テスト」を参照してください。

A.2.1 SAPスタンドアロン接続テスト

接続テストに加え、スタンドアロンJavaユーティリティを使用してODIの外部でテストを実行できます。このユーティリティは、スタンドアロン・エージェントとともに使用できます。

スタンドアロンJavaユーティリティを使用して接続をテストする手順は次のとおりです。

1. コマンド・ウィンドウを開きます。

2. <ODI_HOME>/odi/sdk/libディレクトリに移動します。

3. JAVA_HOMEがサポートされているJVMを指していることを確認します。

4. SAP Java Connectorがインストールされており、sapjco3.jarおよびsapjco3ライブラリが<ODI_HOME>/odi/sdk/libディレクトリにあることを確認します。

5. 次のコマンドを使用してユーティリティを起動します。
Windowsの場合:

java -cp sapjco3.jar;odi-sap.jar oracle.odi.sap.km.test.JCoTest

Linux/UNIXの場合:

java -cp sapjco3.jar:odi-sap.jar oracle.odi.sap.km.test.JCoTest

このコマンドにより、<ODI_HOME>/odi/sdk/libフォルダにODI_SAP_CON_POOL.jcoDestinationファイルが生成されます。

詳細は、『Oracle Data IntegratorのためのSAP ABAP BWアダプタ・スタート・ガイド』の付録C「SAPスタンドアロン接続テスト」を参照してください。

6. テキスト・エディタでODI_SAP_CON_POOL.jcoDestinationファイルを開きます。このファイルは次のようになっています。

#for tests only!
jco.client.lang=EN
jco.destination.peak_limit=10
jco.client.client=800
jco.client.passwd=<SAP Password>
jco.client.user=<SAP User>
jco.client.sysnr=00
jco.destination.pool_capacity=5
jco.client.ashost=<SAP Application Server>

7. SAP管理者から取得したSAP接続情報を入力します。

8. 同じコマンドを使用してユーティリティを起動します。ユーティリティは編集したファイルを使用し、テスト結果または考えられる問題を出力します。
単なるSAP接続のテストに加え、ユーティリティでは、RKMで必要な特定のファンクション・モジュールが存在するかどうかの検証も行います。これらはRKMの初回実行時にインストールされます(UPLOAD_ABAP_CODEおよびUPLOAD_ABAP_BASEをtrueに設定)。

9. ODI_SAP_CON_POOL.jcoDestinationファイルは、SAPのログイン資格証明が含まれているため、実行が終わってから削除してください。

B SAP ABAP ERPアダプタの追加情報

この付録では、SAPシステムへの接続に必要な権限、スタンドアロンのJavaユーティリティを使用したODI外部での接続テストの方法、およびSAPコンポーネントのアンインストール方法について説明します。

この付録の構成は、次のとおりです。

- B.1項「SAP ABAP ERPで必要な権限」

- B.2項「SAP接続テスト」

- B.3項「SAPスタンドアロン接続テスト」

SAP ERP KMの詳細は、『Oracle Data Integrator接続およびナレッジ・モジュール・ガイド』を参照してください。

B.1 SAP ABAP ERPで必要な権限

SAPシステムへの接続、RKMのインストール、および開発時のLKMの実行には、SAPダイアログ・ユーザーであることが必要です。SAP RFCユーザーでは不十分です。

開発の際、このユーザーには開発者ライセンス・キーが必要です。ライセンス・キーは、http://service.sap.comから取得できます。この開発者ライセンス・キーがないと、実行しようとしても失敗し、クリーン・アップ操作が必要になる場合があります。

本番でRKMおよびLKMを実行する場合は、SAP RFCユーザーで十分です。

これらのSAPユーザー・タイプは次の操作で使用できます。

表B-1 必要なSAPユーザー・タイプ

操作

必要なSAPユーザー・タイプ

RKM: 設定

SAPダイアログ・ユーザー

RKM: リバース・エンジニアリング

SAPダイアログ・ユーザーまたはSAP RFCユーザー

LKM: 開発

SAPダイアログ・ユーザーまたはSAP RFCユーザー

LKM: 本番

SAPダイアログ・ユーザーまたはSAP RFCユーザー

以降の表では、SAP ABAPナレッジ・モジュールを使用するために必要な権限をリストしています。

- RKM SAP ERPの設定に必要な認可

- RKM SAP ERPの実行に必要な認可

- LKM SAP ERPの実行に必要な認可

- 本番でのLKM SAP ERPの実行に必要な認可

- バックグラウンド・プロセスとしてのLKM SAP ERPの実行に必要な認可

- 本番でのバックグラウンド・プロセスとしてのLKM SAP ERPの実行に必要な認可

B.1.1 重要な考慮事項

SAP権限を構成する際は、次の点を考慮してください。

- S_DATASETは物理ファイルへのアクセスを制御する認可オブジェクトであるため、SAPディレクトリおよびフォルダがマウントされたパスへのアクセス権を提供する必要があります。ここに示す値はサンプル・パスであり、該当するランドスケープ・ディレクトリ・パスか、または*(all)を指定する必要があります。

- NRまたは(NR)は、NOT REQUIREDを意味します。

B.1.2 RKM SAP ERPの設定に必要な認可

RKM SAP ERPの設定には、次のSAP認可が必要です。

注意:
この認可には開発者キーが必要です。

オブジェクト

フィールド名

値(4.6c)

値(4.7)

値(ECC 5)

値(ECC 6)

S_RFC

ACTVT

16

16

16

16

RFC_NAME

RFC1, SDIFRUNTIME, SUTL, SYST, ZODI_FGR, SDIF

RFC1, SDIFRUNTIME, SUTL, SYST, ZODI_FGR

RFC1, SDIFRUNTIME, SUTL, SYST, ZODI_FGR

RFC1, SDIF, SDIFRUNTIME, SUTL, SYST, SYSU, ZODI_FGR

RFC_TYPE

FUGR

FUGR

FUGR

FUGR

S_TCODE

TCD

SU53,SE38

SU53,SE38

SU53,SE38

SU53,SE38

S_ADMI_FCD

S_ADMI_FCD

MEMO,SM02

MEMO

MEMO

S_CTS_ADMI

CTS_ADMFCT

TABL

TABL

TABL

TABL

S_DATASET

ACTVT

34

34

34

34

FILENAME

\\HYPTEST01\sapmnt*

G:\usr\*, \\10.30.0.201\ODI_SAPTEST*, \\10.30.32.30*

D:\usr\*, \\10.30.0.201\ODI_SAPTEST*, \\10.30.32.42*

*

PROGRAM

SAPLSLOG, SAPLSTRF

SAPLSLOG, SAPLSTRF

SAPLSLOG, SAPLSTRF, SAPLZODI*, ZODI*

SAPLSLOG, SAPLSTRF

S_TABU_DIS

ACTVT

03

03

03

03

DICBERCLS

*

*

*

*

S_DEVELOP

ACTVT

01,02,03

01,02,03

01,02,03

01,02,03

DEVCLAS

$TMP, ZODI_LKM_PCKG, ZODI_RKM_PCKG

$TMP, ZODI_LKM_PCKG, ZODI_RKM_PCKG

$TMP, ZODI_LKM_PCKG, ZODI_RKM_PCKG

$TMP, ZODI_LKM_PCKG, ZODI_RKM_PCKG

OBJNAME

Z$$$XRFC, ZODI_FGR, ZODI_FGR_PROD, ZODI_LKM_PCKG, ZODI_RKM_PCKG

Z$$$XRFC, ZODI_FGR, ZODI_FGR_PROD, ZODI_LKM_PCKG, ZODI_RKM_PCKG

Z$$$XRFC, ZANU*, ZODI_FGR, ZODI_FGR_PROD, ZODI_LKM_PCKG, ZODI_RKM_PCKG

Z$$$XRFC, ZODI_FGR, ZODI_FGR_PROD, ZODI_LKM_PCKG, ZODI_RKM_PCKG, ZODI_MSG

OBJTYPE

DEVC,FUGR,PROG

DEVC,FUGR,PROG,MSAG

DEVC,FUGR,PROG

DEVC,FUGR,PROG,MSAG

P_GROUP

S_TRANSPRT

ACTVT

01,03

01

01,03

01

TTYPE

DTRA,TASK

DTRA,TASK

DTRA,TASK

DTRA,TASK

B.1.3 RKM SAP ERPの実行に必要な認可

RKM SAP ERPの実行には、次のSAP認可が必要です。

オブジェクト

フィールド名

値(4.6c)

値(4.7)

値(ECC 5)

値(ECC 6)

S_RFC

ACTVT

16

16

16

16

RFC_NAME

RFC1,SDIF,SYST,ZODI_FGR,SDIFRUNTIME

RFC1,SDIFRUNTIME,SYST,ZODI_FGR

RFC1,SDIFRUNTIME,SYST,ZODI_FGR

RFC1,SDIF, SDIFRUNTIME, SYST, ZODI_FGR

RFC_TYPE

FUGR

FUGR

FUGR

FUGR

S_TCODE

TCD

SU53

SU53

SU53

SU53

S_TABU_DIS

ACTVT

03

03

03

03

DICBERCLS

*

*

*

*

B.1.4 LKM SAP ERPの実行に必要な認可

LKM SAP ERPの実行には、次のSAP認可が必要です。

注意:
この認可には開発者キーが必要です。

オブジェクト

フィールド名

値(4.6c)

値(4.7)

値(ECC 5)

値(ECC 6)

S_RFC

ACTVT

16

16

16

16

RFC_NAME

RFC1,SDIF, SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1,SDIFRUNTIME,SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1,SDIFRUNTIME,SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1,SDIFRUNTIME,SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

FUGR

FUGR

S_TCODE

TCD

SU53

SE38,SU53

SE38,SU53

SU53

S_DATASET

ACTVT

06,33,34

06,33,34

06,33,34

06,33,34

FILENAME

\\10.30.0.201\ODI_SAPTEST\ZODI*,
\\HYPTEST01\sapmnt*

*\\10.30.0.201\ODI_SAPTEST*,
\\10.30.0.201\ODI_SAPTEST\ZODI_233030*

*\\10.30.0.201\ODI_SAPTEST*,
\\10.30.0.201\ODI_SAPTEST\ZODI_233030*

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox

PROGRAM

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

S_DEVELOP

ACTVT

01

01,02,03,06

01,02,03,06

01

DEVCLASS

ZODI_LKM_PCKG

OBJNAME

ZODI_FGR_PROD*

ZODI_FGR_PROD*

ZODI_FGR_PROD*

ZODI_FGR_PROD*

OBJTYPE

FUGR

FUGR,PROG

FUGR

FUGR

S_PROGRAM

P_ACTION

EDIT,SUBMIT,VARIANT

EDIT,SUBMIT,VARIANT

P_GROUP

S_CTS_ADMI

CTS_ADMFCT

TABL

S_TRANSPRT

ACTVT

01

01

01

01

TTYPE

DTRA,TASK

DTRA,TASK

DTRA,TASK

DTRA,TASK

B.1.5 本番でのLKM SAP ERPの実行に必要な認可

SAP本番環境でのLKM SAP ERPの実行には、次のSAP認可が必要です。

オブジェクト

フィールド名

値(4.6c)

値(4.7)

値(ECC 5)

値(ECC 6)

S_RFC

ACTVT

16

16

16

16

RFC_NAME

SDIFRUNTIME, SYST,ZODI*

RFC1, SDIFRUNTIME, SYST,ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SYST,ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SYST,ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

FUGR

FUGR

S_TCODE

TCD

SU53

SU53

SU53

SU53

S_DATASET

ACTVT

06,33,34

06,33,34

06,33,34

FILENAME

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox

PROGRAM

SAPLSLOG, SAPLSTRF, SAPLZODI

SAPLSLOG, SAPLSTRF, SAPLZODI*

SAPLSLOG, SAPLSTRF, SAPLZODI*,ZODI*

B.1.6 バックグラウンド・プロセスとしてのLKM SAP ERPの実行に必要な認可

バックグラウンド・プロセスとしてのLKM SAP ERPの実行には、次のSAP認可が必要です。

オブジェクト

フィールド名

値(4.6c)

値(4.7)

値(ECC 5)

値(ECC 6)

S_RFC

ACTVT

16

16

16

16

RFC_NAME

RFC1,SDIF, SLST,SYST, ZODI*,ZODI_FGR,ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SLST,SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SLST,SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC1, SDIFRUNTIME, SLST,SYST, ZODI_FGR, ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

FUGR

FUGR

S_TCODE

TCD

SU53

SE38,SU53

SE38,SU53

SE38,SU53

S_BTCH_ADM

BTCADMIN

Y

Y

Y

Y

S_BTCH_JOB

JOBACTION

RELE

RELE

RELE

RELE

JOBGROUP

'

'

'

'

S_CTS_ADMI

CTS_ADMFCT

TABL

TABL

TABL

TABL

S_DATASET

ACTVT

06,33,34

06,33,34

06,33,34

06,33,34

FILENAME

\\10.30.0.201\ODI_SAPTEST\ZODI*, \\HYPTEST01\sapmnt*

*\\10.30.0.201\ODI_SAPTEST*, \\10.30.0.201\ODI_SAPTEST\ZODI_233030*

*\\10.30.0.201\ODI_SAPTEST*, \\10.30.0.201\ODI_SAPTEST\ZODI_233030*

*\\DEL-7TMK2BS\odiagentbox*, \\DEL-7TMK2BS\odiagentbox, \\DELRC6\sapmnt*

PROGRAM

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI,

ZODI*

SAPLSLOG*,
SAPLSTRF*,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

S_DEVELOP

ACTVT

01

01,02,03,06,16

01,02,03,06,16

01

DEVCLASS

OBJNAME

ZODI_FGR_PROD*

ZODI_FGR_PROD*

ZODI_FGR_PROD*

ZODI_FGR_PROD*

OBJTYPE

FUGR

FUGR

FUGR,PROG

FUGR

P_GROUP

S_PROGRAM

P_ACTION

EDIT,SUBMIT,VARIANT

EDIT,SUBMIT,VARIANT

P_GROUP

S_TRANSPORT

ACTVT

01,02,03

01,02,03

01,02

01,02

TTYPE

DTRA,TASK

DTRA,TASK

DTRA,TASK

DTRA,TASK

S_APPL_LOG

ACTVT

06

06

06

06

ALG_OBJECT

ZODI_APPOBJ

ZODI_APPOBJ

ZODI_APPOBJ

ZODI_APPOBJ

ALG_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

B.1.7 本番でのバックグラウンド・プロセスとしてのLKM SAP ERPの実行に必要な認可

SAP開発環境でのバックグラウンド・プロセスとしてのLKM SAP ERPの実行には、次のSAP認可が必要です。

オブジェクト

フィールド名

値(4.6c)

値(4.7)

値(ECC 5)

値(ECC 6)

S_RFC

ACTVT

16

16

16

16

RFC_NAME

RFC1,SDIF,SYST,SLST, ZODI_FGR_PROD*

SDIF,SDIFRUNTIME,SLST,SYST,ZODI_FGR_PROD*

RFC1,SDIFRUNTIME,SLST, SYST,SYSU, ZODI_FGR_PROD*

RFC1,SDIFRUNTIME,SYST,ZODI_FGR_PROD*

RFC_TYPE

FUGR

FUGR

FUGR

FUGR

S_TCODE

TCD

SU53

SU53

SU53

SU53

S_BTCH_ADM

BTCH

Y

Y

Y

Y

S_BTCH_JOB

JOBACTION

RELE

RELE

RELE

RELE

JOBGROUP

''

''

''

''

S_DATASET

ACTVT

06,33,34

06,33,34

06,33,34

06,33,34

FILENAME

\\10.30.0.201\ODI_SAPTEST\ZODI*, \\HYPTEST01\sapmnt*

\\10.30.0.201\ODI_SAPTEST*, \\DEL-7TMK2BS\odiagentbox*, \\DELRC6\sapmnt*

\\10.30.0.201\ODI_SAPTEST*, \\DEL-7TMK2BS\odiagentbox*, \\DELRC6\sapmnt*

\\10.30.0.201\ODI_SAPTEST*, \\DEL-7TMK2BS\odiagentbox*, \\DELRC6\sapmnt*

PROGRAM

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

SAPLSLOG,
SAPLSTRF,

SAPLZODI*,

ZODI*

S_APP_LOG

ACTVT

06

06

06

06

ALG_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ALG_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

ZODI_SUBOBJ

B.2 SAP接続テスト

この接続テストは、トポロジでSAP ABAPデータ・サーバーを構成した後で実行する必要があります。

このテストでは、次の処理を実行します。

- 構成されたSAPシステムへのテスト接続を確立します。

- 「About」ダイアログを表示して、SAP JCoが適切に設定されていることを検証します。

このテストは、RKM SAP ERP Connection TestというRKMを使用して実行されます。このKMではリバース処理は行われません。接続テストが実行されるのみです。

接続テストを実行する手順は次のとおりです。

1. 『Oracle Data Integratorでの統合プロジェクトの開発』のモデルの作成に関する項の説明に従って、標準の手順を使用してSAP ABAPテクノロジおよびSAP ABAP論理スキーマに基づくSAP ERPモデルを作成します。

2. SAP ERPモデルの「リバース・エンジニアリング」タブでRKM SAP ERP Connect Testを選択します。

3. モデルを保存します。

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

数秒以内にSAP JCoの「About」ダイアログが表示されます。表示されない場合は、オペレータ・ナビゲータでセッション実行ログを確認してください。タスク「Test SAP Connection」の出力にSuccessfully connected to SAP Systemが含まれていることを確認してください。含まれていない場合、接続テストに失敗しており、接続の問題を分析する必要があります。

B.3 SAPスタンドアロン接続テスト

接続テストに加え、スタンドアロンJavaユーティリティを使用してODIの外部でテストを実行できます。このユーティリティは、スタンドアロン・エージェントとともに使用できます。

スタンドアロンJavaユーティリティを使用して接続をテストする手順は次のとおりです。

1. コマンド・ウィンドウを開きます。

2. <ODI_HOME>/odi/sdk/libディレクトリに移動します。

3. JAVA_HOMEがサポートされているJVMを指していることを確認します。

4. SAP Java Connectorがインストールされており、sapjco3.jarおよびsapjco3ライブラリが<ODI_HOME>/odi/sdk/libディレクトリにあることを確認します。

5. 次のコマンドを使用してユーティリティを起動します。
Windowsの場合:

java -cp sapjco3.jar;odi-sap.jar oracle.odi.sap.km.test.JCoTest

Linux/UNIXの場合:

java -cp sapjco3.jar:odi-sap.jar oracle.odi.sap.km.test.JCoTest

このコマンドにより、<ODI_HOME>/odi/sdk/libフォルダにODI_SAP_CON_POOL.jcoDestinationファイルが生成されます。

詳細は、『Oracle Data IntegratorのためのSAP ABAP ERPアダプタ・スタート・ガイド』の付録C「SAPスタンドアロン接続テスト」を参照してください。

6. テキスト・エディタでODI_SAP_CON_POOL.jcoDestinationファイルを開きます。このファイルは次のようになっています。

#for tests only!
jco.client.lang=EN
jco.destination.peak_limit=10
jco.client.client=800
jco.client.passwd=<SAP Password>
jco.client.user=<SAP User>
jco.client.sysnr=00
jco.destination.pool_capacity=5
jco.client.ashost=<SAP Application Server>

7. SAP管理者から取得したSAP接続情報を入力します。

8. 同じコマンドを使用してユーティリティを起動します。ユーティリティは編集したファイルを使用し、テスト結果または考えられる問題を出力します。
単なるSAP接続のテストに加え、ユーティリティでは、RKMで必要な特定のファンクション・モジュールが存在するかどうかの検証も行います。これらはRKMの初回実行時にインストールされます(UPLOAD_ABAP_BASEおよびUPLOAD_ABAP_CODEをtrueに設定)。

9. ODI_SAP_CON_POOL.jcoDestinationファイルは、SAPのログイン資格証明が含まれているため、実行が終わってから削除してください。

C ODI SAPコンポーネントのインストール

この付録では、ODI SAPコンポーネントを更新、インストールおよびアンインストールする方法について説明します。また、ODI SAP設定の検証方法についても説明します。

この付録の内容は次のとおりです。

- 第C.1項「ODI SAPコンポーネントの更新」

- 第C.2項「ODI SAPコンポーネントのインストール」

- 第C.3項「ODI SAP設定の検証」

- 第C.4項「ODI SAPコンポーネントのアンインストール」

C.1 ODI SAPコンポーネントの更新

初めてのインストール時に、RKMによっていくつかのODIオブジェクトがSAPシステムにインストールされます。このインストールは、2つの部分(ベース・オブジェクトおよびRFC)で構成されています。RKMオプションのUPLOAD_ABAP_BASEとUPLOAD_ABAP_CODEの両方がtrueに設定されている場合、ベース・オブジェクトとRFCがインストールされます。このようなフル・インストールでは、ODI SAPオブジェクトがSAPシステムにインストールされていないことが必要です。

ODI SAPコンポーネントのアンインストール方法の詳細は、「ODI SAPコンポーネントのアンインストール」を必要に応じて参照してください。

SAPシステムにインストール済のODIオブジェクトが、RKM SAP ERPバージョン32以降またはRKM SAP BWバージョン23以降でインストールされたものである場合、ベース・オブジェクトを再インストールする必要はなく、RFCのみを更新すれば十分です。RFCの再インストールは、RKMオプションのUPLOAD_ABAP_BASEをfalseに設定し、RKMオプションのUPLOAD_ABAP_CODEをtrueに設定してリバース・エンジニアリングを実行すると実現されます。

C.2 ODI SAPコンポーネントのインストール

ODI SAPコンポーネントのインストールは、TR (SAP送信リクエスト)を使用して行われます。これらの送信リクエストには、SAPユーザー・プロファイルも含まれます。この項では、ODI SAPプロファイルを割り当てることで、ODI SAPコンポーネントをインポートして、ODI SAPユーザーに必要な認可を付与する方法について説明します。

この項の内容は次のとおりです。

- 付録C「SAP送信リクエスト(TR)のインストール」

- 付録C「SAPユーザー・プロファイルのインストールと割当て」

C.2.1 SAP送信リクエスト(TR)のインストール

SAP送信リクエストをインストールするには、Bristlecone e-deliveryのWebサイトからTRをダウンロードする必要があります。

この項の内容は次のとおりです。

- 付録C「送信リクエスト・ファイルのダウンロード」

- 付録C「送信リクエスト・ファイルのインストール」

C.2.1.1 送信リクエスト・ファイルのダウンロード

TRファイルをダウンロードするには、次の手順を実行します。

1. 次のダウンロードURLにアクセスします。
http://www.bristleconelabs.com/edel/showdownload.html?product=odi_sap_km_transport

2. 必要なファイルを選択して、「Download」をクリックします。ログイン・ページにリダイレクトされます。
登録済ユーザーの場合、登録したEメールIDをユーザー名として入力し、受信したパスワードを入力してログインします。

新規ユーザーの場合は、次の手順を実行して登録します。

1. 次のURLへ移動します。
http://www.bristleconelabs.com/edel/Register.html

2. 「Register」をクリックします。

3. 登録フォームに詳細を入力します。
「Email ID」フィールドに仕事用の有効な電子メール・アドレスを入力します。これはパスワードを電子メールで送る場合に使用されます。

4. 手順1に示したダウンロード・リンクを再度開きます。

5. 適切なSAPバージョンのTRを選択して、ダウンロードします。

C.2.1.2 送信リクエスト・ファイルのインストール

TRファイルをインストールするには、次の手順を実行します。

1. 送信リクエストをインポートする目的のSAPシステムにログインします。

2. コマンド・フィールドに、Tcode STMSと入力して、[Enter]を押します。

「Transport Management System」画面が表示されます。

3. アイコンをクリックするか、[F5]を押します。

4. 「Import Overview」画面で、対象のシステムをダブルクリックします。この場合、SMXをダブルクリックすると、送信リクエストがSandboxサーバーにインポートされます。

5. リフレッシュして送信リストを更新します。

6. その他の送信リクエストを追加する場合は、メニューで「Extras」→「Other Requests」→「Add」をクリックします。

追加した送信リクエストは、システム・インポート・キューで確認できます。

7. 送信リクエスト番号を入力し、「Import Again」チェック・ボックスをクリックして、「Continue」をクリックします。

8. 送信リクエストを選択して、アイコンをクリックするか、[Ctrl] + [F11]を押します。

9. 001などの対象のクライアントを指定します。

10. 「Options」タブをクリックして、最初の3つのオプションを選択し、「Continue」をクリックします。

11. 「Start Import」ダイアログで、「Yes」をクリックします。
送信リクエストのインポートが開始します。次に示すように、送信リクエストのインポートが正常に完了するまで待機します。

注意:
TRファイルのアーティファクト: 使用される命名規則はR<6桁>.<ソース・システム>およびK<6桁>.<ソース・システム>です。
ソース・システムは、開発者のソース・システムです。

Kタイプの送信: Cofile (サイズは1から3KB)

Rタイプの送信: Datafile (サイズはCofileを超える)

- KファイルはCofile: すべての送信リクエストの制御およびメタデータ属性は、このファイルに格納されます。ファイルの形式はR<T.RNo>.<SID>です。これらは、コマンドまたは変更リクエストの情報ファイルです。この中には、送信タイプ、オブジェクト・クラス、必要なインポート手順および処理後の終了コードに関する情報が含まれます。

- RファイルはDatafile: すべての送信リクエストのデータがこのファイルに格納されます。ファイルの形式はK<T.RNo>.<SID>です。この中には、送信の実際のデータ、たとえばシステムで行われる変更などが含まれます。

C.2.2 SAPユーザー・プロファイルのインストールと割当て

SAPユーザー・プロファイルをインストールして割り当てるには、次の手順を実行します。

1. PFCGを実行し、メニューで「Role」をクリックして、「Upload」を選択します。

2. 「Information」ダイアログで「Continue」をクリックします。

3. .SAPファイルを保存した場所のパスを指定し、「Open」をクリックします。

4. ドロップダウン・リストをスクロールして、適切な入力を行い、「Allow」をクリックします。

5. 後続の画面で「Continue」をクリックします。
ロールが正常にアップロードされます。

6. 次に示すように、アップロードされたロールの名前を入力して、「Edit」アイコンをクリックします。

7. 「ロール」タブをクリックします。

8. 各ロールをアクティブ化するには、次の手順を実行します。

1. ロールZ:ODI_ANU_LBUをダブルクリックします。

2. 「Authorizations」タブをクリックします。

3. 次に示す「Change Authorization Data」アイコンをクリックします。

4. 「Generate」アイコンをクリックします。

5. 「Generate」をクリックして、「Back」をクリックします。

6. 「User」タブをクリックして、ユーザーを比較します。

注意:
「Authorizations」および「User」タブのステータスは緑である必要があります。

7. Z:ODI_COMPOSITE内のすべてのロールに対してこれらの手順を繰り返してアクティブ化します。

9. 「Save」をクリックします。

10. インポート・プロセスが正常に完了したら、インポートしたプロファイルをSAP ODIユーザーに割り当てます。

11. 第A.1項「SAP ABAP BWで必要な権限」または第B.1項「SAP ABAP ERPで必要な権限」の説明に従い、SAP開発者ライセンス・キーをリクエストして、ODI SAPユーザーに割り当てます。ODI SAPアダプタが機能するには、これは必須です。

注意:
一部の使用例では(本番での使用)、開発者キーを省略できます。詳細は、第A.1項「SAP ABAP BWで必要な権限」または第B.1項「SAP ABAP ERPで必要な権限」を参照してください。

C.3 ODI SAP設定の検証

この項では、SAP管理者用の基本的な検証手順について説明します。これらの手順の実行により、前述のインストール手順が成功したかどうかが確認されます。

この項の内容は次のとおりです。

- 付録C「共有フォルダ設定の検証」

- 付録C「FTP設定の検証」

- 付録C「SAP権限の検証」

- 付録C「SAPトランスポート層名の検証」

C.3.1 共有フォルダ設定の検証

共有フォルダの設定の検証は、共有ディレクトリを使用したデータ転送を計画する場合にのみ適用されます。FTP転送を使用する場合は、この項をスキップしてください。共有フォルダの設定の検証は、このガイド内の後続のステップを実行する前に実行する必要があります。通常、この検証はSAP Basisチームによって実行されます。

ステップ1: SAPアプリケーション・サーバーからのフォルダ・アクセスの検証

1. SAPGUIを起動します。

2. ODI SAPユーザーとパスワードを使用して、SAPシステムとクライアントに接続します。

3. トランザクションAL11に進みます。

4. 共有フォルダを選択します。

5. 共有フォルダをダブルクリックして、ディレクトリ宣言をテストします。
接続が正常である旨レポートされる必要があります。そうでない場合は、SAP basisチームに連絡してください。このテストに成功するまでは続行しないでください。

注意:
SAPでは、OSユーザー<sid>admを使用して、AL11で宣言されたディレクトリに接続します。

6. 画面を印刷します。

ステップ2: ODIエージェント・マシンからのフォルダ・アクセスの検証

1. ODIエージェントの実行に使用したWindowsユーザーIDを使用して、ODIエージェント・マシンにログインします。

2. 共有ディレクトリ・パスをWindows Explorerで開きます。
これにより、共有フォルダのコンテンツが一覧表示されます。資格証明の入力が必要ないことを確認してください。これが機能しなかった場合、または資格証明の入力が必要だった場合は、Windows管理者または共有フォルダが物理的に置かれているシステムのシステム管理者に連絡してください。このテストに成功するまでは続行しないでください。

3. 画面を印刷します。

C.3.2 FTP設定の検証

FTP設定の検証は、FTPを使用したデータ転送を計画する場合にのみ適用されます。データ転送に共有ディレクトリを使用する場合は、この項をスキップしてください。FTP設定の検証は、このガイド内の後続のステップを実行する前に実行する必要があります。通常、この検証はSAP Basisチームによって実行されます。

ステップ1: SAPFTPA接続先の検証

1. SAPGUIを起動します。

2. ODI SAPユーザーとパスワードを使用して、SAPシステムとクライアントに接続します。

3. トランザクションSM59に進みます。

4. TCP/IP接続を開きます。

5. SAPFTPA接続先を開きます。

6. 「Test connection」をクリックします。
接続が正常である旨レポートされる必要があります。そうでない場合は、SAP basisチームに連絡してください。このテストに成功するまでは続行しないでください。

7. 画面を印刷します。

ステップ2: FTP接続のテスト

1. トランザクションSE38に進みます。

2. 関数モジュールRSFTP002を表示します。

3. [F8]を押して、ABAPプログラムを実行します。

4. FTPユーザーIDとパスワードを入力します。

5. FTPサーバー・ホスト名またはIPアドレスを入力します。

6. cd /またはcd <ODI target directory>を入力します。

7. RFC_DESTINATIONフィールドに、SAPFTPAを入力します。

8. [F8]を押して、テストを実行します。
接続が正常である旨レポートされる必要があります。次のようなメッセージが表示されます。

250 CWD successful.

このテストが成功しなかった場合は、SAP basisチームに連絡してください。このテストに成功するまでは続行しないでください。

9. 画面を印刷します。

C.3.3 SAP権限の検証

この項では、主要なSAP権限の一部をテストする方法について説明します。必ずこれらのテストの検証に成功してから、このガイド内の後続のステップに進んでください。通常、この検証はSAP Basisチームによって実行されます。

次のステップを実行して、SAPユーザーに適切な開発者権限および開発者ライセンス・キーがあることを検証します。

1. SAPGUIを起動します。

2. ODI SAPユーザーとパスワードを使用して、SAPシステムとクライアントに接続します。

3. トランザクションSE38に進みます。

4. プログラム名のフィールドに、ZSAP_TESTなどの任意のサンプル・プログラム名を入力します。

5. 「Create」をクリックします。

6. トランザクションSE37およびSE11に対しても同様のテストを実行します。

トランザクションで、キーを要求されたりその他の認証メッセージが表示されたりすることなくプログラムの作成が許可された場合、SAPユーザーに適切な開発者権限およびライセンス・キーがあることが検証されます。それ以外の場合、SAP BasisチームがこのSAPユーザーをservice.sap.comに登録してライセンス・キーを取得するとともに、開発者権限の取得についても支援します。

C.3.4 SAPトランスポート層名の検証

SAPコネクタでは、関数モジュールなどのSAPオブジェクトがSAP開発システムに作成されるため、開発が終了したら、これらの変更をQAおよび本番システムにトランスポートする必要があります。SAPの変更およびトランスポート・システムでは、SAPトランスポート・レイヤー名を使用して、変更のルートを特定します。トランスポート・レイヤーは、各開発クラスおよびそのクラス内のすべてのオブジェクトに割り当てられます。トランスポート・レイヤーによって次の点が決定されます。

- どのSAPシステムで開発またはリポジトリ・オブジェクトへの変更が行われるか

- 開発作業の完了時に、グループ内の他のシステムにオブジェクトがトランスポートされるかどうか

統合ルートは、開発システムから品質保証システムまで、トランスポート・レイヤーZ<SID>を介して作成されます。これは次に、顧客開発およびカスタマイズ用の標準トランスポート・レイヤーになります。

SAP標準オブジェクトのトランスポートの場合、統合ルートは、開発システムから品質保証システムまで、トランスポート・レイヤーSAPを介して作成されます。

RKM SAP ERPを初回実行する前に、正しいトランスポート・レイヤー名を指定することが重要です。

次のステップを実行して、SAPランドスケープ内で定義されているトランスポート・レイヤーのリストを特定します。

1. トランスポート・ドメイン・コントローラとして機能しているSAPシステム内のクライアント000に、トランザクションSTMSを経由してログインします。

2. 「Overview」→「Transport Routes」を選択します。「Display Transport Routes」ダイアログが表示されます。

3. 「Goto」→「Graphical Editor」を選択します。

4. モードを切り替えるには、「Configuration」 > 「Display」 <-> 「Change」を選択します。

5. SAPシステムの上にカーソルを置きます。

6. 「Edit」→「System」→「Change」を選択します。「Change System Attriburtes」ダイアログが表示されます。

7. 「StandardTransport Layer」タブを選択します。

8. SAPシステムのトランスポート・レイヤーを変更します。

9. 異なるトランスポート・レイヤーのリストが結果として表示されます。

デフォルトで、RKMオプションSAP_TRANSPORT_LAYER_NAMEはSAPに設定されます。どのトランスポート・レイヤーを使用するかは、SAP Basis管理者に問い合せてください。このトランスポート・レイヤー名は、SAP_TRANSPORT_LAYER_NAME RKMオプションで設定する必要があります。不正なまたは無効なトランスポート・レイヤー名を使用すると、インストール・プロセス時に重大な遅れが生じます。

C.4 ODI SAPコンポーネントのアンインストール

初回インストール時に、一部のODIオブジェクトがRKMによってSAPシステムにインストールされます。このインストールは、ベース・オブジェクトおよびRFCという2つの部分で構成されます。RKMオプションのUPLOAD_ABAP_BASEとUPLOAD_ABAP_CODEの両方がtrueに設定されている場合、ベース・オブジェクトとRFCがインストールされます。そのような完全インストールでは、ODI SAPオブジェクトがSAPシステムにインストールされていないようにする必要があります。ODI SAPコンポーネントをアンインストールする必要があります。

ODI SAPコンポーネントをアンインストールするには、次の手順を実行します。

1. SAP GUIを起動します。

2. アンインストールするSAPシステムに接続します。

3. トランザクションSE80に移動し、パッケージ名(ZODI_LKM_PCKGなど)を入力します。

4. パッケージ名を右クリックして、コンテキスト・メニューから「other options」→「rebuild object list」を選択します。

5. オブジェクト・リストを開き、次の順序で各オブジェクトを削除します。

- プログラム

- 機能グループ

- 表タイプ

- 構造

- メッセージ・クラス

送信リクエストが要求された場合、新しいリクエストを作成して、リクエストした番号をメモ帳にコピーします。

6. 手順4を繰り返します。
オブジェクトが残っている場合、そのオブジェクトが表示されます。オブジェクトを削除します。

7. パッケージ名を右クリックして、「display object directory entry」→「press lock overview」ボタンに移動し、リクエスト番号をコピーしてメモ帳に保存します。

8. トランザクションSE10に移動し、すべての送信リクエストを解放します。

9. トランザクションSE16に移動し、表TADIRの「DEVCLASS」フィールドにパッケージ名を入力します。
パッケージ名の単一レコードが必要です。表にエントリがある場合、SE11と表E071に移動します。オブジェクトと、エントリがTADIRにあるオブジェクト名を指定します。

10. フィールド「LOCKFLAG」にマークXを付けて、実行します。
この場所からタスクまたはリクエストを取得します。Tcode SE01に移動して、このリクエストを解放します。

11. トランザクションSLG0に移動して、zodi*で検索してメッセージ・クラスを選択し、サブオブジェクトに移動してオブジェクトを削除します。
戻るボタンを押して、メッセージ・クラスを削除します。「Save」ボタンを押します。送信リクエストが要求された場合、新しいリクエストを作成して、メモ帳に保存します。

12. SE80からパッケージを削除します。
送信リクエストが要求されます。リクエストを作成し、トランザクションSE10を使用してそれを解放します。

13. パッケージZODI_RKM_PACKAGEに対して手順3から12を繰り返します。

いずれかのオブジェクトが削除されていない場合、SU53に移動して、欠落している権限を確認します。同じ権限を該当のSAPユーザーに付与して、そのオブジェクトの削除を続行します。

ODI SAPコンポーネントのアンインストールの検証方法については、付録C「ODI SAPコンポーネントのアンインストールの検証」を参照してください。

C.4.1 ODI SAPコンポーネントのアンインストールの検証

ODI SAPコンポーネントのアンインストールを検証するには、次の手順を実行します。

1. トランザクションSE11に移動します。

2. 表名TADIRを入力して、「Display」をクリックします。

3. 「Application」ツールバーで、「Contents」をクリックします。

4. フィールド「DEVCLASS」にパッケージ名を指定して、[F8]を押します。
エントリがない場合、メッセージ「no table entries found」が表示されます。

エントリが表示される場合、アンインストールは完了していないため、再インストールを試行しないでください。

5. トランザクションSE11に移動します。表名T100を入力して、「Display」をクリックします。

6. 「Application」ツールバーで、「Contents」をクリックします。

7. フィールド「ARBGB」にzodi*を入力して、[F8]を押します。
エントリがない場合、メッセージ「no table entries found」が表示されます。

エントリが表示される場合、アンインストールは完了していないため、再インストールを試行しないでください。

D 開発から本番へのODIおよびSAPコンポーネントの移行

この付録では、開発環境から本番環境へのODIおよびSAPコンポーネントの移行方法について説明します。この付録では、システムECC 5.0が使用されます。

この付録の内容は次のとおりです。

- 第D.1項「送信リクエスト(TR)」

- 第D.2項「リモート・ファンクション・コール(RFC)」

- 第D.3項「同じ送信リクエストへのマッピングの追加」

- 第D.4項「ODIパッケージの作成」

- 第D.5項「ODIシナリオの生成」

- 第D.6項「本番への送信リクエストの解放」

- 第D.7項「本番へのマッピングの送信リクエストの解放」

- 第D.8項「ODIシナリオの実行」

D.1 送信リクエスト(TR)

ODI SAPアダプタは、TRにバンドルされる様々なSAPオブジェクト・セットを使用します。

- ODI SAPアダプタ本番TR: 2つの本番TRがあります。これらは、ダウンロードで入手でき、ODI SAPアダプタ本番インストール時にインストールされます。

- 開発に関連するSAPオブジェクトを含むTR。たとえば、ODIはSAPシステムからメタデータを取得できます。

- 本番に関連するSAPオブジェクトを含むTR。たとえば、データ抽出ジョブを実行およびモニターします。

- ODI生成TR: 開発時、ODI SAPアダプタはABAPプログラムを生成します。これらのプログラムは、(自動的に)アップロードされ、TRの一部になります。ユーザーの選択に応じて、データ抽出用のABAPプログラムを含むTRが1つまたは複数ある場合があります。

この項では、これらのTRと、SAPでのこれらの調査について説明します。

注意:
以下の点に注意する必要があります。

- TRは、SAP BASISチームによって解放されます。

- TRが自動的に本番に移動する場合があります。これは、送信ルートが構成される場合に生じます。TRは手動でインポートする方が適切とみなされるため、ほとんどの場合、開発またはQAからの本番への送信ルートは構成されません。自動的に構成されるTRの場合、順序が重要な役割を果すため、TRの正しい順序に重点が置かれます。

- 分散本番環境では、ワークベンチTRをすべてのアプリケーション・サーバーにインポートする必要があります。

この項の内容は次のとおりです。

- 付録D「RKM実行後に作成されるTRのリストの表示」

- 付録D「DEV関連の送信リクエスト(TR)」

- 付録D「PROD関連の送信リクエスト(TR)」

D.1.1 RKM実行後に作成されるTRのリストの表示

RKM実行後に作成されるTRのリストを表示するには、次の手順を実行します。

1. TCODE SE10を入力します。

2. 画面の左下隅にある「Display」ボタンをクリックします。

「Workbench」の下に、様々なターゲット・システムが表示されます。次に示すように、VQ5などが表示されます。

3. RKMインストール時に使用されたトランスポート層名(SAPなど)に関連付けられたターゲット・システム(VQ5など)を開きます。前述した次の2つの送信リクエストが表示されます。

- ODI SAP PRODUCTION OBJECTS

- ODI SAP DEVELOPMENT OBJECTS

TRフィールドの詳細は、付録D「TRフィールドの説明」を参照してください。

D.1.1.1 TRフィールドの説明

次に、各種TRフィールドについて説明します。

- TR Name: EQ5K900562

注意:
EQ5K900562。ここで、EQ5はシステム識別情報(SID)、Kはキーワードを示し、数字は、システムによって範囲から自動的に生成されます。これは、900001で開始し、システム管理者は管理しません。

- TR Description: ODI SAP PRODUCTION OBJECTS

- Transport Layer Name: SAP

D.1.2 DEV関連の送信リクエスト(TR)

説明がODI SAP DEVELOPMENT OBJECTSのTRは、開発に関連します。これを開くと、「Package」、「Function Group」、「Message Class」が表示されます。これらは、このTRの下に作成されます。

D.1.3 PROD関連の送信リクエスト(TR)

説明がODI SAP PRODUCTION OBJECTSのTRは、本番に関連します。これを開くと、「Package」、「Function Group」、「Object List of Request」(APPL_LOGなど)が表示されます。これらは、このTRの下に作成されます。

D.2 リモート・ファンクション・コール(RFC)

生成されたRFCのセット全体は、その実行環境に基づき2つのSAPパッケージ下でグループ化されます。次の2つのSAPパッケージが作成されます。

- ZODI_RKM_PCKG: 開発SAPシステムで必要なすべてのRFCが含まれます。

- ZODI_LKM_PCKG: 本番SAPシステムのみで必要なすべてのRFCが含まれます。

SAPシステムに作成されるRFCのリストは、TCODE SE80を使用して確認できます。

SAPシステムに作成されるRFCのリストを確認するには、次の手順を実行します。

1. TCODE SE80を開きます。

2. オプション「Test Repository」の下の最初のドロップダウン・リストで、「Package」を選択します。

3. パッケージ名(ZODI_RKM_PCKG/ZODI_LKM_PCKG)を入力し、[Enter]を押します。

4. 「Object Name」セグメントの下で、「Function Groups」→「ZODI_FGR」→「Function Modules」を開きます。インストールされているRFCのリストが表示されます。

D.3 同じ送信リクエストへのマッピングの追加

デフォルトでは、ODI SAPアダプタは、マッピングにつき1つのTRを作成します。複数のマッピングがシナリオで使用される場合、ユーザーは、生成されたABAPプログラムをSAP内に単一ユニットとして移動することがあります。これを最適に行うには、すべてのABAPグループを1つのTRにグループ化します。この項では、ODIで複数のABAPプログラムを同じTRにグループ化する方法について説明します。

バックグラウンド処理では、ODIは、SAP_REPORT_NAME_PREFIXが同じすべてのABAPプログラムを同じTRに組み込みます。一番最初に実行されるマッピングにより、KMオプションSAP_TRANSPORT_REQUEST_DESCを介してSAPにTRの説明が定義されます。詳細は、第D.3.1項「KMオプションの説明」を参照してください。

同じ送信リクエストの下にインタフェースを追加するには、次の手順を実行します。

1. 2つのマッピングを作成します。たとえば、EXTRACT MAKT OBJECT DATAやEXTRACT MARA OBJECT DATAなどです。

2. 「Flow」タブで、オプション「BACKGROUND_PROCESSING」の値を「TRUE」に設定します。

3. 同じSAP_TRANSPORT_REQUEST_DESC (MM Tables Extractionsなど)を両方のマッピングに入力します。
SAP_TRANSPORT_REQUEST_DESCオプションの詳細は、付録D「KMオプションの説明」を参照してください。

4. SAP_REPORT_NAME_PREFIX (ZMM_など)を両方のマッピングに入力します。
SAP_REPORT_NAME_PREFIXオプションの詳細は、付録D「KMオプションの説明」を参照してください。

5. 両方のマッピングを実行します。

6. SAP TCODE SE10に移動します。

7. 「Display」ボタンをクリックします。
KMオプションに入力した説明付きの新規作成送信リクエストが表示されます。

8. 新規作成した「TR」→「Object List of Request」→「Program」を開くと、この下にLKMの実行で作成されたレポートが表示されます。

前述の手順の実行後、前述の図に示すように、両マッピングZMM_ZODI_125001_134001およびZMM_ZODI_135001_143001が、同じ送信リクエストに追加されます。

注意:
マッピングZMM_ZODI_135001_143001の場合
ZMM_: SAP_REPORT_NAME_PREFIXです。

ZODI_135001_143001: 動的ABAPプログラムの名前です。

前述の2つのABAPプログラムのグループ化は、SAP_REPORT_NAME_PREFIX KMオプションの値が同じために行われます。

D.3.1 KMオプションの説明

この項では、KMオプションSAP_REPORT_NAME_PREFIXおよびSAP_TRANSPORT_REQUEST_ DESCRIPTIONについて説明します。

- SAP_REPORT_NAME_PREFIX: 共通の送信リクエストにグループ化されるすべてのレポートの接頭辞を定義します。ABAP_PROGRAM_NAMEと一緒に使用されます。BACKGROUND=1の場合のみ適用されます。接頭辞はZから開始してください。推奨されるレポート名の接頭辞については、SAP管理者に問い合せてください。

- SAP_TRANSPORT_REQUEST_ DESCRIPTION: KMオプションSAP_FUNCTION_GROUPで定義される機能グループに対して、ODIで作成されるSAP送信リクエストの説明を定義します。デフォルトでは、ODIステップ名(通常はマッピング名)が使用されます。既存の送信リクエストの説明は置き換えられます。ODI:<%=odiRef.getPackage("PACKAGE_NAME")%>のようなコード生成式は、いくつかのインタフェースを1つのSAP機能グループ/SAP送信リクエストにグループ化する場合に役立つ場合があります。
デフォルト: <%=odiRef.getStep("STEP_NAME")%>

D.4 ODIパッケージの作成

ODIパッケージを作成するには、次の手順を実行します。

1. SAP ERPプロジェクト(SAP ERP Demoなど)に移動し、「First Folder」を開き、「Packages」を右クリックして「New Package」を選択します。

2. 「Definition」ウィンドウで、パッケージ名(MM_TABLE_EXTRACTION_DEMOなど)を入力して、「Save」をクリックします。

3. 「Diagram」タブをクリックします。

4. パッケージでステップを定義するには、EXTRACT MARA OBJECT DATAおよびEXTRACT MAKT OBJECT DATAインタフェースを「Designer window」→「Project」→「First Folder」→「Interfaces」から選択して、「Diagram」タブにドラッグアンドドロップします。これらのコンポーネントがパッケージにステップとして表示されますが、まだ順序付けされていません。

5. パッケージで最初のステップを指定するには、このステップを選択して右クリックし、コンテキスト・メニューから「First Step」を選択します。緑色の小さな矢印がこのステップに表示されます。

6. ダイアグラムのツール・バーから「Next Step on Success」アイコンを選択します。

7. このツールでステップを順序付けるには、1つのステップをクリックしてから、実行する次のステップをクリックします。

D.5 ODIシナリオの生成

ODIシナリオを生成するには、次の手順を実行します。

1. MM_TABLE_EXTRACTION_DEMOパッケージを選択します。

2. 「Generate Scenario」を右クリックして選択します。
「New Scenario」ダイアログ・ボックスが表示されます。

3. 「OK」をクリックします。Oracle Data Integratorで処理が行われ、シナリオが生成されます。
生成されたシナリオは、次に示すように「Scenarios」の下に表示されます。

D.6 本番への送信リクエストの解放

本番に送信リクエストを解放するには、その本番(ZODI_LKM_PCKG)パッケージに関連付けられている送信のリクエスト番号が必要です。

送信リクエストを本番に解放するには、次の手順を実行します。

1. SAPシステムのTCODE SE11に移動し、「Database table」フィールドにE071と入力します。

2. 「Display」をクリックします。

3. 「Content」アイコンをクリックします。

4. 「OBJ_NAME」フィールドにパッケージ名ZODI_LKM_PCKG、「LOCKFLAG」フィールドにXを入力します。

5. [F8]を押すか実行します。
これで送信リクエスト番号が付与されます。

6. 送信リクエスト番号を選択してコピーします。

7. TCODE SE01に移動し、コピーした送信リクエスト番号を入力します。

8. 「Display」をクリックします。
リクエスト番号とタスク番号は、該当リクエストの下にオブジェクトとともに表示されます。

9. リクエスト番号の下のタスク番号をクリックして、アイコンをクリックします。

10. リクエスト番号をクリックして、アイコンをクリックします。

注意:
チェック・マークは、送信リクエストが解放されたことを表します。

D.7 本番へのマッピングの送信リクエストの解放

マッピングの送信リクエストを解放するには、そのマッピングに関連付けられている送信のリクエスト番号が必要です。

マッピングに関連付けられているTRを見つけるには、次の手順を実行します。

1. SAPシステムでTCODE SE10に移動し、LKMの実行に使用されるユーザー名を入力します。

2. 「Modifiable」を選択して「Request Status」を変更します。

3. 「Display」をクリックします。

4. [CTRL] + [F]を押して検索します。LKM (MM TABLES EXTRACTIONなど)の実行中に、インタフェースに入力されたSAP_TRANSPORT_REQUEST_DESC値を指定します。

5. 検索アイコンをクリックします。
送信リクエスト番号とその説明を示すポップアップが表示されます。

6. 送信リクエスト番号をダブルクリックします。
リクエスト番号とタスク番号は、該当リクエストの下にオブジェクトとともに表示されます。

7. リクエスト番号の下のタスク番号をクリックして、アイコンをクリックします。

8. リクエスト番号をクリックして、アイコンをクリックします。

注意:
チェック・マークは、送信リクエストが解放されたことを表します。

D.8 ODIシナリオの実行

ODIシナリオを実行するには、次の手順を実行します。

1. シナリオMM_TABLE_EXTRACTION_DEMO Version 001を右クリックします。

2. コンテキスト・メニューから「Execute」を選択します。

3. 「Execution」および「Information」ダイアログで「OK」をクリックします。

シナリオの実行レポートを「Operator」で確認できます。パッケージの実行時と同様の結果が得られます。

シナリオのツリー・ビューを開いて、シナリオの実行レポートをデザイナ・モジュールで確認することもできます。

索引
C  D  E  F  H  I  J  K  L  M  O  P  R  S  T  U  V  W  X

C

CKM Hive, 3.1.2, 3.6.5.2

構成設定

Oracle Data Integratorエージェント, 3.3.5

Oracle Data Integratorインタフェース, 3.6

Oracle Data Integrator Studio, 3.3.6

CREATE_TARG_TABLEオプション, 3.6.1, 3.6.2, 3.6.5.1, 3.6.5.3, 3.6.6, 3.6.7

D

データ整合性チェック, 3.6.5.2

データソース

Oracle Data Integratorに対する定義, 3.3.1

データ変換, 3.6.5.3 Oracle Data Integratorでのデータ検証, 3.1.2, 3.6.5.3 データサーバー・オブジェクト

Oracle Data Integrator用に作成, 3.3.1

DEFER_TARGET_LOADオプション, 3.6.1 DELETE_ALLオプション, 3.6.6 DELETE_TEMPORARY_OBJECTSオプション, 3.6.1, 3.6.4, 3.6.5.1, 3.6.5.3, 3.6.6, 3.6.7 ディレクトリ

Oracle Data Integratorによりアクセス可能, 3.3.1

Oracle Loader for Hadoop出力用, 3.6.7

ソフトウェアのダウンロード, 3.2.1 ドライバ

JDBC, 3.3.2

DROP_ERROR_TABLEオプション, 3.6.5.2

E

EXT_TAB_DIR_LOCATIONオプション, 3.6.6

EXTERNAL_TABLEオプション, 3.6.1

EXTRA_OLH_CONF_PROPERTIESオプション, 3.6.6

F

Oracle Data Integratorのファイル形式, 3.6.1

ファイル・ソース

Oracle Data Integratorに対する定義, 3.3.1

File to Hive KM, 3.1.2, 3.6.1 FILE_IS_LOCALオプション, 3.6.1 File-Hive to Oracle (OLH) KM, 3.1.2, 3.6.6, 3.6.7 フレックス・フィールド, 3.3.2, 3.3.3, 3.5.2, 3.5.3 FLOW_CONTROLオプション, 3.6.5.1 FLOW_TABLE_OPTIONSオプション, 3.6.4, 3.6.6, 3.6.7

H

HDFSファイル

Hiveへのコピー, 3.6.1

Hiveアプリケーション・アダプタ, 3.1.2, 3.6.5.2 Hive Control Append KM, 3.1.2, 3.6.5.1 Oracle Data IntegratorのHiveデータソース, 3.3.2, 3.3.3 Hiveフレックス・フィールド, 3.5.2, 3.5.3 Hive Query Language (HiveQL), 3.1.1 Hive表

データのロード(Oracle Data Integrator), 3.6.1, 3.6.2, 3.6.3, 3.6.4

リバース・エンジニアリング, 3.1.2, 3.5.2, 3.5.3

Oracle Data Integratorでのリバース・エンジニアリング, 3.5.2, 3.5.3

Hive Transform KM, 3.1.2, 3.6.5.3

I

IKM File to Hive, 3.1.2, 3.6.1, 3.6.1

IKM File-Hive to Oracle (OLH), 3.1.2, 3.6.6, 3.6.7

IKM Hive Control Append, 3.1.2, 3.6.5.1, 3.6.5.1, 3.6.5.3

IKM Hive Transform, 3.1.2, 3.6.5.1, 3.6.5.3

INSERT_UPDATEモード, 3.3.2, 3.3.3

インストール

Oracle Data Integrator Application Adapter for Hadoop, 3.2

インタフェース構成

Oracle Data Integrator, 3.6

J

JDBCドライバ, 3.3.2

K

ナレッジ・モジュール

説明, 3.1.2

CKM、IKMおよびRKMのエントリも参照

L

Hiveへのデータ・ファイルのロード, 3.6.1, 3.6.2, 3.6.3, 3.6.4

Oracle Data Integratorのロード・オプション, 3.6.1

ローカル・ファイル

Hiveへのコピー, 3.6.1

LOG_FILE_NAMEオプション, 3.5.3, 3.5.3, 3.5.3

M

MAPRED_OUTPUT_BASE_DIRオプション, 3.6.6, 3.6.7

O

OLH_OUTPUT_MODEオプション, 3.6.6

Oracle Data Integratorエージェント

構成, 3.3.5

Oracle Data Integrator Application Adapter

説明, 3.1

Oracle Data Integrator Application Adapter for Hadoop

モデルの作成, 3.5.1

データソース, 3.3.1

フレックス・フィールド, 3.5.2, 3.5.3

インストール, 3.2

ロード・オプション, 3.6.1

プロジェクトの設定, 3.4

トポロジ設定, 3.3

Oracle Data Integrator Studioの構成, 3.3.6 Oracle Loader for Hadoop

Oracle Data Integratorでの使用, 3.1.2, 3.3.5, 3.6.6, 3.6.7

Oracle Technology Network

動作要件, 3.2.1

OVERRIDE_INPUTFORMATオプション, 3.6.6, 3.6.7 OVERRIDE_ROW_FORMATオプション, 3.6.1

P

POST_TRANSFORM_DISTRIBUTEオプション, 3.6.5.3

POST_TRANSFORM_SORTオプション, 3.6.5.3

PRE_TRANSFORM_DISTRIBUTEオプション, 3.6.5.3

PRE_TRANSFORM_SORTオプション, 3.6.5.3

プロジェクト

Oracle Data Integratorでの設定, 3.4

R

RECYCLE_ERRORSオプション, 3.6.5.1

Hiveでのリバース・エンジニアリング, 3.1.2, 3.5.2, 3.5.3

Hive表のリバースエンジニアリング, 3.5.2, 3.5.3

RKM Hive, 3.1.2, 3.5.2, 3.5.3

S

スクリプト

スニペット, 3.1.1

Oracle Data Integratorのスニペット, 3.1.1 ソフトウェアのダウンロード, 3.2.1 STATIC_CONTROLオプション, 3.6.5.1 STOP_ON_FILE_NOT_FOUNDオプション, 3.6.1

T

TEMP_DIRオプション, 3.6.6, 3.6.7

TRANSFORM_SCRIPTオプション, 3.6.5.3

TRANSFORM_SCRIPT_NAMEオプション, 3.6.5.3

データの変換

Oracle Data Integrator, 3.1, 3.6.5.1

TRUNCATEオプション, 3.6.1, 3.6.5.1, 3.6.6

U

USE_HIVE_STAGING_TABLEオプション, 3.6.6, 3.6.7, 3.6.7

USE_LOGオプション, 3.5.3

USE_ORACLE_STAGING_TABLEオプション, 3.6.6, 3.6.7

USE_STAGING_TABLEオプション, 3.6.1

V

データの検証

Oracle Data Integrator, 3.1, 3.1.2, 3.6.5.1

W

ワイルドカード文字

リソース名, 3.6.1

ODIでのデータソースの設定, 3.3.1

IKM File To Hive (Load Data)でのサポート, 3.1.2

X

xml-referenceディレクトリ, 3.3.2, 3.3.3

オラクル社の法律上の注意点について

コピーライトについて

Copyright © 1994-2015, Oracle and/or its affiliates.All rights reserved.

商標と登録商標について

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

制限付権利

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション（人的傷害を発生させる可能性があるアプリケーションを含む）への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性（redundancy）、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

ドラフトのアルファ版およびベータ版ドキュメントについて

このドキュメントが試作版の場合:

このドキュメントは試作版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。オラクル社およびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。