Oracle® Fusion Middleware Oracle Data Integratorスタート・ガイド

11g リリース1(11.1.1)

B65041-02(原本部品番号:E12641-03)

目次

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

はじめに

- 対象読者

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

- 関連ドキュメント

- 表記規則

1 Oracle Data Integratorインストールの概要

- 1.1 Oracle Data Integratorの概要

- 1.1.1 ビジネス上の問題

- 1.1.2 固有のソリューション

- 1.2 ODIコンポーネントのアーキテクチャ

- 1.2.1 リポジトリ

- 1.2.2 ODI Studioとユーザー・インタフェース

- 1.2.3 ランタイム・エージェント

- 1.2.4 Oracle Data Integratorコンソール

- 1.3 Oracle Data Integratorの導入

2 Oracle Data Integratorとデモンストレーション環境のインストール

- 2.1 インストールの準備

- 2.1.1 システム要件および動作保証の確認

- 2.1.2 Oracle Fusion Middlewareによる64ビットJDKのサポートの理解

- 2.1.3 ODIリポジトリの作成

- 2.2 Oracle Data Integratorのインストール

- 2.2.1 インストーラとデモ環境のダウンロード

- 2.2.2 インストーラの起動

- 2.2.3 インストール・タイプ

- 2.2.4 インストール手順

- 2.3 デモンストレーション環境のインストール

3 ETLプロジェクトの使用

- 3.1 サンプル環境

- 3.2 データ・モデル

- 3.2.1 Orders Application - HSQL

- 3.2.2 Parameters - FILE

- 3.2.3 Sales Administration - HSQL

- 3.3 統合の課題

4 Oracle Data Integratorの起動

- 4.1 デモンストレーション環境の起動

- 4.2 Oracle Data Integrator Studioの起動

- 4.2.1 ODI Studioの起動

- 4.2.2 新規Getting Startedログインの定義

- 4.3 ODIナビゲータの使用の概要

- 4.3.1 デザイナ・ナビゲータ

- 4.3.2 オペレータ・ナビゲータ

5 データ品質管理の実装

- 5.1 データ整合性制御の概要

- 5.2 SRC_CUSTOMERの制御の例

- 5.2.1 目標

- 5.2.2 問題の解釈

- 5.2.3 制約の作成

- 5.2.3.1 年齢制約

- 5.2.3.2 参照制約

- 5.2.4 静的制御の実行

- 5.2.5 オペレータ・ナビゲータでの制御の実行の追跡

- 5.2.6 オペレータ・ナビゲータでの結果の解釈

- 5.2.6.1 無効なレコードの数の特定

- 5.2.6.2 無効なレコードの確認

6 統合インタフェースの使用

- 6.1 Pop. TRG_CUSTOMERインタフェースの例

- 6.1.1 目的と統合の要件

- 6.1.2 インタフェースの定義

- 6.1.3 統合インタフェースの作成

- 6.1.3.1 新規統合インタフェースの挿入

- 6.1.3.2 ターゲット・データストアの定義

- 6.1.3.3 ソース・データストアの定義

- 6.1.3.4 ルックアップ表の定義

- 6.1.3.5 ソース・データストア間の結合の定義

- 6.1.3.6 マッピングの定義

- 6.1.3.7 データ・ロード・ストラテジ(LKM)の定義

- 6.1.3.8 データ統合ストラテジ(IKM)の定義

- 6.1.3.9 データ制御ストラテジの定義

- 6.2 Pop. TRG_SALESインタフェースの例

- 6.2.1 目的と統合の要件

- 6.2.2 インタフェースの定義

- 6.2.3 統合インタフェースの作成

- 6.2.3.1 新規統合インタフェースの挿入

- 6.2.3.2 ターゲット・データストアの定義

- 6.2.3.3 ソース・データストアの定義

- 6.2.3.4 ソース・データストア間の結合の定義

- 6.2.3.5 注文フィルタの定義

- 6.2.3.6 変換ルールの定義

- 6.2.3.7 データ・ロード・ストラテジ(LKM)の定義

- 6.2.3.8 データ統合ストラテジ(IKM)の定義

- 6.2.3.9 データ制御ストラテジの定義

7 パッケージの使用

- 7.1 概要

- 7.1.1 データ統合フローの自動化

- 7.1.2 パッケージ

- 7.1.2.1 シナリオ

- 7.2 Load Sales Administrationパッケージの例

- 7.2.1 目的

- 7.2.2 Oracle Data Integratorに用意されている開発物

- 7.2.3 問題の分析

- 7.2.4 パッケージの作成

- 7.2.4.1 新規パッケージの作成

- 7.2.4.2 パッケージでのステップの挿入

- 7.2.4.3 パッケージ内のステップの順序の定義

8 開発物の実行と結果の確認

- 8.1 Load Sales Administrationパッケージの実行

- 8.1.1 パッケージの実行

- 8.1.2 オペレータ・ナビゲータでのパッケージの実行の追跡

- 8.1.3 Pop. TRG_CUSTOMERセッション・ステップの結果の解釈

- 8.1.3.1 処理されたレコードの数の特定

- 8.1.3.2 結果のデータの表示

- 8.1.3.3 無効なレコードと不正なデータの確認

- 8.1.3.4 無効なデータの修正

- 8.1.3.5 処理されたレコードの確認

- 8.2 Pop. TRG_SALESインタフェースの実行

- 8.2.1 統合インタフェースの実行

- 8.2.2 オペレータ・ナビゲータでのインタフェースの実行の追跡

- 8.2.3 結果の解釈

- 8.2.3.1 処理されたレコードの数の特定

- 8.2.3.2 結果のデータの表示

- 8.2.3.3 無効なレコードと不正なデータの確認

9 統合されたアプリケーションのデプロイ

- 9.1 概要

- 9.2 シナリオの作成

- 9.3 シナリオの実行

- 9.3.1 ODI Studioからのシナリオの実行

- 9.4 シナリオの実行の追跡

10 Oracle Data Integratorのその他の情報

- 10.1 まとめ

- 10.2 Oracle Data Integratorのその他の利用法

- 10.3 関連情報

Oracle® Fusion Middleware

Oracle Data Integratorスタート・ガイド

11g リリース1(11.1.1)

B65041-02(原本部品番号:E12641-03)

2013年2月

Oracle Fusion Middleware Oracle Data Integratorスタート・ガイド, 11g リリース1(11.1.1)

B65041-02

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

原本著者:  Laura Hofman Miquel

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

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

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

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(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 Data Integratorの基礎的な情報を示します。Oracle Data Integratorの使用方法の理解に役立つ大まかな背景情報と詳細な例が含まれています。

ここでは、次のトピックについて説明します。

- 対象読者

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

- 関連ドキュメント

- 表記規則

対象読者

このガイドは、Oracle Data Integratorを統合プロセスの開発ツールとして使用する方法に関心を持つユーザーを対象読者としています。

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

Oracleのアクセシビリティについての詳細情報は、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ドキュメントを参照してください。

- 『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』

- 『Oracle Fusion Middleware Oracle Data Integratorインストレーション・ガイド』

- Oracle Fusion MiddlewareのOracle Data Integratorアップグレード・ガイド

- Oracle Fusion Middleware Oracle Data Integrator接続性およびモジュール・ガイド

- 『Oracle Fusion Middleware Oracle Data Integratorナレッジ・モジュール開発者ガイド』

- Oracle Data Integrator 11gオンライン・ヘルプ

- Oracle Data Integrator 11gリリース・ノート(Oracle Data Integrator 11gのインストールに付属、Oracle Technology Networkからも入手可能)

表記規則

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

規則

意味

太字

太字は、操作に関連するグラフィカル・ユーザー・インタフェース要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

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

固定幅フォント

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

1 Oracle Data Integratorの概要

この章では、Oracle Data Integratorの概要、技術アーキテクチャおよびこのスタート・ガイドの内容を示します。

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

- 第1.1項「Oracle Data Integratorの概要」

- 第1.2項「ODIコンポーネントのアーキテクチャ」

- 第1.3項「Oracle Data Integratorの基礎情報」

1.1 Oracle Data Integratorの概要

広く使用されているデータ統合ソフトウェア製品であるOracle Data Integratorには、データ変換と統合プロセスを定義するための新しい宣言的な設計方法が用意されており、開発とメンテナンスを短時間で簡単に行えます。Oracle Data Integratorは、固有のE-LTアーキテクチャ(Extract - Load Transform)に基づいて、データの変換および検証プロセスの実行での最高レベルのパフォーマンスを保証するだけでなく、現在使用可能な最も費用効果の高いソリューションでもあります。

Oracle Data Integratorは、データおよびアプリケーションの統合プロジェクトを効率化する統合インフラストラクチャを提供します。

1.1.1 ビジネス上の問題

ますます加速する現在のビジネス環境では、より特化したソフトウェア・アプリケーションを使用することが必要とされます。また、異なるハードウェア・プラットフォームやシステムにこれらのアプリケーションを共存させ、アプリケーションやシステム間でデータを共有できるようにする必要もあります。これらの統合を実行するプロジェクトは、仕様どおり、かつ期限および予算内で提供される必要があります。

1.1.2 固有のソリューション

Oracle Data Integratorでは、データ統合に宣言的設計方法が使用され、宣言的ルールと実装の詳細とが分離されます。Oracle Data Integratorは、固有のE-LT (Extract - Load Transform)アーキテクチャにも基づいており、スタンドアロンETLサーバーと専用エンジンが不要になります。かわりに、RDBMSエンジンに備わった機能が利用されます。この組合せによって、開発とメンテナンスの両方で生産性が最大限に高まり、データの変換と検証のプロセスの実行で最高のパフォーマンスを得られます。

データ統合にOracle Data Integratorが選ばれる主な理由は次のとおりです。

- 開発およびメンテナンスの時間短縮と簡略化: データ統合に対する宣言的ルール主導のアプローチにより、短期間で製品を習得でき、開発者の生産性が大幅に向上します。また、継続的なメンテナンスが簡単になります。このアプローチでは、プロセスの定義と実際の実装とが分離され、宣言的ルール(what)とデータ・フロー(how)とが分離されます。

- データ品質のファイアウォール: Oracle Data Integratorでは、ターゲット・アプリケーションに挿入する前に、不良データが自動的に検出され、リサイクルされます。これは、ターゲット・アプリケーションとOracle Data Integratorの両方で定義されているデータの整合性ルールと制約に従って行われ、プログラミングの必要はありません。

- 実行パフォーマンスの向上: 従来型のデータ統合ソフトウェア(ETL)は、行ごとにデータ変換を行う専用エンジンに基づいているため、パフォーマンスに限りがあります。E-LTアーキテクチャを実装し、既存のRDBMSエンジンとSQLに基づくことで、ターゲット・サーバーで設定に基づいたレベルでデータ変換を行えるため、より高いパフォーマンスが得られます。

- より単純で効率的なアーキテクチャ: E-LTアーキテクチャにより、ソースとターゲット・サーバーの間にETLサーバーを置く必要がなくなります。ソースとターゲット・サーバーを利用して複雑な変換を行いますが、大半はバッチ・モードで、エンドユーザー問合せの処理でサーバーがビジーでないときに行われます。

- プラットフォーム非依存: Oracle Data Integratorでは、同一のソフトウェアであらゆるプラットフォーム、ハードウェアおよびOSがサポートされます。

- データの接続性: Oracle Data Integratorでは、すべての主要なデータ・ウェアハウジング・プラットフォーム(Oracle、Exadata、Teradata、IBM DB2、Netezza、Sybase IQなど)を含むすべてのRDBMSと他の多くのテクノロジ(フラット・ファイル、ERP、LDAP、XMLなど)がサポートされます。

- コスト削減: ETLサーバーとETLエンジンを使用しないことで、ハードウェアおよびソフトウェアの初期購入コストとメンテナンス・コストの両方が削減されます。習得時間の短縮および開発者の生産性向上により、プロジェクト全体の人件費、および継続的な拡張の費用が削減されます。

1.2 ODIコンポーネントのアーキテクチャ

Oracle Data Integratorプラットフォームは、広義のFusion Middlewareプラットフォームに統合され、このスタックの主要なコンポーネントになります。Oracle Data Integratorにはランタイム・コンポーネントがJava EEアプリケーションとして含まれ、Oracle WebLogicアプリケーション・サーバーの機能が十分に活用されるよう強化されています。Oracle Data Integratorコンポーネントには、エンタープライズ規模のデプロイメント、高可用性、スケーラビリティおよび強固なセキュリティのための独自の機能が含まれています。図1-1に、ODIコンポーネントのアーキテクチャを示します。

図1-1 Oracle Data Integratorコンポーネントのアーキテクチャ

1.2.1 リポジトリ

アーキテクチャの核となるコンポーネントは、Oracle Data Integratorリポジトリです。このリポジトリには、ITインフラストラクチャに関する構成情報、すべてのアプリケーションのメタデータ、プロジェクト、シナリオおよび実行ログが格納されています。複数のリポジトリのインスタンスがITインフラストラクチャに共存できます(開発、QA、ユーザー受入れ、本番など)。リポジトリのアーキテクチャは、メタデータやシナリオを交換する複数の別々の環境(例: 開発、テスト、保守および本番の各環境)を許容するように設計されています。リポジトリは、バージョン管理システムとしても機能し、この場合、オブジェクトはアーカイブされ、バージョン番号が割り当てられます。

Oracle Data Integratorリポジトリは、1つのマスター・リポジトリと複数の作業リポジトリで構成されます。ユーザー・インタフェースを使用して開発または構成されたオブジェクトは、これらのリポジトリ・タイプの1つに格納されます。

通常、次の情報を格納するマスター・リポジトリが1つ存在します。

- ODIプラットフォームのユーザー、プロファイルおよび権限などのセキュリティ情報

- テクノロジ、サーバー定義、スキーマ、コンテキスト、言語などのトポロジ情報

- バージョニングしたオブジェクトおよびアーカイブしたオブジェクト

作業リポジトリは、開発した実際のオブジェクトが格納されるリポジトリです。同じODIインストールに複数の作業リポジトリが共存可能です(たとえば、別々の環境を使用するため、または特定のバージョニング・ライフ・サイクルと一致させるため)。作業リポジトリには、次の情報が格納されます。

- モデル: スキーマ定義、データストア構造とメタデータ、フィールドと列の定義、データ品質制約、相互参照、データ系統などが含まれます。

- プロジェクト: ビジネス・ルール、パッケージ、プロシージャ、フォルダ、ナレッジ・モジュール、変数などが含まれます。

- シナリオ実行: シナリオ、スケジューリング情報およびログが含まれます。

作業リポジトリは、その中に実行情報(通常は本番のための情報)のみが含まれる場合は、実行リポジトリと呼ばれます。

1.2.2 ODI Studioとユーザー・インタフェース

管理者、開発者およびオペレータは、Oracle Data Integrator Studioを使用してリポジトリにアクセスします。このFusionクライアント・プラットフォーム(FCP)ベースのUIは、インフラストラクチャ(セキュリティおよびトポロジ)の管理、メタデータのリバースエンジニアリング、プロジェクトの開発、実行のスケジューリング、操作および監視に使用されます。

ODI Studioには、ODI統合プロジェクトの様々な側面やステップを管理するための4つのナビゲータが用意されています。

- デザイナ・ナビゲータは、次のようなデータ整合性チェックの設計および変換の作成に使用されます。

- 既存のアプリケーションまたはデータベースの自動リバースエンジニアリング

- 変換および統合インタフェースのグラフィカルな開発および保守

- インタフェース内のデータ・フローの視覚化

- ドキュメントの自動生成

- 生成されたコードのカスタマイズ

- オペレータ・ナビゲータは、本番の管理および監視ツールです。IT本番オペレータ用に設計されています。オペレータ・ナビゲータを使用すると、セッションのインタフェース実行、および本番のシナリオを管理できます。

- トポロジ・ナビゲータは、情報システムの物理アーキテクチャと論理アーキテクチャを記述するデータを管理するために使用されます。トポロジ・ナビゲータを使用すると、情報システムのトポロジ、テクノロジとそのデータ型、これらのテクノロジにリンクされているデータ・サーバーとその中に含まれているスキーマ、コンテキスト、言語とエージェント、リポジトリを管理できます。サイト、マシンおよびデータ・サーバーの記述によって、Oracle Data Integratorでは様々な物理環境で同じ統合インタフェースの実行が可能になります。

- セキュリティ・ナビゲータは、Oracle Data Integrator内のセキュリティ情報を管理するためのツールです。セキュリティ・ナビゲータを使用すると、ユーザーとプロファイルを作成し、汎用オブジェクト(データ・サーバー、データ型など)に対するメソッド(編集、削除など)に関するユーザー権限を割り当て、オブジェクト・インスタンス(サーバー1、サーバー2など)に対してこれらの権限を微調整できます。

Oracle Data Integratorには、これらの実行時操作と設計時操作を行うためのJava APIも含まれています。このOracle Data Integrator Software Development Kit (SDK)は、スタンドアロンJavaアプリケーションとアプリケーション・サーバーに使用できます。

1.2.3 ランタイム・エージェント

設計時に、開発者は、設計したビジネス・ルールからシナリオを生成します。これらのシナリオのコードは、ランタイム・エージェントによってリポジトリから取得されます。コードの取得後、このエージェントは、データ・サーバーに接続して、これらのサーバー上でコード実行を調整します。また、実行に関するリターン・コードやメッセージおよびリポジトリ内のその他のログ情報(処理レコード数、実行時間など)を取得します。エージェントには2種類あります。

- Java EEエージェントは、Webアプリケーションとしてデプロイでき、アプリケーション・サーバーの機能を利用できます。

- スタンドアロン・エージェントは、単純なJavaマシンで実行され、統合フローの実行に必要な場合にデプロイできます。

これらのエージェントはマルチスレッドJavaプログラムであり、ロード・バランシングをサポートし、情報システム全体に配布できます。このエージェントには、独自の実行スケジュールが保持されています。実行スケジュールはOracle Data Integratorで定義でき、外部スケジューラから呼び出すこともできます。また、Java APIまたはWebサービス・インタフェースから呼び出すこともできます。

1.2.4 Oracle Data Integratorコンソール

ビジネス・ユーザー(および開発者、管理者、オペレータ)にはリポジトリに対する読取りアクセス権限があり、Oracle Data Integratorコンソールと呼ばれるWebベースのUIを使用して、トポロジ構成および本番操作を実行できます。このWebアプリケーションは、Oracle WebLogicなどのJava EEアプリケーションにデプロイできます。

Java EEエージェント、スタンドアロン・エージェントおよびODIコンソールを管理および監視するために、Oracle Fusion Middleware Controlコンソールに統合された新しいプラグインがOracle Data Integratorに用意されています。

1.3 Oracle Data Integratorの導入

表1-1に、このガイドの内容を簡単に示します。

表1-1 内容の要約

この章

内容

第2章「Oracle Data Integratorとデモンストレーション環境のインストール」

Oracle Data Integratorとデモンストレーション環境をインストールします。

第3章「ETLプロジェクトの使用」

Oracle Data Integrator Studioに含まれたデモンストレーション環境の概要を示します。

第4章「Oracle Data Integratorの起動」

デモンストレーション環境とOracle Data Integrator Studioを起動します。

第5章「データ品質管理の実装」

データ品質管理を実装します。

第6章「統合インタフェースの使用」

Oracle Data Integratorで統合インタフェースを作成し、使用します。

第7章「パッケージの使用」

Oracle Data Integratorでパッケージを作成し、使用します。

第8章「開発物の実行と結果の確認」

開発物の実行、実行の追跡および実行結果の解釈を行います。

第9章「統合されたアプリケーションのデプロイ」

ODIパッケージを本番環境で自動的に実行します。

第10章「Oracle Data Integratorのその他の情報」

Oracle Data Integratorで高度なタスクを実行します。

2 Oracle Data Integratorとデモンストレーション環境のインストール

この章では、Oracle Data Integratorとデモンストレーション環境のインストールの概要を示します。この章に示す手順は、Oracle Data Integrator Studioでデモンストレーション環境を使用するために必要な手順です。

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

- 第2.1項「インストールの準備」

- 第2.2項「Oracle Data Integratorのインストール」

- 第2.3項「デモンストレーション環境のインストール」

注意:

このスタート・ガイドで説明するタスクを実行するには、Oracle Data Integrator Studioとデモンストレーション環境をシステムにインストールする必要があります。

2.1 インストールの準備

インストールを開始する前に、この項に記載する次の情報を確認してください。

- システム要件および動作保証の確認

- Oracle Fusion Middlewareによる64ビットJDKのサポートの理解

- ODIリポジトリの作成

2.1.1 システム要件および動作保証の確認

Oracle Data Integrator (ODI)コンポーネントをインストールする前に、システム要件と動作保証に関するドキュメントを読み、現在の環境がインストールの最低要件を満たしていることを確認する必要があります。これらのドキュメントはどちらもOracle Technology Network (OTN)で入手できます。

このシステム要件のドキュメントには、ハードウェアおよびソフトウェア要件、最低ディスク領域およびメモリー要件、および必須のシステム・ライブラリ、パッケージまたはパッチなどの情報が記載されています。

http://www.oracle.com/technology/software/products/ias/files/fusion_requirements.htm

この動作保証のドキュメントには、サポートされているインストール・タイプ、プラットフォーム、オペレーティング・システム、データベース、JDKおよびサードパーティ製品が記載されています。

http://www.oracle.com/technology/software/products/ias/files/fusion_certification.html

注意:

32ビット版の製品をインストールする場合は、インストール先のシステムも32ビット・システムをサポートしている必要があります。32ビット版の製品の64ビット・システムへのインストールはサポートされていません。

2.1.2 Oracle Fusion Middlewareによる64ビットJDKのサポートの理解

現在の環境で64ビットJava仮想マシン(JVM)を使用している場合、すべてのOracle Fusion Middlewareコンポーネントで64ビットJVMを使用していることを確認してください。32ビットJVMを使用するコンポーネントと64ビットJVMを使用するコンポーネントを混在させることはできません。

64ビットJDKをサポートするプラットフォームの詳細は、次の場所にあるOracle Fusion Middlewareの動作保証マトリックスを参照してください。

http://www.oracle.com/technology/software/products/ias/files/fusion_certification.html

2.1.3 ODIリポジトリの作成

ODI Studioでデモンストレーション環境を使用する場合、ODIリポジトリを作成する必要はありません。デモンストレーション環境には、必要なリポジトリがあらかじめ構成されて用意されています。

2.2 Oracle Data Integratorのインストール

この項では、Oracle Data Integrator Studioのインストールに関する情報と手順について説明します。この章に示す手順は、Oracle Data Integrator Studioでデモンストレーション環境を使用するために必要な手順です。

インストール手順の詳細は、『Oracle Fusion Middleware Oracle Data Integratorインストレーション・ガイド』を参照してください。

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

- インストーラとデモ環境のダウンロード

- インストーラの起動

- インストール・タイプ

- インストール手順

注意:

UNIXシステムに最初にインストールする場合には、rootユーザーとしてORACLE_HOME/oracleRoot.shスクリプトを実行して、必要なインストール・ディレクトリをすべて作成するよう求められる場合があります。

2.2.1 インストーラとデモ環境のダウンロード

インストーラおよびデモ環境は、Oracle Technology Network (OTN)のOracle Data Integratorのダウンロード・ページから入手できます。

インストーラとデモ環境をダウンロードするには:

1. OTNのOracle Data Integratorのダウンロード・ページ(http://www.oracle.com/technetwork/middleware/data-integrator/downloads/index.html)に移動します。

2. ご使用のプラットフォームの11g Oracle Data Integratorメディア・パックと11gデモ環境を一時フォルダにダウンロードします。

2.2.2 インストーラの起動

インストーラを起動するには、一時フォルダにダウンロードしたOracle Data Integratorメディア・パックを解凍し、このフォルダから次のコマンドを実行します。

- UNIXオペレーティング・システム:

./runInstaller

- Windowsオペレーティング・システム:

setup.exe

注意:

Oracle Data IntegratorにはJDK1.6以上が必要です。使用しているシステムでサポートされるJDKを確認するには、Oracle Fusion Middlewareの動作保証に関するドキュメントを参照してください。

http://www.oracle.com/technology/software/products/ias/files/fusion_certification.html

2.2.3 インストール・タイプ

デモ環境を使用するには、次のコンポーネントをインストールする必要があります。

- ODI Studio

- スタンドアロン・エージェント

これは、「開発者」と「スタンドアロン」インストール・タイプに相当します。

2.2.4 インストール手順

次の手順に従って、Oracle Data Integrator Studioをインストールし、構成します。

注意:

各インストール画面の詳細は、『Oracle Fusion Middleware Oracle Data Integratorインストレーション・ガイド』を参照するか、「ヘルプ」をクリックしてオンライン・ヘルプにアクセスしてください。

1. 「ようこそ」画面で「次へ」をクリックして続行します。

2. 図2-1に示すように、「インストール・タイプの選択」画面で開発者インストールと「スタンドアロン・インストール」の両方を選択します。ODI StudioおよびODI SDKは自動的に選択されることに注意してください。

図2-1 「インストール・タイプの選択」画面

3. 「次へ」をクリックして続行します。

4. 「前提条件のチェック」画面で「次へ」をクリックして続行します。

5. 「インストール場所の指定」画面で、Oracleホームの場所(このガイドではこれ以降ODI_HOMEと呼びます)の絶対パスを入力します。例:
C:\oracle\ODI_HOME1

注意:

指定するディレクトリは空のディレクトリか、既存のOracle Data Integratorホームの場所にする必要があります。

6. 「次へ」をクリックして続行します。

7. リポジトリの構成画面で、「リポジトリの構成のスキップ」を選択します。

8. 「次へ」をクリックして続行します。

9. エージェントの詳細の指定画面で、次のエージェントの詳細を入力します。

- エージェント名: DemoAgent

- エージェント・ポート: 20910
ポート番号が他のプロセスで使用されていないことと、エージェント名がトポロジ内ですでに宣言されている他のエージェントと異なることに注意してください。

エージェントの詳細の指定画面を図2-2に示します。

図2-2 エージェントの詳細の指定画面

10. セキュリティ・アップデートの指定画面で、セキュリティの問題に関する通知を受ける方法を選択します。

- セキュリティ問題の通知を電子メールで受け取る場合は、「電子メール」フィールドに電子メール・アドレスを入力します。

- セキュリティ問題の通知をMy Oracle Support(以前のMetaLink)から受け取る場合は、My Oracle Supportオプションを選択してMy Oracle Supportパスワードを入力します。

- セキュリティ問題の通知を行わない場合は、すべてのフィールドを空のままにします。次のメッセージが表示されます。My Oracle Supportユーザー名または電子メール・アドレスが指定されていません。「はい」をクリックして続行します。

11. セキュリティ・アップデートの指定画面で「次へ」をクリックして続行します。

12. 「インストール・サマリー」画面で情報を確認します。

13. 「インストール」をクリックしてインストールを開始します。

14. 「インストールの進行状況」画面で「次へ」をクリックして続行します。

15. 構成の進行状況画面で「次へ」をクリックして続行します。

16. 「インストールが完了しました。」画面で「終了」をクリックしてインストーラを閉じます。

これでOracle Data Integratorがインストールされました。

2.3 デモンストレーション環境のインストール

Oracle Data Integratorデモンストレーション環境はOracle Data IntegratorコンパニオンCDに含まれています。次に示すOracle Technology Network (OTN)のOracle Data Integratorのダウンロード・ページからダウンロードすることもできます。

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

デモンストレーション環境のデモンストレーション・ファイルとサンプルは、コンパニオンCDの/demoフォルダにあります。

注意:

デモンストレーション(デモ)環境は、ODI Studioコンポーネントを含む既存のインストールを使用してインストールする必要があります。

デモンストレーション環境を手動でインストールするには、次の手順に従います。

1. ODI_HOMEフォルダ内のoracledi-demo.zipを解凍します。

2. JAVA_HOME環境変数が設定され、Oracle Data Integratorに適したJVMのパスが含まれていることを確認します。
この変数が正しく設定されていない場合、有効なJavaマシンの場所に設定します。

例:

UNIXオペレーティング・システム:

setenv JAVA_HOME/usr/local/java

Windowsオペレーティング・システム:

GUIでJAVA_HOME変数を設定します。

動作保証されているJVMバージョンのリストについては、http://www.oracle.com/technology/software/products/ias/files/fusion_certification.htmlを参照してください。

これで、デモンストレーション環境をOracle Data Integrator Studioで使用できます。

3 ETLプロジェクトの使用

この章では、Oracle Data Integrator Studioで使用されるデモンストレーション環境に含まれるETL(Extract Transform Load)プロジェクトの概要を示します。

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

- 第3.1項「サンプル環境」

- 第3.2項「データ・モデル」

- 第3.3項「統合の課題」

3.1 サンプル環境

ETLプロジェクトは、変換方法および情報システムでデータの整合性をチェックする方法を理解するためのサンプルです。

このスタート・ガイドの例では、本番システムから発行された様々な異なるデータ・ソースからの売上データを追跡します。図3-1に、サンプル環境を示します。

図3-1 サンプル環境

サンプル環境では、次のものが使用されます。

- リポジトリ: リポジトリには、トレーニング・サンプルに必要なメタデータがすべて含まれています。これらの評価目的のため、指定されたデータベースでホストされます。

- Orders Application: 顧客の注文を追跡するためのアプリケーションで、指定されたデータベース("srcdemo"サンプル・データベース")でホストされます。

- Parameters(File): 本番システムから発行されるフラット・ファイル(ASCII)で、営業担当者および年齢を区分した年齢層のリストが含まれます。

- Sales Administration: 売上を管理または追跡し、指定された別のデータベース("trgdemo"サンプル・データベース)でホストされます。変換で、このデータ・ウェアハウスにデータが移入されます。

3.2 データ・モデル

デモンストレーション環境には、3つのODIデータ・モデルが含まれます。

- Orders Application - HSQL

- Parameters - FILE

- Sales Administration - HSQL

この項では、これらのデータ・モデルのスキーマ図を示します。

3.2.1 Orders Application - HSQL

Orders Applicationデータ・モデルは、HSQLテクノロジに基づき、5つのデータストアが含まれます。

- SRC_CITY

- SRC_CUSTOMER

- SRC_ORDERS

- SRC_ORDER_LINES

- SRC_PRODUCT

- SRC_REGION

図3-2に、このデータ・モデルのスキーマ図を示します。

このデータ・モデルでは、データ間に機能上関係がある場合でも外部キー制約を強制しないことに注意してください。

図3-2 Orders Applicationスキーマ図

3.2.2 Parameters - FILE

Parametersデータ・モデルはファイル・テクノロジに基づき、2つのデータストアが含まれます。

- SRC_SALES _PERSON

- SRC_AGE_GROUP

図3-3に、このデータ・モデルのスキーマ図を示します。

図3-3 Parametersスキーマ図

3.2.3 Sales Administration - HSQL

Sales Administrationデータ・モデルは、HSQLテクノロジに基づき、6つのデータストアが含まれます。

- TRG_CITY

- TRG_COUNTRY

- TRG_CUSTOMER

- TRG_PRODUCT

- TRG_PROD_FAMILY

- TRG_REGION

- TRG_SALES

図3-4に、このデータ・モデルのスキーマ図を示します。

図3-4 Sales Administrationスキーマ図

3.3 統合の課題

すべてのデータ統合と変換プロジェクトに共通する課題は次のとおりです。

- アプリケーション・データの品質のチェックおよび向上

- 情報システムのビジネス・ルールを考慮した、正確で簡単なアプリケーション間のデータ交換

このガイドで使用する例で、これらの問題への対処方法を示します。このスタート・ガイドで次の方法を示します。

- データベース内のデータをチェックするためのデータ品質管理の実装
2つの例が含まれることで、Oracle Data Integratorで無効な行が分離され、アプリケーション内のデータの品質が保証されることがわかります。Orders Application表に矛盾するデータが数多く含まれ、これが検出されます。

- データを移動および変換するための統合インタフェースの作成
2つの簡単な例で、Orders ApplicationとParameters(File)アプリケーションからSales Administrationデータ・ウェアハウスにデータをロードすることで、生産性を向上させる方法を示します。

- これらのインタフェースのパッケージ化と実行の自動化
スタート・ガイドのこの部分では、Oracle Data Integratorプロセスを自動化する方法を示します。これを行う目的は、Sales Administrationデータ・ウェアハウス全体を1クリックでロードすることです。

- パッケージの実行と実行結果の確認
Load Sales Administrationパッケージおよび作成した統合インタフェースPop.TRG_CUSTOMERとPop.TRG_SALESの実行方法およびこれらの実行結果の確認方法がわかります。

- 開発したコンポーネントをデプロイする準備
Load Sales Administrationパッケージを本番環境で自動的に実行する方法がわかります。

注意:

このガイドでは、ETLにフォーカスしたプロセスを示します。このドキュメントのテーマからは外れますが、異なる統合パターン(リアルタイムなど)の実装も同じ方法で行えます。この詳細は、このガイドを終えた後、Oracle Data Integratorのドキュメントで確認してください。

これで、ETLプロジェクトの概念とそのコンポーネントについて理解できたため、「Oracle Data Integratorの起動」に進めます。

4 Oracle Data Integratorの起動

この章では、デモンストレーション環境の起動方法とOracle Data Integrator Studioでの最初の処理について説明します。

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

- 第4.1項「デモンストレーション環境の起動」

- 第4.2項「Oracle Data Integrator Studioの起動」

- 第4.3項「ODIナビゲータの使用の概要」

4.1 デモンストレーション環境の起動

Oracle Data Integratorデモンストレーション環境には、このスタート・ガイドの例で使用されるデータが含まれる初期リポジトリとデータベースが用意されています。

デモンストレーション環境を起動するには:

1. ディレクトリをODI_HOME/oracledi/demo/binディレクトリに変更します。

2. 次のコマンドを入力します。

- UNIXオペレーティング・システム:
./startdemo.sh

- Windowsオペレーティング・システム:
startdemo.bat

ソースとターゲットのデータ・サーバーおよびデモ・リポジトリ・データ・サーバーが起動します。

データベース・サーバーを停止するには、同じディレクトリのstopdemoコマンドを使用します:

次のコマンドを入力します。

- UNIXオペレーティング・システム:
./stopdemo.sh

- Windowsオペレーティング・システム:
stopdemo.bat

注意:

[Ctrl]+[C]キーボード・ショートカットや実行ウィンドウを閉じることでデータベースを停止しないでください。これによって、ソース、ターゲットおよびリポジトリ・データベースが不安定な状態になることがあります。必ずstopdemoスクリプトを使用してください。

4.2 Oracle Data Integrator Studioの起動

この項では、Oracle Data Integrator Studioの起動方法について説明します。

注意:

ODI Studioを起動する前に、第4.1項「デモンストレーション環境の起動」の説明のように、デモンストレーション環境が起動されていることを確認します。

4.2.1 ODI Studioの起動

デモンストレーション環境には、デモンストレーション・リポジトリへの接続がすでに定義されています。このスタート・ガイドのタスクを実行するには、SUPERVISORとしてログインし、Oracle Data Integrator Studioを起動するだけでよいです。

デモンストレーション・リポジトリに接続し、ODI Studioを起動するには:

1. ODI Studioを起動します。

- UNIXオペレーティング・システム:
ODI_HOME/oracledi/client directory/odi.sh

- Windowsオペレーティング・システム:
ODI_HOME\oracledi\client\odi.exe

注意:

Windowsでは、「スタート」メニューからODI Studioを起動できます。

「スタート」メニューで、「すべてのプログラム」→「Oracle」→「Oracle Data Integrator」→「ODI Studio」の順に選択します。

2. デザイナ・ナビゲータで「リポジトリへの接続」をクリックします。
「Oracle Data Integratorログイン」ダイアログが表示されます。

3. 「ログイン名」ドロップダウン・メニューから「Getting Started - ETL Project」を選択します。

注意:

このログイン名がない場合、第4.2.2項「新規Getting Startedログインの定義」に進んでください。

4. 「ユーザー」フィールドにSUPERVISORと入力します。ユーザー名では、大文字と小文字が区別されることに注意してください。

5. 「パスワード」フィールドにSUNOPSISと入力します。パスワードでは、大文字と小文字が区別されることに注意してください。

6. Oracle Dataログイン・ダイアログの表示は、図4-1のようになります。

図4-1 Getting Started ODIログイン

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

ODI Studioがデモンストレーション環境リポジトリに接続されます。これで、Oracle Data Integratorデモンストレーション環境を使用できます。

4.2.2 新規Getting Startedログインの定義

この項では、デモンストレーション・リポジトリへの新規接続の定義方法および新規ODIログインの作成方法について説明します。

「Getting Started - ETL Project」ログイン名が、図4-1に示すように「Oracle Data Integratorログイン」ダイアログの「ログイン名」リストに表示されない場合にのみ、この項に示すタスクを実行する必要があります。

デモンストレーション・リポジトリへの新規接続を定義するには:

1. 「Oracle Data Integratorログイン」ダイアログで「新規」をクリックします。
図4-2に、「Oracle Data Integratorログイン」ダイアログを示します。

図4-2 デフォルトODIログイン

「リポジトリ接続情報」ダイアログが表示されます。

2. 「新規」をクリックします。
「リポジトリ接続情報」ダイアログが表示されます。

3. Oracle Data Integrator接続の詳細を次のように指定します:

- ログイン名: Getting Started - ETL Project

- ユーザー: SUPERVISOR

- パスワード: SUNOPSIS

ユーザー名とパスワードでは、大文字と小文字が区別されることに注意してください。

4. データベース接続(マスター・リポジトリ)の詳細を次のように指定します:

- ユーザー: sa
これは、ODIマスター・リポジトリを含むスキーマ(データベース、ライブラリ)のデータベース・ユーザーのID/ログインです。

- パスワード: このフィールドは空のままにします。

- ドライバ・リスト: リストから「Hypersonic SQLドライバ」を選択します。
このドライバは、マスター・リポジトリをサポートするDBMSに接続するために必要です。

- ドライバ名: org.hsqldb.jdbcDriver

- URL: jdbc:hsqldb:hsql://localhost
このURLは、リポジトリをホストするデータベースへのJDBC接続の確立に使用されます。ドライバ名では大文字と小文字が区別されることに注意し、URLに余分な文字(特に空白)が含まれていないことを確認してください。

5. 「作業リポジトリ」を選択し、「作業リポジトリ」フィールドにWORKREPと入力します。
「リポジトリ接続情報」ダイアログの表示は、図4-3のようになります。

図4-3 「リポジトリ接続情報」ダイアログ

6. 「テスト」をクリックして、接続が有効であることを確認します。
「情報」ダイアログが開き、接続が確立されたかどうかが表示されます。接続が失敗する場合、次のステップに進む前に、リポジトリへの接続パラメータを修正し、startdemoスクリプトが実行されていることを確認します(第4.1項「デモンストレーション環境の起動」を参照してください)。

7. 「OK」をクリックして、「情報」ダイアログを閉じます。

8. 「Oracle Data Integratorログイン」ダイアログで、「ログイン名」ドロップダウン・メニューから「Getting Started - ETL Project」を選択します。
SUPERVISORユーザーとSUNOPSISパスワードが自動的に設定されます。

Oracle Dataログイン・ダイアログの表示は、図4-1のようになります。

9. 「Oracle Data Integratorログイン」ダイアログで「OK」をクリックします。

ODI Studioがデモンストレーション環境リポジトリに接続されます。これで、Oracle Data Integratorデモンストレーション環境を使用できます。

4.3 ODIナビゲータの使用の概要

ODI Studioには、ODI統合プロジェクトの様々な側面やステップを管理するための4つのナビゲータが用意されています。

- デザイナ・ナビゲータ

- オペレータ・ナビゲータ

- トポロジ・ナビゲータ

- セキュリティ・ナビゲータ

このスタート・ガイドで実行されるタスクは、デザイナ・ナビゲータ(開発物の作成と実行)およびオペレータ・ナビゲータ(開発物の実行の監視)で行われます。この項では、このスタート・ガイドで使用されるナビゲータについてのみ説明します。トポロジ・ナビゲータとセキュリティ・ナビゲータの詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』を参照してください。

4.3.1 デザイナ・ナビゲータ

デザイナ・ナビゲータは、メタデータの管理、データ整合性チェックの設計および変換の作成に使用されます。

デザイナ・ナビゲータで処理する主要なオブジェクトは、モデルとプロジェクトです。

- アプリケーションのデータ・モデルには、データ・サーバーのすべてのメタデータが含まれます(表、列、制約、説明、相互参照など)。

- プロジェクトには、データ・サーバーのすべてのロード・ルールと変換ルールが含まれます(インタフェース、プロシージャ、変数など)。

デザイナ・ナビゲータの表示は、図4-4のようになります。

図4-4 デザイナ・ナビゲータ

デザイナ・ナビゲータには、次のアコーディオンがあります。

- プロジェクト
「プロジェクト」アコーディオンには、デザイナ・ナビゲータで作成された開発物が含まれます。

- モデル
「モデル」アコーディオンには、データおよびアプリケーション構造の説明が含まれます。

- その他
「その他」アコーディオンには、グローバル・ユーザー関数、変数、マーカーおよび順序が含まれます。

- ソリューション
「ソリューション」アコーディオンには、バージョン管理の使用時に作成されたソリューションが含まれます。

デモンストレーション・リポジトリには、このスタート・ガイドで必要なオブジェクトが用意されています。

- 「モデル」アコーディオンには、Orders Application、ParametersおよびSales Administrationアプリケーションに対応するすべてのデータ・モデルがあります。

- 「プロジェクト」アコーディオンには、Demoプロジェクトと、インタフェースがいくつかすでに含まれたSales Administrationフォルダがあります。このフォルダで新規インタフェースを開発します。

- 必要なナレッジ・モジュール(KM)は、Demoプロジェクトにすでにインポートされています。

- LKM File to SQL

- LKM SQL to SQL

- CKM HSQL

- IKM SQL Incremental Update

4.3.2 オペレータ・ナビゲータ

オペレータ・ナビゲータは、本番の管理および監視ツールであり、IT本番オペレータ向けに設計されており、開発者がコード実行のチェックやデバッグ操作に使用することができます。オペレータ・ナビゲータを使用すると、セッションでの開発物の実行および本番のシナリオを管理できます。

オペレータ・ナビゲータの表示は、図4-5のようになります。

図4-5 オペレータ・ナビゲータ

「オペレータ・ナビゲータ」には次のアコーディオンがあります。

- セッション・リスト
「セッション・リスト」アコーディオンには、日付、物理エージェント、ステータス、キーワードなどの単位で編成されたすべてのセッションが表示されます。

- 階層セッション
「階層セッション」アコーディオンには、階層で編成された実行セッションが子セッションとともに表示されます。

- スケジューリング
「スケジューリング」アコーディオンには、物理エージェントとスケジュールのリストが表示されます。

- シナリオ
「シナリオ」アコーディオンには使用可能なシナリオのリストが表示されます。

- ソリューション
「ソリューション」アコーディオンには、バージョン管理の使用時に作成されたソリューションが含まれます。

デモンストレーション環境とOracle Data Integratorが起動したため、「データ品質管理の実装」に進むことができます。

5 データ品質管理の実装

この章では、データ品質管理の実装方法について説明します。データ整合性制御の概要を示します。

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

- 第5.1項「データ整合性制御の概要」

- 第5.2項「SRC_CUSTOMERの制御の例」

5.1 データ整合性制御の概要

データ整合性制御は、情報システムのアプリケーションにおいて、データの全体的な整合性を維持する際に欠かせません。

情報システムによって課された制約および宣言的ルールに対して、アプリケーション・データが常に有効とはかぎりません。たとえば、発注書で顧客が空白になっている場合や、発注の明細で製品が空白になっている場合などが考えられます。

Oracle Data Integratorには、これらの制約違反を検出してリサイクルまたはレポート目的で格納するための作業環境が用意されています。

静的制御とフロー制御の2つのタイプがあります。この2つのタイプの相違について説明します。

静的制御

静的制御は、アプリケーション・データの整合性を検証するために使用するルールが存在することを意味します。これらのルール(制約とも呼ばれます)の一部は、データ・サーバーに(主キー、参照制約などを使用して)すでに実装されている可能性があります。

Oracle Data Integratorでは、追加の制約を定義してチェックすることでデータの品質を高めることができます。追加の制約をサーバーに直接宣言する必要はありません。この手順は、既存(静的)データのチェックを直接実行できるため、静的制御と呼ばれます。

フロー制御

変換プロセスおよび統合プロセスに対応する情報システムでは、通常、独自の宣言的ルールが実装されています。フロー制御機能は、データを対応する情報システムにロードする前に、それらの制約に基づいてアプリケーションの着信データを検証するために使用します。フロー制御の手順は、インタフェースの章で説明されています。

利点

データ整合性チェックを実行する主な利点は、次のとおりです。

- ライフサイクル全体でターゲット・データベースを使用することによる生産性の向上。データ内のビジネス・ルール違反によって、ターゲット・データベースのライフサイクルを通してアプリケーション・プログラミングが遅くなります。したがって、転送されたデータのクリーニングによってアプリケーション・プログラミング時間を減少させることができます。

- ターゲット・データベースのモデルの検証。ルール違反が検出されることは、ソースのデータ整合性が不十分なことを必ずしも意味しません。ターゲット・モデルの不備を示す場合があります。アプリケーションが再記述される前にデータを移行すると、現状に則したテスト・データベースを提供しつつ、新規データ・モデルを検証できます。

- エンドユーザーに対するサービスの品質の向上。

データの整合性を保証することは、複雑なタスクになる場合があります。実際は、宣言的ルールに違反するデータを分離し、リサイクルする必要があります。ターゲット・データベースに整合性制約を検証するメカニズムが組み込まれている場合は特に、複雑なプログラミングの開発が必要です。操作制約に関しては、(ソース、ターゲットまたはリサイクルされたフローの)誤ったデータを修正する方法を実装し、その方法を企業全体で再利用することが最も効率的です。

5.2 SRC_CUSTOMERの制御の例

この例では、データ整合性の監査プロセス(静的制御)について順を追って説明します。

Orders Application - HSQLアプリケーションには、様々なレベルでビジネス・ルール制約を満たさないデータが含まれています。目的は、このアプリケーションのデータのうち、情報システムで設定された制約を満たさないものを特定することです。

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

- 目標

- 問題の解釈

- 制約の作成

- 静的制御の実行

- オペレータ・ナビゲータでの制御の実行の追跡

- オペレータ・ナビゲータでの結果の解釈

5.2.1 目標

ソースには、矛盾するデータが含まれている可能性があります。ソース表に実装されていない制約がターゲット表にある場合や追加の規則が必要な場合があります。この例では、SRC_CUSTOMER表に設定する制約が2つあります。

- 顧客は21歳より上である必要があります。ただし、それより若い顧客に対応するレコードが入力表に含まれている可能性があります。

- CITY_ID列はSRC_CITY表のエントリを参照する必要があります。ただし、市区町村表に存在しない値がある可能性があります。

これらの2つの制約を満たさない行を特定し、対応する無効なレコードを分析用にエラー表に自動的にコピーします。

5.2.2 問題の解釈

これらのタイプのルールを強制するには、チェック制約(条件とも呼ばれる)およびSRC_CITY表とSRC_CUSTOMER表の間の参照制約を使用する必要があります。

5.2.3 制約の作成

この項では、次の制約の作成方法について説明します。

- 年齢制約

- 参照制約

5.2.3.1 年齢制約

年齢制約を作成することは、列にデータの検証条件を追加することです。

年齢制約を作成するには:

1. デザイナ・ナビゲータの「モデル」アコーディオンで「Orders Application - HSQL」モデルを展開します。

2. 「SRC_CUSTOMER」データストアを展開します。

3. 「制約」ノードを右クリックし、図5-1に示すように「新規条件」を選択します。

図5-1 新規条件の挿入

4. 条件エディタの「定義」タブで次のようにします。

- 「名前」フィールドに条件の名前を入力します。たとえば、AGE > 21です。

- 「タイプ」リストで「Oracle Data Integrator条件」を選択します。

- Where句フィールドに次のSQLコードを入力します。

SRC_CUSTOMER.AGE > 21

注意:

- Where句フィールドにテキストを直接入力することも、式エディタを使用することもできます。式エディタを開くには、Where句ツールバー・メニューで「式エディタを起動します」をクリックします。

- Oracle Data Integratorで作成される制約は、データベースに実際は作成されません。制約はリポジトリに格納されます。

- 「メッセージ」フィールドに、エラー表に表示されるエラー・メッセージを指定します。

Customer age is not over 21!

- 図5-2に条件エディタを示します。

図5-2 条件エディタ

5. 「ファイル」メイン・メニューから「保存」を選択し、条件を保存します。

5.2.3.2 参照制約

この項では、CITY_ID列に基づいた、SRC_CUSTOMER表とSRC_CITY表の間の参照制約を作成する方法について説明します。

この制約では、顧客の市区町村がSRC_CITY表に存在することをチェックできます。

参照制約を作成するには:

1. デザイナ・ナビゲータの「モデル」アコーディオンで「Orders Application - HSQL」モデルを展開します。

2. 「SRC_CUSTOMER」データストアを展開します。

3. 「制約」ノードを右クリックし、図5-3に示すように「新規の参照」を選択します。

図5-3 新規参照の挿入

4. 参照エディタの「定義」タブで次のようにします。

- 「タイプ」リストから「ユーザー参照」を選択します。

- 「親モデル/表」セクションの「モデル」リストで「Orders Application - HSQL」を選択します。これは、リンク先の表を含むデータ・モデルです。

- 「表」リストから、「SRC_CITY」を選択します。これは、リンク先の表です。

図5-4に参照エディタを示します。

図5-4 参照エディタ

5. 参照エディタで「列」タブに移動します。

6. 「列」タブで、図5-5に示すように「追加」をクリックします。

図5-5 参照エディタの「列」タブ

新しい行が列表に挿入されます。

7. このステップでは、対照させる列を定義します。

- 表示される行をクリックします。これによって、適切な表のすべての列を含むドロップダウン・リストが表示されます。

- 「列(外部表)」リストから、「CITY_ID」を選択します。

- 「列(プライマリ表)」リストから、「CITY_ID」を選択します。

図5-6に、選択した、対照させる列が含まれた参照エディタの「列」タブを示します。

図5-6 対照させる列を含む参照エディタの「列」タブ

この例では、外部表はSRC_CUSTOMERで、プライマリ表はSRC_CITYであることに注意してください。外部キーでは、外部表とプライマリ表の列名が一致する必要はないことにも注意してください。この例ではたまたまそうであるだけです。

8. 「ファイル」→「保存」の順に選択し、この参照を保存します。

ヒント:

かわりに、[Ctrl]+[S]ショートカットを使用して現在のエディタを保存することもできます。

5.2.4 静的制御の実行

静的制御の実行では、データベースに定義されている制約が検証されます。SRC_CUSTOMERデータストアのデータを、第5.2.3項「制約の作成」で定義した制約に対して検証できます。

静的制御を実行するには:

1. デザイナ・ナビゲータの「モデル」アコーディオンで、「SRC_CUSTOMER」データストアを右クリックします。

2. 「制御」→「チェック」の順に選択します。

3. 図5-7に示すような「実行」ダイアログが表示されます。

図5-7 「実行」ダイアログ

4. 「実行」ダイアログで「OK」をクリックします。

5. 図5-8に示すような「情報」ダイアログが表示されます。

図5-8 「情報」ダイアログ

6. 「情報」ダイアログで「OK」をクリックします。

Oracle Data Integratorでデータのチェックに必要なコードがすべて自動的に生成され、実行セッションが開始されます。

5.2.5 オペレータ・ナビゲータでの制御の実行の追跡

オペレータ・ナビゲータを使用すると、実行結果を表示でき、セッションでの開発物の実行を管理できます。

制御の実行結果を表示するには:

1. オペレータ・ナビゲータの「セッション・リスト」アコーディオンで「すべての実行」ノードを展開します。
セッション・リストには、日付、物理エージェント、ステータス、キーワードなどの単位で編成されたすべてのセッションが表示されます。

2. オペレータ・ナビゲータのツールバーで「リフレッシュ」をクリックして、表示されている情報をリフレッシュします。

3. 実行セッションのログの表示は、図5-9のようになります。

図5-9 オペレータ・ナビゲータのセッション・リスト

ログは3つのレベルで構成されます。

- セッション(実行エージェントによって起動されるシナリオ、インタフェース、パッケージまたはプロシージャなどの実行に対応)

- ステップ(パッケージまたはシナリオ内のチェック対象のデータストア、インタフェース、プロシージャまたはステップに対応)

- タスク(インタフェース、プロセスまたはチェックの基本タスクに対応)

5.2.6 オペレータ・ナビゲータでの結果の解釈

この項では、無効なレコードの特定方法について説明します。これらは、制約を満たさず、静的制御によって拒否されたレコードです。

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

- 無効なレコードの数の特定

- 無効なレコードの確認

5.2.6.1 無効なレコードの数の特定

無効なレコードの数を特定するには:

1. オペレータ・ナビゲータの「セッション・リスト」アコーディオンで「すべての実行」ノードおよび「SRC_CUSTOMER」セッションを展開します。

2. 「SRC_CUSTOMER」ステップをダブルクリックし、セッション・ステップ・エディタを開きます。

3. 「レコード統計」セクションに、静的制御で行われた変更の詳細が表示されます。これらの変更には、挿入、更新、削除およびエラーの数やこのステップで処理された行の数などがあります。
図5-10に、SRC_CUSTOMERステップのセッション・ステップ・エディタを示します。

図5-10 SRC_CUSTOMERセッション・ステップ・エディタ

無効なレコードの数は、「エラー数」フィールドに表示されます。SRC_CUSTOMER表の静的制御では、9個の無効なレコードが検出されたことに注意してください。これらのレコードは、エラー表に分離されます。詳細は、第5.2.6.2項「無効なレコードの確認」を参照してください。

5.2.6.2 無効なレコードの確認

モデルの表で右クリックし、「制御」→「エラー」の順に選択すると、無効なレコードにアクセスできます。

SRC_CUSTOMER表の静的制御のエラー表を確認するには:

1. デザイナ・ナビゲータで、「Orders Application - HSQL」モデルを展開します。

2. 「SRC_CUSTOMER」データストアを右クリックします。

3. 「制御」→「エラー」の順に選択します。

4. 表5-11に示すようなエラー表エディタが表示されます。

図5-11 SRC_CUSTOMER表のエラー表

チェック・プロセスで拒否されたレコードは次のとおりです。

- AGE > 21制約に違反する8レコード(顧客の実年齢は21歳以下。詳細はAGE列を参照してください)。

- FK_CITY_CUSTOMER制約に違反する1レコード(CITY_ID値はSRC_CITY表に存在しません)。

このエディタでレコード全体を確認できます。つまり、正しくない値(最初のレコードの無効なCITY_ID値など)をすぐに確認できます。

表示されるエラー・メッセージは、第5.2.3.1項「年齢制約」でAGE > 21制約を設定したときに定義したものであることに注意してください。

静的制御がソース・データで実行されたため、統合インタフェースの実装に進む準備ができました。

6 統合インタフェースの使用

この章では、Oracle Data Integratorでの統合インタフェースの使用方法について説明します。デモンストレーション環境には、サンプル・インタフェースがいくつか含まれています。この章では、次のインタフェースの作成方法を示します。

- Pop.TRG_CUSTOMER統合インタフェース: このインタフェースは、Orders Application - HSQLモデルのSRC_CUSTOMER表からSales Administration - HSQLモデルのTRG_CUSTOMERターゲット表にデータをロードします。

- Pop.TRG_SALES統合インタフェース: このインタフェースは、Orders Application - HSQLモデルのSRC_ORDERS表およびSRC_ORDER_LINES表からSales Administration - HSQLモデルのTRG_SALESターゲット表にデータをロードします。

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

- 第6.1項「Pop. TRG_CUSTOMERインタフェースの例」

- 第6.2項「Pop. TRG_SALESインタフェースの例」

6.1 Pop.TRG_CUSTOMERインタフェースの例

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

- 目的と統合の要件

- インタフェースの定義

- 統合インタフェースの作成

6.1.1 目的と統合の要件

この項では、統合機能と、統合インタフェースPop.TRG_CUSTOMERが満たすべき要件について説明します。

Pop.TRG_CUSTOMERインタフェースの目的は、Orders Application - HSQLモデルのSRC_CUSTOMER表からSales Administration - HSQLモデルのTRG_CUSTOMERターゲット表にデータをロードすることです。

ただし、SRC_CUSTOMER表に、この操作に必要がデータがすべて含まれているわけではありません。次の情報をターゲット表に追加する必要があります。

- Parameters - FILEモデルのSRC_AGE_GROUPフラット・ファイルに定義されている年齢層(AGE_RANGE)は、ソース表のAGE属性に対応します。

- 顧客営業担当者の姓と名前(LAST_NAMEとFIRST_NAME)。Parameters - FILEモデルのSRC_SALES_PERSONファイルに定義され、ソース表の営業担当者番号(SALES_PERS_ID)に対応します。

- ソース表のDEAR列の数値データ(0、1、2)からターゲットの標準の敬称テキスト文字列(Mr、MrsまたはMs)に変換された値。

- ソース顧客の名前と姓を連結したもの。

ソース・データは、ターゲット環境に実装されている整合性ルールと矛盾する場合があります。このインタフェースの場合、すべての制約が満たされていることを検証し、無効な行をターゲット・データベースではなくエラー表に格納することで、データをクレンジングします。この例では、2つの重要な整合性ルールを満たす必要があります。

- 顧客は21歳より上である必要があります(条件AGE > 21)

- 顧客は、TRG_CITY表に存在する市区町村(CITY_ID)に関連付けられている必要があります(参照FK_CUST_CITY)

これらのルールの機能上の詳細と手順は、第6.1.3項「統合インタフェースの作成」に示されています。

6.1.2 インタフェースの定義

この項では、次のものについて説明します: 統合インタフェースPop.TRG_CUSTOMER(この例で作成)。詳細は、第6.1.3項「統合インタフェースの作成」を参照してください。

Pop.TRG_CUSTOMERインタフェースでは、次のデータと変換が使用されます。

- 1つのターゲット・データストア。表6-1に、ターゲット・データストアの詳細を示します。

表6-1 次のターゲット・データソースの詳細: Pop.TRG_CUSTOMER

モデル

データストア

説明

タイプ

Sales Administration - HSQL

TRG_CUSTOMER

HSQL表

- 3つのソース・データストア。表6-2に、ソース・データストアの詳細を示します。

表6-2 次のソース・データストアの詳細: Pop.TRG_CUSTOMER

モデル

データストア

説明

タイプ

Orders Application - HSQL

SRC_CUSTOMER

ソース・システムの顧客

HSQL表

Parameters - FILE

SRC_AGE_GROUP

年齢層ファイル

セミコロンで区切られたファイル

Parameters - FILE

SRC_SALES_PERSON

営業担当者ファイル

固定サイズ・レコードのファイル

- 1つの結合。表6-3に、結合の詳細を示します。

表6-3 次で使用される結合: Pop.TRG_CUSTOMER

結合

説明

SQLルール

実行位置

営業担当者と顧客

SRC_SALES_PERSONとSRC_CUSTOMERの結合

SRC_CUSTOMER.SALES_PERS_ID = SRC_SALES_PERSON.SALES_PERS_ID

ステージング領域

- 1つのルックアップ表。表6-4に、ルックアップ表の詳細を示します。

表6-4 次で使用されるルックアップ表: Pop.TRG_CUSTOMER

ルックアップ

説明

SQLルール

実行位置

顧客と年齢層

顧客の年齢は、ファイル内の最低年齢と最高年齢の間である必要があります。

SRC_CUSTOMER.AGE between SRC_AGE_GROUP.AGE_MIN and SRC_AGE_GROUP.AGE_MAX

ステージング領域

- 複数の変換ルール。表6-5に、変換ルールの詳細を示します。

表6-5 次で使用される変換ルール: Pop.TRG_CUSTOMER

ターゲット列

オリジナル

SQLルール

実行位置

CUST_ID

SRC_CUSTOMER.CUSTID

SRC_CUSTOMER.CUSTID

ソース

DEAR

SRC_CUSTOMER.DEAR = 0の場合は'MR'

SRC_CUSTOMER.DEAR = 1の場合は'MRS'、それ以外は'MS'

CASEWHEN(SRC_CUSTOMER.DEAR=0, 'MR', CASEWHEN( SRC_CUSTOMER.DEAR=1, 'MRS', 'MS') )

ソース

CUST_NAME

SRC_CUSTOMER.FIRST_NAMEとSRC_CUSTOMER.LAST_NAME (大文字)の連結

SRC_CUSTOMER.FIRST_NAME || ' ' || UCASE(SRC_CUSTOMER.LAST_NAME)

ソース

ADDRESS

SRC_CUSTOMER.ADDRESS

SRC_CUSTOMER.ADDRESS

ソース

CITY_ID

SRC_CUSTOMER.CITY_ID

SRC_CUSTOMER.CITY_ID

ソース

PHONE

SRC_CUSTOMER.PHONE

SRC_CUSTOMER.PHONE

ソース

AGE

SRC_CUSTOMER.AGE

SRC_CUSTOMER.AGE

ソース

AGE_RANGE

SRC_AGE_GROUP.AGE_RANGE

SRC_AGE_GROUP.AGE_RANGE

ステージング領域

SALES_PERS

SRC_SALES_PERSON.FIRST_NAMEとSRC_SALES_PERSON.LAST_NAME (大文字)の連結

SRC_SALES_PERSON.FIRST_NAME || ' ' || UCASE(SRC_SALES_PERSON.LAST_NAME)

ステージング領域

CRE_DATE

今日の日付

CURDATE()

ターゲット

UPD_DATE

今日の日付

CURDATE()

ターゲット

6.1.3 統合インタフェースの作成

この項では、次のものの作成方法について説明します: Pop.TRG_CUSTOMER統合インタフェース。Pop.TRG_CUSTOMERインタフェースを作成するには、次の手順に従います。

1. 新規統合インタフェースの挿入

2. ターゲット・データストアの定義

3. ソース・データストアの定義

4. ルックアップ表の定義

5. ソース・データストア間の結合の定義

6. マッピングの定義

7. データ・ロード・ストラテジ(LKM)の定義

8. データ統合ストラテジ(IKM)の定義

9. データ制御ストラテジの定義

6.1.3.1 新規統合インタフェースの挿入

新規統合インタフェースを作成するには:

1. デザイナ・ナビゲータで、「プロジェクト」アコーディオンの「Demo」プロジェクト・ノードを展開します。

2. 「Sales Administration」ノードを展開します。

3. 図6-1に示すように、「Sales Administration」フォルダで「インタフェース」ノードを右クリックし、「新規インタフェース」を選択します。

図6-1 新規インタフェースの挿入

インタフェース・エディタが表示されます。

4. インタフェース・エディタの「定義」タブで、インタフェースの名前(Pop.TRG_CUSTOMER)を図6-2に示すように「名前」フィールドに入力します。

図6-2 インタフェース・エディタ

6.1.3.2 ターゲット・データストアの定義

ターゲット・データストアは、インタフェースによってロードされる要素です。

ターゲット・データストアを次のものに挿入する手順: Pop.TRG_CUSTOMERインタフェース:

1. インタフェース・エディタの「マッピング」タブに移動します。

2. インタフェース・ダイアグラムの「マッピング」タブの表示は、図6-3のようになります。

図6-3 インタフェース・エディタの「マッピング」タブ

3. デザイナ・ナビゲータで、「モデル」アコーディオンおよび「Sales Administration - HSQL」モデルを展開します。

4. 図6-4に示すように、「Sales Administration - HSQL」モデルの「TRG_CUSTOMER」データストアを選択し、「ターゲット・データストア」パネルにドラッグします。

図6-4 ターゲット・データストア

6.1.3.3 ソース・データストアの定義

ソース・データストアには、ターゲット・データストアのロードに使用されるデータが含まれています。インタフェース・ソースとして、モデルのデータストア、およびインタフェースのターゲットである一時データストアの2つのタイプのデータストアを使用できます。この例では、Orders Application - HSQLおよびParameters - FILEモデルのデータストアを使用します。

ソース・データストアを次のものに追加する手順: Pop.TRG_CUSTOMERインタフェース:

1. 「マッピング」タブで、次のソース・データストアをソース・ダイアグラムにドラッグします。

- Orders Application - HSQLモデルのSRC_CUSTOMER

- Parameters - FILEモデルのSRC_SALES_PERSON

2. インタフェース・エディタの「マッピング」タブの表示は、図6-5のようになります。

図6-5 ソース・データストア

3. 「自動マップ」ダイアログが、図6-6のように表示されます。

図6-6 「自動マップ」ダイアログ

「はい」をクリックして、Oracle Data Integratorでマッピングを行う自動化フィールドの使用を確認します。自動マッピングは、ソース・データストアをソース・ダイアグラムにドロップすると行われます。

6.1.3.4 ルックアップ表の定義

この項では、顧客の年齢がファイル内の最低年齢と最高年齢の間である必要があることを定義するルックアップを作成する方法について説明します。

ルックアップは、モデルまたはインタフェースのターゲット・データストアからのデータストア(ルックアップ表と呼ばれます)で、結合式を使用してソース・データストア(駆動表)に関連付けられます。データはルックアップからフェッチされてマッピングで使用されます。

ルックアップ表は、ルックアップ・ウィザードを使用して追加されます。

ルックアップを次のものに作成する手順: Pop.TRG_CUSTOMERインタフェース:

1. ソース・ダイアグラムのツールバー・メニューから、図6-7に示す「新規ルックアップの追加」を選択します。

図6-7 ソース・ダイアグラムでのルックアップ表ウィザードの起動

ルックアップ・ウィザードが開きます。

2. ルックアップ・ウィザードで、「駆動表」リストから「SRC_CUSTOMER(SRC_CUSTOMER)」を選択します。
ここには現在のダイアグラムのソース・データベースが表示され、ルックアップはリストに表示されないことに注意してください。

3. 「ルックアップ表」ペインの「データストア」タブで、「Parameters - FILE」モデルから「SRC_AGE_GROUP」データストアを選択します。
SRC_AGE_GROUPデータストアはルックアップ表として使用されます。

図6-8に、ルックアップ・ウィザードの最初の画面を示します。

図6-8 ルックアップ・ウィザードの最初の画面

4. 「次へ」をクリックします。

5. 左ペインで、駆動表から「AGE」ソース列を選択します。

6. 右ペインで、ルックアップ表の「AGE_MIN」列を選択します。

7. 「結合」をクリックします。図6-9に示すように、結合条件が「ルックアップ条件」テキスト・フィールドに表示されます。

図6-9 ルックアップ・ウィザードの2番目の画面

8. 「オプション」セクションで、実行位置として「ステージング」を選択します。

9. 「式エディタを起動します」をクリックし、ルックアップ条件を次のように変更します。

- 等号記号(=)を文字列betweenに置き換えます。

- 次の文字列を式の末尾に追加します。
and SRC_AGE_GROUP.AGE_MAX

これによって、SRC_AGE_GROUPデータストアのAGE_MAX列が追加されます。

10. 結合式は次のようになります。
SRC_CUSTOMER.AGE between SRC_AGE_GROUP.AGE_MIN and SRC_AGE_GROUP.AGE_MAX

これは、SRC_CUSTOMERとSRC_AGE_GROUPデータストアの間の結合に相当し、顧客の年齢がファイル内の最低年齢と最高年齢の間である必要があることを定義します。図6-10に、ルックアップ条件が表示された式エディタを示します。

図6-10 変更されたルックアップ条件が表示された式エディタ

11. 式エディタで「OK」をクリックします。

12. 図6-11に示すように、変更されたルックアップ条件がルックアップ・ウィザードに表示されます。

図6-11 変更されたルックアップ条件が表示されたルックアップ・ウィザードの2番目の画面

13. 「終了」をクリックします。

ソース・ダイアグラムの表示は、図6-12のようになります。

図6-12 次のもののソース・ダイアグラム: Pop.TRG_CUSTOMERインタフェース

注意:

ソース・データストア間をリンクする参照がモデルにすでに定義されていた場合、これらの参照はソース・ダイアグラムに結合として自動的に表示されます。

6.1.3.5 ソース・データストア間の結合の定義

この項では、ソース・データストア間の結合の定義方法について説明します。

表6-3で定義された結合を作成するには:

1. ソース・ダイアグラムで、SRC_CUSTOMERデータストアのSALES_PERS_ID列を選択します。

2. SRC_SALES_PERSONデータストアのSALES_PERS_ID列にドラッグ・アンド・ドロップします。2つのデータストアをリンクする結合が、図6-13のように表示されます。これは、営業担当者識別子に基づいた結合です。

図6-13 ルックアップと結合を持つPop.TRG_CUSTOMERインタフェースのソース・ダイアグラム

6.1.3.6 マッピングの定義

インタフェースの「ターゲット・データストア」パネルで、ソースと一致する名前の列は自動的にマップされます。自動マッピングは、列名の対照によって行われます。表6-5に示された変換ルールの大半が、自動マッピングによって定義されています。この自動マッピング以外に、フィールドCUST_ID、DEAR、CUST_NAME、AGE_RANGE、SALES_PERS、CRE_DATEおよびUPD_DATEに対する変換ルールを定義する必要があります。

変換ルール(マッピングとも呼ばれる)はターゲット列に定義されます。

CUST_IDのマッピング

CUST_IDのマッピングでは、SRC_CUSTOMER.CUSTIDソース列がTRG_CUSTOMER.CUST_IDターゲット列にマップされます。これらの2つの列は、名前が若干異なるため、自動的にマップされていないことに注意してください。

CUST_IDターゲット列のマッピングを定義するには:

1. ソース・ダイアグラムで、SRC_CUSTOMERデータストアのCUSTID列を選択します。

2. 図6-14に示すように、「ターゲット・データストア」パネルの「マッピング」フィールドにドラッグします。

図6-14 CUST_IDのマッピング

3. 「ターゲット・データストア」で「マッピング」フィールドを選択し、プロパティ・インスペクタにプロパティを表示します。

4. 図6-15に示すように、実行位置が「ソース」に設定されていることを確認します。

図6-15 実行位置

注意:

使用可能な実行位置は、ソース、ターゲットおよびステージング領域です。表6-5で指定されたとおりに変換が実行される環境を必ず選択してください。図6-15に示すラジオ・ボタンのいずれかをクリックして、この環境を選択します。

DEARのマッピング

この変換ルールでは、ソース・データストアのDEAR列(数値)を文字列式としてマップします(0 -->'MR'、1 -->'MRS'、2 -->'MS')。

DEARターゲット列のマッピングを定義するには:

1. 「ターゲット・データストア」パネルで、DEARターゲット列の「マッピング」フィールドを選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

ヒント:

プロパティ・インスペクタのツールバーで「ビューの固定」をクリックすると、通常はプロパティ・インスペクタの内容が変更される別のコンポーネントを選択した場合でも、プロパティ・インスペクタの現在の内容が引き続き表示されます。ビューの固定ボタンは次のとおりです。

プロパティ・インスペクタのインスタンスの固定を解除し、アクティブな選択内容を追跡できるようにするには、ビューの固定ボタンを再度クリックします。

2. 「実装」フィールドに、次のマッピング式を入力します。
CASEWHEN(SRC_CUSTOMER.DEAR=0, 'MR', CASEWHEN( SRC_CUSTOMER.DEAR=1, 'MRS', 'MS') )

ヒント:

ソース列(SRC_CUSTOMER.DEAR列など)を「実装」フィールドにドラッグします。

3. 実行位置が「ソース」に設定されていることを確認します。

CUST_NAMEのマッピング

この変換ルールでは、各顧客の名前と大文字の姓を連結した値がマップされます。

CUST_NAMEターゲット列のマッピングを定義するには:

1. 「ターゲット・データストア」パネルで、CUST_NAMEターゲット列の「マッピング」フィールドを選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

2. 「実装」フィールドに、次のマッピング式を入力します。
SRC_CUSTOMER.FIRST_NAME || ' ' || UCASE(SRC_CUSTOMER.LAST_NAME)

ヒント:

式エディタを使用してこのルールを作成します。式エディタを使用すると、一般的な構文エラーを回避できます。

3. 実行位置が「ソース」に設定されていることを確認します。

AGE_RANGEのマッピング

このマッピングでは、SRC_AGE_GROUP.AGE_RANGEがTRG_CUSTOMER.AGE_RANGEにマップされます。

AGE_RANGEターゲット列のマッピングを定義するには:

1. 「ターゲット・データストア」パネルで、AGE_RANGEターゲット列の「マッピング」フィールドを選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

2. 「実装」フィールドに、次のマッピング式を入力します。
SRC_AGE_GROUP.AGE_RANGE

3. 実行位置が「ステージング領域」に設定されていることを確認します。

注意:

このルールは、ステージング領域で実行される必要があります。この例のソースはフラット・ファイルで、連結がサポートされるエンジンに関連付けられていません。

SALES_PERSのマッピング

これによって、各営業担当者の名前と大文字の姓を連結した値がマップされます。

SALES_PERSターゲット列のマッピングを定義するには:

1. 「ターゲット・データストア」パネルで、SALES_PERSターゲット列の「マッピング」フィールドを選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

2. 「実装」フィールドに、次のマッピング式を入力します。
SRC_SALES_PERSON.FIRST_NAME || ' ' || UCASE(SRC_SALES_PERSON.LAST_NAME)

3. 実行位置が「ステージング領域」に設定されていることを確認します。

注意:

このルールは、ステージング領域で実行される必要があります。この例のソースはフラット・ファイルで、連結がサポートされるエンジンに関連付けられていません。

CRE_DATEのマッピング

CRE_DATEターゲット列のマッピングを定義するには:

1. 「ターゲット・データストア」パネルで、CRE_DATEターゲット列の「マッピング」フィールドを選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

2. 「実装」フィールドに、次のマッピング式を入力します。
CURDATE()

3. 「アクティブ・マッピング」が選択されていることを確認します。

4. 実行位置が「ターゲット」に設定されていることを確認します。

5. 「更新」を選択解除します。マッピングは、挿入でのみ行われます。

6. CRE_DATEのマッピングのプロパティ・インスペクタの表示は、図6-16のようになります。

図6-16 CRE_DATEのマッピングのプロパティ・インスペクタ

UPD_DATEのマッピング

UPD_DATEターゲット列のマッピングを定義するには:

1. 「ターゲット・データストア」パネルで、UPD_DATEターゲット列の「マッピング」フィールドを選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

2. 「実装」フィールドに、次のマッピング式を入力します。
CURDATE()

3. 「アクティブ・マッピング」が選択されていることを確認します。

4. 実行位置が「ターゲット」に設定されていることを確認します。

5. 「挿入」を選択解除します。マッピングは、更新でのみ行われます。

6. UPD_DATEのマッピングのプロパティ・インスペクタの表示は、図6-17のようになります。

図6-17 UPD_DATEのマッピングのプロパティ・インスペクタ

式エディタに関する注意

- 式の構築に使用される式エディタには、テクノロジに固有の関数が含まれていない場合があります。多くのテクノロジに共通する関数のみが含まれています。式エディタに表示されない関数でも、手動で入力し、式に使用できます。

- このマッピングをターゲットで実行すると、式エディタによってターゲット・システムの構文(この場合はHypersonic SQLも)が指定されます。

- 「DBMSで式を確認してください」をクリックすると、ソース・サーバーが呼び出され、入力したSQLコードの構文がチェックされます。このチェックは、ルールがソース・サーバーで完全に実行される場合にのみ実行されます。

「ターゲット・データストア」パネル

図6-18に示すように、変換規則が「ターゲット・データストア」パネルに表示されます。

図6-18 ターゲット・データストア・マッピング

2種類のアイコンが、「ターゲット・データストア」パネルの「インジケータ」列で使用されます。

- ターゲット列のデータ型の最初の文字(n: numeric、v: varchar, d: date)

- 式の実行位置。

表6-6 実行位置アイコン

アイコン

説明

ソース

ステージング領域

ターゲット

マッピングでのエラー。このアイコンが表示されたら、エラーのターゲット列を選択し、プロパティ・インスペクタで入力を確認します。

統合インタフェースの作成および表示には、クイック編集エディタも使用できることに注意してください。詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のクイック編集エディタの使用に関する項を参照してください。

6.1.3.7 データ・ロード・ストラテジ(LKM)の定義

データ・ロード・ストラテジは、インタフェース・エディタの「フロー」タブで定義されます。Oracle Data Integratorでは、インタフェースのダイアグラムの構成に応じてフローが自動的に計算されます。また、データ・フローのデフォルトのKMが提示されます。「フロー」タブでは、データ・フローを確認して、データのロードと統合に使用するKMを選択できます。

ロード・ナレッジ・モジュール(LKM)はロード・ストラテジに使用され、統合ナレッジ・モジュール(IKM)は統合ストラテジに使用されます。

ソース環境のSRC_AGE_GROUPファイル、SRC_SALES_PERSONファイルおよびSRC_CUSTOMER表からデータを取得する方法を定義する必要があります。

ロード・ストラテジを定義するには:

1. インタフェース・エディタの「フロー」タブで、SRC_AGE_GROUPファイルのロードに対応するソース・セットを選択します。この例では、これはSrcSet0 (FILE_GENERIC)です。プロパティ・インスペクタに、このソース・セットのプロパティが表示されます。

2. 図6-19に示すように、プロパティ・インスペクタのLKMセレクタ・リストで、「LKM File to SQL」が選択されていることを確認します。

図6-19 「フロー」タブ: Pop.TRG_CUSTOMERインタフェース・エディタ

3. SRC_CUSTOMER表のロードに対応するソース・セットを選択します。

4. プロパティ・インスペクタのLKMセレクタ・リストで、「LKM SQL to SQL」が選択されていることを確認します。

6.1.3.8 データ統合ストラテジ(IKM)の定義

ロード・フェーズを定義したら、データのターゲット表への統合に使用するストラテジを定義する必要があります。

統合ストラテジを定義するには:

1. インタフェース・エディタの「フロー」タブのフロー・ダイアグラムでターゲット・オブジェクトを選択します。プロパティ・インスペクタに、ターゲットのプロパティが表示されます。

2. プロパティ・インスペクタのIKMセレクタ・リストで、「IKM SQL Incremental Update」が選択されていることを確認します。

3. ナレッジ・モジュールのオプションはデフォルトのままにします。プロパティ・インスペクタの表示は、図6-20のようになります。

図6-20 Pop.TRG_CUSTOMERのターゲット領域のプロパティ・インスペクタ

KMオプションによって、統合ストラテジの特定の側面を制御できます。たとえば、FLOW_CONTROLオプションでは、ターゲット表に挿入する前にデータのフロー制御操作がトリガーされます。

注意:

プロジェクトにインポートされたナレッジ・モジュールのみがKMセレクタ・リストに表示されます。デモンストレーション環境には、スタート・ガイドの例に必要なナレッジ・モジュールがすでに含まれています。デモンストレーション・プロジェクトにKMをインポートする必要がありません。

KMのプロジェクトへのインポートの詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のKMのインポートに関する項を参照してください。

6.1.3.9 データ制御ストラテジの定義

第6.1.3.7項「データ・ロード・ストラテジ(LKM)の定義」および第6.1.3.8項「データ統合ストラテジ(IKM)の定義」で、ソースからターゲットへのデータ・フローを指定しました。ここで、データのチェック方法(CKM)およびデータの統合前に満たす必要のある制約とルールを定義する必要があります。

データ制御ストラテジを定義するには:

1. インタフェース・エディタの「制御」タブで、「CKM SQL」が選択されていることを確認します。

2. 「制約」セクションで、確認する制約をtrueに設定します。

- PK_TRG_CUSTOMER

- AGE >21

- FK_CUST_CITY

「制御」タブの表示は、図6-21のようになります。

図6-21 「制御」タブ: Pop.TRG_CUSTOMERインタフェース

3. 「ファイル」メイン・メニューから「保存」を選択します。

Pop.TRG_CUSTOMERインタフェースの実行の準備ができました。

6.2 Pop.TRG_SALESインタフェースの例

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

- 目的と統合の要件

- インタフェースの定義

- 統合インタフェースの作成

6.2.1 目的と統合の要件

この項では、統合機能と、統合インタフェースPop.TRG_SALESが満たすべき要件について説明します。

このインタフェースの目的は、注文のSRC_ORDERS表および注文明細のSRC_ORDER_LINES表をOrders Application - HSQLモデルからSales Administration - HSQLモデルのTRG_SALESターゲット表にロードすることです。データは、ターゲット表に統合する前に集計する必要があります。ステータスがCLOの注文のみを使用します。

ただし、ソース・データは、ターゲット環境に実装されている整合性ルールと矛盾する場合があります。この変換では、すべての制約が満たされていることを検証することで、データをクレンジングします。無効な行を、ターゲット・データベースではなくエラー表に格納します。この場合、2つの重要な整合性ルールを満たす必要があります。

- 売上は、TRG_CUSTOMER表に存在する顧客(CUST_ID)に関連付けられている必要があります(参照FK_SALES_CUST)

- 売上は、TRG_PRODUCT表に存在する製品(PRODUCT_ID)に関連付けられている必要があります(参照FK_SALES_PROD)

これらのルールの機能上の詳細と手順は、第6.2.3項「統合インタフェースの作成」に示されています。

6.2.2 インタフェースの定義

この項では、次のものについて説明します: 統合インタフェースPop.TRG_SALES (この例で作成)。詳細は、第6.2.3項「統合インタフェースの作成」を参照してください。

Pop.TRG_SALESインタフェースでは、次のデータと変換が使用されます。

- 1つのターゲット・データストア。表6-7に、ターゲット・データストアの詳細を示します。

表6-7 次のターゲット・データソースの詳細: Pop.TRG_SALES

モデル

データストア

説明

タイプ

Sales Administration - HSQL

TRG_SALES

HSQL表

- 2つのソース・データストア。表6-8に、ソース・データストアの詳細を示します。

表6-8 次のソース・データストアの詳細: Pop.TRG_SALES

モデル

データストア

説明

タイプ

Orders Application - HSQL

SRC_ORDERS

ソース・システムの注文表

HSQL表

Orders Application - HSQL

SRC_ORDER_LINES

ソース・システムの注文明細表

HSQL表

- 1つの結合。表6-9に、結合の詳細を示します。

表6-9 次で使用される結合: Pop.TRG_SALES

結合

説明

SQLルール

実行位置

コマンドと注文明細

SRC_ORDERSとSRC_ORDER_LINESの結合

SRC_ORDERS.ORDER_ID = SRC_ORDER_LINES.ORDER_ID

ソース

- 1つのフィルタ。表6-10に、フィルタの詳細を示します。

表6-10 次で使用されるフィルタ: Pop.TRG_SALES

説明

SQLルール

実行位置

完了済の注文(CLOSED)のみを取得

SRC_ORDERS.STATUS = 'CLO'

ソース

- 複数の変換ルール。表6-11に、変換ルールの詳細を示します。

表6-11 次で使用される変換ルール: Pop.TRG_CUSTOMER

ターゲット列

オリジナル

SQLルール

実行位置

CUST_ID

SRC_ORDERSのCUST_ID

SRC_ORDERS.CUST_ID

ソース

PRODUCT_ID

SRC_ORDER_LINESのPRODUCT_ID

SRC_ORDER_LINES.PRODUCT_ID

ソース

FIRST_ORD_ID

ORDER_IDの最小値

MIN(SRC_ORDERS.ORDER_ID)

ソース

FIRST_ORD_DATE

SRC_ORDERSのORDER_DATEの最小値

MIN(SRC_ORDERS.ORDER_DATE)

ソース

LAST_ORD_ID

ORDER_IDの最大値

MAX(SRC_ORDERS.ORDER_ID)

ソース

LAST_ORD_DATE

SRC_ORDERSのORDER_DATEの最大値

MAX(SRC_ORDERS.ORDER_DATE)

ソース

QTY

注文明細のQTY数量の合計

SUM(SRC_ORDER_LINES.QTY)

ソース

AMOUNT

注文明細の金額の合計

SUM(SRC_ORDER_LINES.AMOUNT)

ソース

PROD_AVG_PRICE

注文明細の平均金額

AVG(SRC_ORDER_LINES.AMOUNT)

ソース

6.2.3 統合インタフェースの作成

この項では、次のものの作成方法について説明します: Pop.TRG_SALES統合インタフェース。Pop.TRG_SALESインタフェースを作成するには、次の手順に従います。

1. 新規統合インタフェースの挿入

2. ターゲット・データストアの定義

3. ソース・データストアの定義

4. ソース・データストア間の結合の定義

5. 注文フィルタの定義

6. 変換ルールの定義

7. データ・ロード・ストラテジ(LKM)の定義

8. データ統合ストラテジ(IKM)の定義

9. データ制御ストラテジの定義

統合インタフェースの作成には、クイック編集エディタも使用できることに注意してください。詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のクイック編集エディタの使用に関する項を参照してください。

6.2.3.1 新規統合インタフェースの挿入

新規統合インタフェースを作成するには:

1. デザイナ・ナビゲータで、「プロジェクト」アコーディオンの「Demo」プロジェクト・ノードを展開します。

2. 「Sales Administration」ノードを展開します。

3. 「Sales Administration」フォルダで「インタフェース」ノードを右クリックし、「新規インタフェース」を選択します。
インタフェース・エディタが表示されます。

4. インタフェース・エディタの「定義」タブで、インタフェースの名前(Pop.TRG_SALES)を「名前」フィールドに入力します。

6.2.3.2 ターゲット・データストアの定義

ターゲット・データストアを次のものに挿入する手順: Pop.TRG_SALESインタフェース:

1. インタフェース・エディタの「マッピング」タブに移動します。

2. デザイナ・ナビゲータで、「モデル」アコーディオンおよび「Sales Administration - HSQL」モデルを展開します。

3. 「Sales Administration - HSQL」モデルの「TRG_SALES」データストアを選択し、「ターゲット・データストア」パネルにドラッグします。

6.2.3.3 ソース・データストアの定義

Pop.TRG_SALESインタフェースの例では、Orders Application - HSQLモデルのデータストアを使用します。

ソース・データストアを次のものに追加する手順: Pop.TRG_SALESインタフェース:

1. 「マッピング」タブで、次のソース・データストアをソース・ダイアグラムにドラッグします。

- Orders Application - HSQLモデルのSRC_ORDERS

- Orders Application - HSQLモデルのSRC_ORDER_LINES

2. 「自動マップ」ダイアログで、「はい」をクリックします。

6.2.3.4 ソース・データストア間の結合の定義

この項では、ソース・データストア間の結合の定義方法について説明します。

表6-9で定義された結合を作成するには:

1. ソース・ダイアグラムで、SRC_ORDERSデータストアのORDER_ID列を選択します。

2. SRC_ORDER_LINESデータストアのORDER_ID列にドラッグ・アンド・ドロップします。
2つのデータストアをリンクする結合が表示されます。これは、注文番号に基づいた結合です。

結合の式は次のとおりです。

SRC_ORDERS.ORDER_ID=SRC_ORDER_LINES.ORDER_ID

6.2.3.5 注文フィルタの定義

この例では、完了した注文のみが取得されます。フィルタは、SRC_ORDERSデータストアに定義される必要があります。

フィルタを定義するには:

1. ソース・ダイアグラムでSRC_ORDERSデータストアのSTATUS列を選択し、ソース・ダイアグラムにドラッグします。

2. フィルタが、図6-22のように表示されます。

図6-22 SRC_ORDERSのフィルタ

3. ソース・ダイアグラムでフィルタを選択し、プロパティ・インスペクタにフィルタのプロパティを表示します。

4. プロパティ・インスペクタの「実装」タブで次のように入力し、フィルタ・ルールを変更します。
SRC_ORDERS.STATUS = 'CLO'

6.2.3.6 変換ルールの定義

インタフェースの「ターゲット・データストア」パネルで、ソースと一致する名前の列は自動的にマップされます。自動マッピングは、列名の対照によって行われます。表6-11に示された変換ルールの大半が、自動マッピングによって定義されています。この自動マッピング以外に、フィールドFIRST_ORD_ID、FIRST_ORD_DATE、LAST_ORD_ID、LAST_ORD_DATE、QTY、AMOUNTおよびPROD_AVG_PRICEに対する変換ルールを定義する必要があります。

ターゲット列のマッピングを手動で定義するには:

1. 「ターゲット・データストア」パネルでターゲット列を選択し、プロパティ・インスペクタにマッピング・プロパティを表示します。

2. プロパティ・インスペクタで「ビューの固定」をクリックし、ターゲット列のマッピングが表示されるようにします。

3. 次のいずれかの方法で変換ルールを作成します。

- ソース列を「ターゲット・データストア」パネルの「マッピング」フィールドにドラッグ

- ソース・データストアの必要な列をプロパティ・インスペクタの「実装」フィールドにドラッグ

- 式エディタでマップ式を編集

4. ソース、ターゲット、ステージング領域のいずれかの実行位置を選択します。表6-11で指定されたとおりに変換が実行される環境を必ず選択してください。

5. 「DBMSで式を確認してください」をクリックして構文を検証します。

6. 「式を保存します」をクリックして、式を保存します。

マッピングで次のルールを実装します。

- FIRST_ORD_ID: SRC_ORDERS.ORDER_ID列を「実装」フィールドにドラッグします。次のテキストを「実装」フィールドに入力します。
MIN(SRC_ORDERS.ORDER_ID)

この変換ルールでは、SRC_ORDERS表のORDER_ID列の最小値をターゲット表のFIRST_ORD_ID列にマップします。

- FIRST_ORD_DATE: SRC_ORDERS.ORDER_DATE列を「実装」フィールドにドラッグします。次のテキストを「実装」フィールドに入力します。
MIN(SRC_ORDERS.ORDER_DATE)

この変換ルールでは、SRC_ORDERS表のORDER_DATE列の最小値をターゲット表のFIRST_ORD_DATE列にマップします。

- LAST_ORD_ID: SRC_ORDERS.ORDER_ID列を「実装」フィールドにドラッグ・アンド・ドロップします。次のテキストを「実装」フィールドに入力します。
MAX(SRC_ORDERS.ORDER_ID)

この変換ルールでは、SRC_ORDERS表のORDER_ID列の最大値をターゲット表のLAST_ORD_ID列にマップします。

- LAST_ORD_DATE: SRC_ORDERS.ORDER_DATE列を「実装」フィールドにドラッグします。次のテキストを「実装」フィールドに入力します。
MAX(SRC_ORDERS.ORDER_DATE)

この変換ルールでは、SRC_ORDERS表のORDER_DATE列の最大値をターゲット表のLAST_ORD_DATE列にマップします。

- QTY: 次のテキストを「実装」フィールドに入力します。
SUM(SRC_ORDER_LINES.QTY)

この変換ルールでは、製品の数量の合計をターゲット表のQTY列にマップします。

- AMOUNT: 次のテキストを「実装」フィールドに入力します。
SUM(SRC_ORDER_LINES.AMOUNT)

この変換ルールでは、製品価格の合計をターゲット表のAMOUNT列にマップします。

- PROD_AVG_PRICE: SRC_ORDERLINES.AMOUNT列を「実装」フィールドにドラッグします。次のテキストを「実装」フィールドに入力します。
AVG(SRC_ORDER_LINES.AMOUNT)

この変換ルールでは、製品価格の平均をターゲット表のPROD_AVG_PRICE列にマップします。

マッピング・ルールを詳細に確認し、図6-23に示すようにルールを定義したことを確認します。

この例で集計関数が使用されている場合でも、ルールによるグループの指定を行う必要はないことに注意してください。Oracle Data Integratorでマッピングから推定され、SQLの標準コーディング・プラクティスが適用されます。

図6-23 ターゲット・データストア・マッピング

6.2.3.7 データ・ロード・ストラテジ(LKM)の定義

「フロー」タブには、インタフェースの実行時に行われる様々なステップがOracle Data Integratorによって示されます。

「フロー」タブで注文の結果のロード方法を定義し、ロード・ナレッジ・モジュール(LKM)を使用して注文明細がターゲット環境に集計されます。

ロード・ストラテジを定義するには:

1. インタフェース・エディタの「フロー」タブで、注文明細のフィルタされた集計結果のロードに対応するソース・セットを選択します。この例では、これはSrcSet0 (HSQL_LOCALHOST_2000)です。

2. 図6-24に示すように、プロパティ・インスペクタのLKMセレクタで、「LKM SQL to SQL」が選択されていることを確認します。

図6-24 Pop.TRG_SALESインタフェースの「フロー」タブ

6.2.3.8 データ統合ストラテジ(IKM)の定義

ロード・フェーズを定義したら、データのターゲット表への統合に使用するストラテジを定義する必要があります。

統合ストラテジを定義するには:

1. インタフェース・エディタの「フロー」タブのフロー・ダイアグラムでターゲット・オブジェクトを選択します。プロパティ・インスペクタに、ターゲットのプロパティが表示されます。

2. プロパティ・インスペクタのIKMセレクタ・リストで、「IKM SQL Incremental Update」が選択されていることを確認します。

3. ナレッジ・モジュールのオプションはデフォルトのままにします。

6.2.3.9 データ制御ストラテジの定義

第6.2.3.7項「データ・ロード・ストラテジ(LKM)の定義」および第6.2.3.8項「データ統合ストラテジ(IKM)の定義」で、ソースからターゲットへのデータ・フローを指定しました。ここで、データのチェック方法(CKM)およびデータの統合前に満たす必要のある制約とルールを定義する必要があります。

データ制御ストラテジを定義するには:

1. インタフェース・エディタの「制御」タブで、「CKM SQL」が選択されていることを確認します。

2. 「制約」セクションで、確認する制約をtrueに設定します。

- PK_TRG_SALES

- FK_SALES_CUST

- FK_SALES_PROD

「制御」タブの表示は、図6-25のようになります。

図6-25 Pop.TRG_SALESインタフェースの「制御」タブ

3. 「ファイル」メイン・メニューから「保存」を選択します。

Pop.TRG_SALESインタフェースの実行の準備ができました。

7 パッケージの使用

この章では、Oracle Data Integratorでのパッケージの使用方法について説明します。例としてLoad Sales Administrationパッケージを使用します。パッケージおよびアプリケーション間のデータ統合の自動化の概要を示します。

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

- 第7.1項「概要」

- 第7.2項「Load Sales Administrationパッケージの例」

7.1 概要

この項では、Oracle Data Integratorでのパッケージを使用したデータ統合の自動化の概要を示します。

7.1.1 データ統合フローの自動化

データ統合フローの自動化は、パッケージ内の様々なステップ(インタフェース、プロシージャなど)の実行を順序付け、これらの各ステップの使用準備済コードが含まれた本番シナリオを生成することで行われます。

この章では、様々なステップの実行を順序付ける方法について説明します。本番シナリオの生成方法は、第9章「統合されたアプリケーションのデプロイ」に記載されています。

7.1.2 パッケージ

パッケージは実行ダイアグラム内に編成された一連のステップで構成されます。パッケージは、本番のシナリオの生成に使用される主要なオブジェクトです。データ統合ワークフローを表し、たとえば、次のようなジョブを実行できます。

- データストアまたはモデルでのリバースエンジニアリング・プロセスの起動

- 管理者への電子メールの送信

- ファイルのダウンロードと解凍

- インタフェースの実行順序の定義

- パラメータを変更しながら実行コマンドを繰り返すループの定義

このスタート・ガイドの例では、インタフェースの順序を使用してSales Administrationアプリケーションをロードします。このアプリケーションの表の間に参照制約があるため、あらかじめ定義された順序でターゲット表をロードする必要があります。たとえば、TRG_CITY表が先にロードされていないと、TRG_CUSTOMER表をロードできません。

第7.2項「Load Sales Administrationパッケージの例」で、Demoプロジェクトに含まれているインタフェースおよび第6章「統合インタフェースの使用」で作成したインタフェースを含むパッケージを作成して実行します。

7.1.2.1 シナリオ

シナリオは、ソース・コンポーネント(インタフェース、パッケージ、プロシージャ、変数)を本番に移行するために設計されます。シナリオは、そのコンポーネントのコード(SQL、シェルなど)の生成により、生成されます。

生成されると、ソース・コンポーネントのコードが固定され、シナリオが作業リポジトリ内に格納されます。シナリオはエクスポートして他の本番環境にインポートできます。

注意:

生成後、シナリオのコードは固定され、作成に使用されたパッケージやデータ・モデルのその後の変更によって影響されません。シナリオを更新する必要がある場合(インタフェースの1つが変更された場合など)、新しいバージョンのシナリオをパッケージから生成する必要があります。

詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のシナリオの使用に関する項を参照してください。

第9章「統合されたアプリケーションのデプロイ」で、LOAD_SALES_ADMINISTRATIONシナリオをパッケージから生成し、このシナリオをOracle Data Integrator Studioで実行します。

7.2 Load Sales Administrationパッケージの例

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

- 目的

- Oracle Data Integratorに用意されている開発物

- 問題の分析

- パッケージの作成

7.2.1 目的

Load Sales Administrationパッケージの目的は、Sales Administrationアプリケーションをロードするためのワークフロー全体を定義し、実行順序を設定することです。

7.2.2 Oracle Data Integratorに用意されている開発物

デモ・リポジトリには、多数の開発物が含まれています。Demoプロジェクトには、図7-1に示す次の開発物が含まれます。

- 7つのインタフェース:

- Pop.TRG_CITY: TRG_CITY表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

- Pop.TRG_COUNTRY: TRG_COUNTRY表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

- Pop.TRG_CUSTOMER: TRG_CUSTOMER表にデータを移入するインタフェース。このインタフェースは、第6.1項「Pop. TRG_CUSTOMERインタフェースの例」で作成されます。

- Pop.TRG_PRODUCT: TRG_PRODUCT表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

- Pop.TRG_PROD_FAMILY: TRG_PROD_FAMILY表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

- Pop.TRG_REGION: TRG_REGION表にデータを移入するインタフェース。このインタフェースは、デモ・リポジトリに含まれています。

- Pop.TRG_SALES: TRG_SALES表にデータを移入するインタフェース。このインタフェースは、第6.2項「Pop. TRG_SALESインタフェースの例」で作成されます。

- 1つのプロシージャ:
Delete Targetsプロシージャは、Sales Administrationアプリケーション内のすべての表を空にします。この操作は、各表でDelete文を使用して行われます。

図7-1 Demoプロジェクト

7.2.3 問題の分析

Sales Administrationアプリケーションを適切に(参照整合性制約に則して)ロードするには、次の順序でタスクを実行する必要があります。

1. Sales Administrationの表をDelete Targetsプロシージャを使用して空にします。

2. 次のものを使用してTRG_COUNTRY表をロードします: Pop.TRG_COUNTRYインタフェース

3. 次のものを使用してTRG_REGION表をロードします: Pop.TRG_REGIONインタフェース

4. 次のものを使用してTRG_CITY表をロードします: Pop.TRG_CITYインタフェース

5. 次のものを使用してTRG_PROD_FAMILY表をロードします: Pop.TRG_PROD_FAMILYインタフェース

6. 次のものを使用してTRG_PRODUCT表をロードします: Pop.TRG_PRODUCTインタフェース

7. 次のものを使用してTRG_CUSTOMER表をロードします: Pop.TRG_CUSTOMERインタフェース

8. 次のものを使用してTRG_SALES表をロードします: Pop.TRG_SALESインタフェース

このような統合プロセスは、Oracle Data Integratorではパッケージ形式で構築されます。

7.2.4 パッケージの作成

この項では、Load Sales Administrationパッケージの作成方法について説明します。Load Sales Administrationパッケージを作成するには、次の手順を実行します:

1. 新規パッケージの作成

2. パッケージでのステップの挿入

3. パッケージ内のステップの順序の定義

7.2.4.1 新規パッケージの作成

新規パッケージを作成するには:

1. デザイナ・ナビゲータで、「プロジェクト」アコーディオンの「Demo」プロジェクト・ノードを展開します。

2. 「Sales Administration」ノードを展開します。

3. 図7-2に示すように、「Sales Administration」フォルダで「パッケージ」ノードを右クリックし、「新規パッケージ」を選択します。

図7-2 新規パッケージの挿入

パッケージ・エディタが表示されます。

4. パッケージ・エディタの「定義」タブで、パッケージの名前(Load Sales Administration)を「名前」フィールドに入力します。

5. 「ファイル」メイン・メニューから「保存」を選択します。

7.2.4.2 パッケージでのステップの挿入

Load Sales Administrationパッケージにステップを挿入するには:

1. パッケージ・エディタで「ダイアグラム」タブに移動します。

2. 「ダイアグラム」タブの「プロジェクト」アコーディオンで、次のコンポーネントを1つずつ選択し、ダイアグラムにドラッグ・アンド・ドロップします。

- Delete Targets(プロシージャ)

- Pop.TRG_COUNTRY

- Pop.TRG_REGION

- Pop.TRG_CITY

- Pop.TRG_CUSTOMER

- Pop.TRG_PROD_FAMILY

- Pop.TRG_PRODUCT

- Pop.TRG_SALES

これらのコンポーネントがパッケージに挿入され、ダイアグラムにステップとして表示されます。ステップはまだ順序付けられていないことに注意してください。

7.2.4.3 パッケージ内のステップの順序の定義

ステップを作成した後は、データ処理チェーンにおける各ステップの順序を再設定する必要があります。このチェーンには、次のルールがあります。

- ステップは、「最初のステップ」として定義された一意のステップで開始します。

- 各ステップには、成功または失敗という2つの終了状態があります。

- 失敗または成功したステップは、別のステップに続けるか、パッケージの終点にできます。

- 失敗した場合の再試行回数を定義できます。

パッケージの始点(最初のステップ)は1つですが、終了ステップは複数設定できます。

Load Sales Administrationパッケージには、成功時のステップのみ含まれています。

最初のステップの定義

Load Sales Administrationパッケージの最初のステップを定義するには:

注意:

第7.2.4.2項「パッケージでのステップの挿入」で、定義された順序でパッケージのコンポーネントをドラッグ・アンド・ドロップした場合、Delete Targetプロシージャが最初のステップとしてすでに識別されており、最初のステップの記号がステップのアイコンに表示されています。この場合、成功時の次のステップを定義します。

1. 「Delete Target」プロシージャ・ステップを選択し、右クリックします。

2. コンテキスト・メニューから「最初のステップ」を選択します。

緑色の小さな矢印がこのステップに表示されます。

成功時の次のステップの定義

成功時の次のステップを定義するには:

1. パッケージのツールバー・タブで、「成功時の次のステップ」を選択します。

2. 「Delete Targets」ステップを選択します。

3. マウスのボタンを押したまま、成功時の次のステップのアイコンまでカーソルを移動し(ここではPop.TRG_COUNTRYステップ)、マウス・ボタンを放します。
ステップ間の成功パスを表す緑色の矢印が、「OK」ラベル付きで表示されます。

4. この操作を繰り返し、成功時の一連の経路に配置するすべてのステップをリンクします。この順序は次のとおりです。

- Delete Targets(最初のステップ)

- Pop.TRG_COUNTRY

- Pop.TRG_REGION

- Pop.TRG_CITY

- Pop.TRG_CUSTOMER

- Pop.TRG_PROD_FAMILY

- Pop.TRG_PRODUCT

- Pop.TRG_SALES

パッケージ・ダイアグラムでの結果の順序は、図7-3に示すようになります。

図7-3 Load Sales Administrationパッケージ・ダイアグラム

5. 「ファイル」メイン・メニューから「保存」を選択します。

これで、パッケージを実行する準備ができました。

8 開発物の実行と結果の確認

この章では、次のものの実行方法について説明します: Load Sales Administrationパッケージ(第7章「パッケージの使用」で作成)および統合インタフェースPop.TRG_CUSTOMERとPop.TRG_SALES (第6章「統合インタフェースの使用」で作成)。この章では、実行の追跡方法と実行結果の解釈方法についても説明します。

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

- 第8.1項「Load Sales Administrationパッケージの実行」

- 第8.2項「Pop. TRG_SALESインタフェースの実行」

8.1 Load Sales Administrationパッケージの実行

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

- パッケージの実行

- オペレータ・ナビゲータでのパッケージの実行の追跡

- Pop. TRG_CUSTOMERセッション・ステップの結果の解釈

8.1.1 パッケージの実行

Load Sales Administrationパッケージを実行するには:

1. デザイナ・ナビゲータで、「Sales Administration」ノード下の「パッケージ」ノードを展開します。

2. Load Sales Administrationパッケージを選択します。

3. 右クリックして「実行」を選択します。

4. 「確認」ダイアログで、「はい」をクリックします。

5. 「実行」ダイアログでデフォルト設定のままにし、「OK」をクリックします。

6. 「セッションを開始しました」情報ダイアログが表示されます。「OK」をクリックします。

Oracle Data Integratorで実行セッションが開始されます。

8.1.2 オペレータ・ナビゲータでのパッケージの実行の追跡

オペレータ・ナビゲータを使用すると、実行結果を表示でき、セッションでの開発物の実行を管理できます。

Load Sales Administrationパッケージの実行結果を表示するには:

1. オペレータ・ナビゲータの「セッション・リスト」アコーディオンで「すべての実行」ノードを展開します。

2. オペレータ・ナビゲータのツールバーで「リフレッシュ」をクリックして、表示されている情報をリフレッシュします。「リフレッシュ」は次のとおりです。

3. Load Sales Administrationパッケージの実行セッションのログの表示は、図8-1のようになります。

図8-1 Load Sales Administrationパッケージのセッション・ログ

8.1.3 結果の解釈: Pop.TRG_CUSTOMERセッションのステップ

この項では、次のものによって検出された無効なレコードの特定方法について説明します: Pop.TRG_CUSTOMERインタフェース。これらは、制約を満たさず、次のもののフロー制御によって拒否されたレコードです: Pop.TRG_CUSTOMERインタフェース。

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

- 処理されたレコードの数の特定

- 結果のデータの表示

- 無効なレコードと不正なデータの確認

- 無効なデータの修正

- 処理されたレコードの確認

8.1.3.1 処理されたレコードの数の特定

次のものによって処理されたレコードの数を特定する手順: Pop.TRG_CUSTOMERインタフェース(これは、挿入、更新、削除およびエラーの数です):

1. オペレータ・ナビゲータの「セッション・リスト」アコーディオンで「すべての実行」ノードを展開します。

2. オペレータ・ナビゲータのツールバー・メニューで「リフレッシュ」をクリックして、表示されている情報をリフレッシュします。

3. Load Sales Administrationパッケージ・セッションを展開し、次のもののセッション・ステップ・エディタを開きます: Pop.TRG_CUSTOMERステップ。これはステップ4です。

4. セッション・ステップ・エディタの「定義」タブで、TRG_CUSTOMER表のロードによって25個の挿入が生成され、9個のエラーがエラー表に分離されたことが「レコード統計」セクションに表示されます。
図8-2に、セッション・ステップ・エディタの「レコード統計」セクションを示します。

図8-2 セッション・ステップ・エディタのレコード統計

8.1.3.2 結果のデータの表示

この例では、結果のデータは、インタフェースの実行時にTRG_CUSTOMER表に挿入された25行です。

インタフェースの実行結果のデータを表示するには:

1. デザイナ・ナビゲータで、「モデル」アコーディオンおよび「Sales Administration - HSQL」モデルを展開します。

2. 「TRG_CUSTOMER」データストアを選択します。

3. 右クリックして「データの表示」を選択し、ターゲット表にデータを表示します。
「データ」を選択することでも、ターゲット表のデータを表示および編集できることに注意してください。

図8-3に示すようなデータの表示エディタが表示されます。

図8-3 データの表示エディタ

8.1.3.3 無効なレコードと不正なデータの確認

モデルのデータストアで右クリックし、「制御」→「エラー」の順に選択すると、無効なレコードにアクセスできます。

TRG_CUSTOMERデータストアのエラー表を確認するには:

1. デザイナ・ナビゲータで、「Sales Administration - HSQL」モデルを展開します。

2. 「TRG_CUSTOMER」データストアを選択します。

3. 右クリックして「制御」→「エラー」の順に選択します。

4. 図8-4に示すようなエラー表エディタが表示されます。

図8-4 TRG_CUSTOMER表のエラー表

実行したインタフェースによって、9個の無効なレコードが特定され、自動的に作成されたエラー表に分離されています。

このエラー表に、インタフェースによって次のものが拒否されたことが表示されます。

- FK_CUST_CITY制約を満たさなかった2レコード(CITY_ID値が市区町村表SRC_CITYに存在しない、など)。

- 21歳より若い顧客に対するビジネス・ルール(AGE > 21制約)を満たさなかった7レコード。
無効なレコードはエラー表に保存され、ターゲット表に統合されませんでした。

8.1.3.4 無効なデータの修正

無効なデータを修正するには:

1. デザイナ・ナビゲータで、「Orders Application - HSQL」モデルを展開します。

2. 「SRC_CUSTOMER」データストアを選択します。

3. 右クリックして「データ」を選択します。

4. 図8-5に示すようなデータ・エディタが表示されます。

図8-5 データ・エディタ

「データ」表で、CUSTIDが203のクライアント行を検索します。

列ヘッダーをクリックすると、表をソートできることに注意してください。顧客203が表示されない場合、メニュー・ツールバーの「データのリフレッシュ」をクリックして表示をリフレッシュします。

5. この顧客のCITY_ID値は208です。このCITY_IDはSRC_CITY表にリストされていません。これを修正するには、この顧客のCITY_ID列の値をダブルクリックします。「CITY_ID」フィールドに107と入力します。

6. [Enter]を押して、入力を有効にします。

7. 図8-6に示すようなデータ・エディタが表示されます。

図8-6 新しいCITY_ID値を含むデータ・エディタ

8. メニュー・ツールバーで、「現在の行への変更のポスト」をクリックします。

9. 「プロジェクト」アコーディオンで、次のものを選択します: 「Pop.TRG_CUSTOMER」インタフェース(「Sales Administration」モデル内)。

10. 右クリックして「実行」を選択します。これによって、次のもののみが実行されます: Pop.TRG_CUSTOMERインタフェース。

11. 「実行」ダイアログおよび「情報」ダイアログで、「OK」をクリックします。

Pop.TRG_CUSTOMERインタフェースが実行されます。

8.1.3.5 処理されたレコードの確認

処理されたレコードを確認するには:

1. オペレータ・ナビゲータで、次のもののセッション・ステップ・エディタを開きます: Pop.TRG_CUSTOMERステップ。

2. 必要に応じて、オペレータ・ナビゲータのメニュー・ツールバーで「リフレッシュ」をクリックします。

3. セッション・ステップ・エディタの「定義」タブで、TRG_CUSTOMER表のロードによって1個の挿入が生成され(これは、第8.1.3.4項「無効なデータの修正」で修正したレコード)、8個のエラーがエラー表に分離されたことが「レコード統計」セクションに表示されます。
図8-8に、セッション・ステップ・エディタの「レコード統計」セクションを示します。

図8-7 セッション・ステップ・エディタのレコード統計

8.2 実行: Pop.TRG_SALESインタフェース

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

- 統合インタフェースの実行

- オペレータ・ナビゲータでのインタフェースの実行の追跡

- 結果の解釈

8.2.1 統合インタフェースの実行

Pop.TRG_SALES統合インタフェースは、第8.1.1項「パッケージの実行」でLoad Sales Administrationパッケージによってすでに実行されています。この項では、次のものの実行方法についてのみ説明します: Pop.TRG_SALESインタフェース。

実行手順: Pop.TRG_SALES統合インタフェース:

1. デザイナ・ナビゲータで、「Sales Administration」ノード下の「インタフェース」ノードを展開します。

2. 次のものを選択します: Pop.TRG_SALESインタフェース。

3. 右クリックして「実行」を選択します。

4. 「確認」ダイアログで、「はい」をクリックします。インタフェースが保存され、「実行」ダイアログが表示されます。

5. 「実行」ダイアログでデフォルト設定のままにし、「OK」をクリックします。

6. 「セッションを開始しました」情報ダイアログが表示されます。「OK」をクリックします。

Oracle Data Integratorで実行セッションが開始されます。

8.2.2 オペレータ・ナビゲータでのインタフェースの実行の追跡

統合インタフェースの実行結果を表示するには:

1. オペレータ・ナビゲータの「セッション・リスト」アコーディオンで「すべての実行」ノードを展開します。

2. オペレータ・ナビゲータのツールバー・メニューで「リフレッシュ」をクリックして、表示されている情報をリフレッシュします。

3. 実行セッションのログ(Pop.TRG_SALESインタフェースの)の表示は、図8-8のようになります。

図8-8 Pop.TRG_SALESインタフェースのセッション・ログ

8.2.3 結果の解釈

この項では、無効なレコードの特定方法について説明します。これらは、制約を満たさず、フロー制御によって拒否されたレコードです。

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

- 処理されたレコードの数の特定

- 結果のデータの表示

- 無効なレコードと不正なデータの確認

8.2.3.1 処理されたレコードの数の特定

処理されたレコードの数を特定するには:

1. オペレータ・ナビゲータで、次のもののセッション・ステップ・エディタを開きます: Pop.TRG_SALESステップ。

2. 必要に応じて、オペレータ・ナビゲータのメニュー・ツールバーで「リフレッシュ」をクリックします。

3. セッション・ステップ・エディタの「定義」タブで、TRG_SALES表のロードによって5個の挿入が生成され、32個のエラーがエラー表に分離されたことが「レコード統計」セクションに表示されます。
図8-9に、セッション・ステップ・エディタの「レコード統計」セクションを示します。

図8-9 セッション・ステップ・エディタのレコード統計

これらの5個の挿入は、第8.1.3.4項「無効なデータの修正」で行った変更により、挿入された5行です。CUST_ID = 203の顧客のCITY_IDをSRC_CITY表にリストされているCITY_IDに変更すると、顧客203による売上がTRG_SALES表に追加されます。これらの5個の売上げ処理が図8-12で強調表示されています。

CUST_ID = 203の顧客によって、実際は7個の売上げ処理が行われたことに注意してください。これらの7個の処理は次のようにすると特定できます。

1. SRC_CUSTOMER表で、CUST_ID = 203の顧客のORDER_IDを特定します。図8-10は、この顧客に2個のORDER_ID(10と42)があることを示しています。

図8-10 CUST_ID = 203に対応するORDER_ID

2. 図8-11に示すように、SRC_ORDER_LINES表には、ORDER_ID 10と42の7個の注文明細がリストされています。

図8-11 ORDER_ID 10と42のORDER_LINES

強調表示された注文明細は同じPRODCT_IDを持ち、TRG_SALES表では、図8-12に示すように1行(23行目)にマージされています。

8.2.3.2 結果のデータの表示

Pop.TRG_SALESインタフェースはLoad Sales Administrationパッケージですでに実行されていることに注意してください。これがTRG_SALES表に62行含まれ、図8-9に示す5個の挿入のみではない理由です。

インタフェースの実行結果のデータを表示するには:

1. デザイナ・ナビゲータで、「モデル」アコーディオンおよび「Sales Administration - HSQL」モデルを展開します。

2. 「TRG_SALES」データストアを選択します。

3. 右クリックして「データの表示」を選択し、ターゲット表にデータを表示します。
「データ」を選択することでも、ターゲット表のデータを表示および編集できることに注意してください。

図8-12に示すようなデータの表示エディタが表示されます。

図8-12 TRG_SALESのデータの表示エディタ

8.2.3.3 無効なレコードと不正なデータの確認

モデルのデータストアで右クリックし、「制御」→「エラー」の順に選択すると、無効なレコードにアクセスできます。

TRG_SALESデータストアのエラー表を確認するには:

1. デザイナ・ナビゲータで、「Sales Administration - HSQL」モデルを展開します。

2. 「TRG_SALES」データストアを選択します。

3. 右クリックして「制御」→「エラー」の順に選択します。

4. 図8-13に示すようなエラー表エディタが表示されます。

図8-13 TRG_SALESのエラー表

実行したインタフェースによって、32個の無効なレコードが特定され、自動的に作成されたエラー表に分離されています。

このエラー表に、インタフェースによって次のものが拒否されたことが表示されます。

- FK_SALES_CUST制約に違反した(顧客表に存在しない顧客番号を持つ、など)31個のレコード

- FK_SALES_PROD制約に違反した(製品表に存在しない製品番号を持つ)1個のレコード

無効なレコードはエラー表に保存され、ターゲット表に統合されませんでした。

9 統合されたアプリケーションのデプロイ

この章では、Load Sales Administrationパッケージの本番環境での実行方法について説明します。

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

- 第9.1項「概要」

- 第9.2項「シナリオの作成」

- 第9.3項「シナリオの実行」

- 第9.4項「シナリオの実行の追跡」

9.1 概要

データ統合フローの自動化は、パッケージ内の様々なステップ(インタフェース、プロシージャなど)の実行を順序付け、これらの各ステップの使用準備済コードが含まれた本番シナリオを生成することで行われます。

第7章「パッケージの使用」では、自動化プロセスの最初の部分である、パッケージ内の様々なプロセスの実行の順序付けについて説明されています。

この章では、2番目の部分である、Load Sales Administrationパッケージを本番環境で自動的に実行するシナリオの生成方法について説明します。

9.2 シナリオの作成

Load Sales Administrationパッケージを実行するLOAD_SALES_ADMINISTRATIONシナリオを生成するには:

1. Load Sales Administrationパッケージ・エディタで、「シナリオ」タブに移動します。

2. 「シナリオ」ツールバー・メニューで、「シナリオの生成」をクリックします。「新規シナリオ」ダイアログが、図9-1のように表示されます。

図9-1 「新規シナリオ」ダイアログ

3. シナリオの「名前」および「バージョン」フィールドがあらかじめ設定されています。これらの値のままにし、「OK」をクリックします。

4. Oracle Data Integratorで処理が行われ、シナリオが生成されます。図9-2に示すように、新規シナリオがパッケージ・エディタの「シナリオ」タブと「Demo」プロジェクトに表示されます。

図9-2 LOAD_SALES_ADMINISTRATIONシナリオ

9.3 シナリオの実行

シナリオは複数の方法で実行できます。

- ODI Studioからのシナリオの実行

- コマンドラインからのシナリオの実行

- Webサービスからのシナリオの実行

このスタート・ガイドでは、ODI Studioからのシナリオの実行方法について説明します。コマンドラインおよびWebサービスからのシナリオの実行方法の詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のシナリオの実行に関する項を参照してください。

9.3.1 ODI Studioからのシナリオの実行

シナリオは、Oracle Data Integrator Studioのデザイナ・ナビゲータまたはオペレータ・ナビゲータから開始できます。

Oracle Data Integrator StudioからLOAD_SALES_ADMINISTRATIONシナリオを開始するには:

1. 「プロジェクト」アコーディオン(デザイナ・ナビゲータ内)または「シナリオ」アコーディオン(オペレータ・ナビゲータ内)でLOAD_SALES_ADMINISTRATIONシナリオを選択します。

2. 右クリックして「実行」を選択します。

3. 「実行」ダイアログでデフォルト設定のままにし、「OK」をクリックします。

4. 「セッションを開始しました」情報ダイアログが表示されます。「OK」をクリックします。

シナリオが実行されます。

9.4 シナリオの実行の追跡

オペレータ・ナビゲータでシナリオの実行を確認できます。第8.1.1項「パッケージの実行」で説明されているパッケージの実行時と同様の結果が得られます。

シナリオの実行レポートをデザイナ・ナビゲータで確認することもできます。

LOAD_SALES_ADMINISTRATIONシナリオの実行結果をデザイナ・ナビゲータに表示するには:

1. デザイナ・ナビゲータの「プロジェクト」アコーディオンで、「Load Sales Administration」パッケージ下の「シナリオ」ノードを展開します。

2. オペレータ・ナビゲータのツールバー・メニューで「リフレッシュ」をクリックして、表示されている情報をリフレッシュします。

3. LOAD_SALES_ADMINISTRATIONシナリオの実行セッションのログの表示は、図9-3のようになります。

図9-3 LOAD_SALES_ADMINISTRATIONシナリオのセッション・ログ

10 Oracle Data Integratorのその他の情報

この章では、Oracle Data Integratorのその他の情報を示します。

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

- 第10.1項「まとめ」

- 第10.2項「Oracle Data Integratorのその他の利用法」

- 第10.3項「関連情報」

10.1 まとめ

お疲れ様でした。これでETLプロジェクトは終了です。Oracle Data Integratorの基本の学習を完了しました

このスタート・ガイドでは、次の方法について学習しました。

- Orders Application - HSQLアプリケーションのデータ整合性ルールの定義と実装(第5章「データ品質管理の実装」)

- Orders Application - HSQLおよびParameters - FILEアプリケーションからSales Administrationデータ・ウェアハウスにデータをロードするインタフェースの作成(第6章「統合インタフェースの使用」)

- 開発物の順序付け(第7章「パッケージの使用」)

- デプロイ用のプロセスの準備(第9章「統合されたアプリケーションのデプロイ」)

10.2 Oracle Data Integratorのその他の利用法

一般的なデータ・ウェアハウジング・プロジェクトにOracle Data Integratorを使用する方法について学習しました。しかし、Oracle Data Integratorは、次に示すとおり、バッチからニアリアルタイムまであらゆる種類のデータ駆動の統合に対応しています。

- データの移行(後で旧システムと新システムの間でレプリケーションを行う場合または行わない場合)

- ポイントツーポイントのデータ統合

- データ・レプリケーション

また、このスタート・ガイドでは、Oracle Data Integratorとリレーショナル・データベースおよびファイルとの接続のみ示しました。Oracle Data Integratorは、同じツールセット内で同じ方法を使用して、ERPおよびCRM、メインフレーム、フラット・ファイル、LDAPディレクトリ、XMLデータソースなどのあらゆるデータベース・システムにアクセスし、統合することもできます。

Oracle Data Integratorは、データ、イベントおよびサービスに基づく統合を、共通の宣言的ルール主導アプローチで一元化する唯一の統合プラットフォームです。これによって、企業は、統一された単一のアクセス・モデルを使用して、情報システムの単一の表示を提示できます。

Oracle Data Integratorを使用する利点には、次のようなものがあります。

- 統一された統合のサポート: Oracle Data Integratorは、同一のインタフェースでデータ指向、イベント指向およびサービス指向の統合をサポートする唯一の統合アプリケーション・ソフトウェアです。この固有の機能により、ITチームは、データ量やレイテンシの要件に関係なく統合のあらゆるニーズ(バッチおよびリアルタイム、非同期および同期)に対応できます。

- 生産性の向上および短期間での習得: データ指向、イベント指向およびサービス指向の各統合メカニズムに関係なく、Oracle Data Integrator全体で、宣言的ルール主導のアプローチが共有されます。プラットフォーム全体で共通のユース・モデルとユーザー・インタフェースを使用するため、習得時間が短縮され、生産性が大幅に向上します。

- 再使用可能な共有メタデータ: Oracle Data Integratorのすべてのコンポーネントと完全に統合された単一のメタデータ・リポジトリを使用するため、統合プロセスの一貫性が保証されます。また、リポジトリによって、プロセス全体でのデータ変換およびデータ検証の宣言的ルールの再利用性が高まります。

- 複数のアプリケーションのサポート: Oracle Data Integratorは、データ指向、イベント指向およびサービス指向のメカニズムを組み合せて実装される様々なの統合プロジェクト(ETL、データの移行、マスター・データ管理、ビジネス・アクティビティ監視(BAM)、ビジネス・プロセス管理(BPM)、ビジネス・プロセス・リエンジニアリング(BPR)およびWebサービス統合)に非常に適しています。

10.3 関連情報

Oracle Data Integratorを使用した統合プロジェクトの作成については、表10-1に示すガイドで詳細を得ることができます。

表10-1 Oracle Data Integratorのドキュメント

ドキュメント

説明

『Oracle Fusion Middleware Oracle Data Integratorインストレーション・ガイド』

インストールの前提条件やトラブルシューティングなどのOracle Data Integratorのインストールに関する情報を示します。

Oracle Fusion MiddlewareのOracle Data Integratorアップグレード・ガイド

Oracle Data Integratorの11gへのアップグレード情報を示します。

『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』

統合プロジェクトにOracle Data Integratorを使用する意向の開発者向けのガイドラインを示します。

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

Oracle Data Integratorナレッジ・モジュールとテクノロジ、および統合プロジェクトでのその使用方法について説明します。

『Oracle Fusion Middleware Oracle Data Integratorナレッジ・モジュール開発者ガイド』

Oracle Data Integratorのナレッジ・モジュールの開発方法について説明します。

Oracle Data Integratorのドキュメントはすべて、次に示すOracle Technology NetworkのOracle Data Integratorのドキュメント・ページにあります。

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

Oracle Technology NetworkのOracle Data Integratorホーム・ページには、Oracle Data Integratorのその他の機能について知ることができる次のようなリソースも用意されています。

- 2分間製品ツアーの表示。このビューレットでは、ODIの主な機能の概要が示されます。

- Oracle by Exampleシリーズ: ODIの表示。Oracle by Example (OBE)シリーズでは、Oracle Data Integrator Suiteを使用して様々なタスクを行う方法について、段階を追って手順を示します。

Oracle Data Integrator 11gで導入された新機能の詳細は、『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』およびリリース・ノートの「Oracle Data Integratorの新機能」を参照してください。

Oracle Data Integratorをお選びいただき、ありがとうございます。

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