Oracle Data Integratorのプロジェクトおよびインタフェースの作成: リレーショナル表からフラット・ファイルへのエクスポート

このチュートリアルでは、Oracle Data Integratorでプロジェクトおよびインタフェースを作成し、リレーショナル表をフラット・ファイルへエクスポートする手順について説明します。

 

約40分

トピック

このOBEチュートリアルでは、以下のトピックについて説明します。

このアイコンの上にカーソルを置くと、すべてのスクリーンショットがロードし、表示されます。 (警告: すべてのスクリーンショットが同時にロードされるため、ご使用のインターネット接続によっては応答時間が遅くなる場合があります。)

注: 各手順に関連したスクリーンショットのみを表示する場合は、それぞれの手順 にある各アイコンの上にカーソルを置いてください。

スクリーンショットは、ご使用の環境を反映したものではありません。 Oracle Data Integratorの特定の機能がどこにあるのかをわかりやすくするために提供されています。

概要

Oracle Data Integratorを使用した一般的なタスクとして、リレーショナル表からデータをエクスポートし、このデータをフラット・ファイルへロードすることが あります。 このチュートリアルでは、リレーショナル表をフラット・ファイルへエクスポートするためのプロジェクトおよびインタフェースの作成手順について説明しま す。 また、インタフェースを実行して、Oracle Data Integrator Operator内での実行を確認します。

 

トピック・リスト に戻る

シナリオ

Lindaは、Global Enterpriseのデータベース管理者です。 社内のデータベースの管理やさまざまなリソースに関連するタスクの統合を担当しています。 具体的には、データのロード、変換、および検証をおこなっています。 まず、Lindaは新しいマスター・リポジトリと作業リポジトリを作成しました。 次に、リレーショナル表からデータをエクスポートし、このデータをフラット・ファイルへロードするためのプロジェクトおよびインタフェースを作成する必要 があります。

トピック・リスト に戻る

前提条件の確認

タスクを開始する前に、システム環境が以下の前提条件を満たしていることを確認してください。

ソフトウェア要件

タスクを開始する前に、システム環境が以下の前提条件を満たしていることを確認してください。

ソフトウェア要件

Oracle Database 10g XEとOracle Data Integrator 10g(10.1.3.4)のサービスおよびコンポーネントが起動していない場合は、それらを起動します。

トピック・リストに戻る

 

Oracle Data Integratorでの新規プロジェクトの作成


Oracle Data Integratorで新規プロジェクトを作成するには、以下の手順を実行します。

1.

スタート」→「すべてのプログラム」 →「Oracle」→「Oracle Data Integrator」→「Designer」 をクリックして、Oracle Data Integrator Designerを起動します。 Login NameにWORKREPが選択されていない場合は、ドロップダウン・リストから「WORKREP」 を選択します。 User名にSUPERVISORを、PasswordにSUNOPSISを入力します。 「OK」 をクリックしてログインします。

 

2.

表示されたウィンドウで、「Projects」タブをクリックし、Insert Projectボタン「」をク リックして、新規プロジェクトを追加します。

 

3.

表示された画面で、NameフィールドにODIexp_RT_FFと入力して、プ ロジェクト名を指定します。 Codeフィールドは自動的に入力されます。 「OK」をクリックします。 プロジェクトのツリー・ビューに、新しく作成されたプロジェクトODIexp_RT_FFが表示されます。 これで、新規Oracle Data Integratorプロジェクトの追加は完了です。

 

トピック・リストに戻る

Oracle Data Integratorソース・データ・ストア用の新規RDBMSスキーマの作成

Oracle Data Integratorソース・データ・ストアをホストするには、スキーマ(ODI_STAGE1)を作成する必要があります。 Oracle Data Integratorデータ・ストア用のRDBMSスキーマを新しく作成するには、以下の手順を実行します。

1.

スタート」→「すべてのプログラム」→「Oracle Database 10g Express Edition」→「Go to Database Home Page」を選択し て、Oracle Database XEのホームページを開きます。 ログイン画面が表示されます。 Systemと して、Oracle Database XEにログインします。 デフォルトのパスワードはoracle1です。 「Login」 をクリックします。

 

 

2.

Oracle Database Express Edition Home画面で、SQLド ロップダウン・メニューを開き、「SQL Commands」→「Enter Command」 を選択します。

 

 

3.

スキーマを作成するには、次のSQLコマンドを実行します。

create user <MY_SCHEMA> identified by <MY_PASS>
default tablespace <MY_TBS> temporary tablespace <MY_TEMP>;
grant connect, resource to <MY_SCHEMA>;


ここで、
<MY_SCHEMA>は、作成するスキーマの名前です。
<MY_PASS>は、そのパスワードです。
<MY_TBS>は、データを格納するOracle表領域です。
<MY_TEMP>は、デフォルトの一時表領域です。

ユーザーを作成するために、次のコマンドを入力します。 「Run」をクリックします。

create user ODI_STAGE1 identified by password 
default tablespace users temporary tablespace temp;

 

4.

ユーザーODI_STAGE1が正しく作成されたことを確認します。

 

 

5.

次のSQLコマンドを実行して、新しく作成したユーザーに接続権限を付与します。

grant connect, resource to ODI_STAGE1;

SQL文が正しく処理されたことを確認します。

 

トピック・リストに戻る

Oracle Data Integratorインタフェースで使用する新規Oracle Data Integratorソース・データ・ストアの作成

次のステップでは、ソース・モデル用のOracle Data Integratorデータ・ストアを新しく作成します。 このデータ・ストアは、Oracle Data Integratorインタフェース内で使用されます。 新規Oracle Data Integratorソース・データ・ストアを作成するには、以下の手順を実行します。

1.

スタート」→「すべてのプログラム」→「Oracle Database 10g Express Edition」→「Go to Database Home Page」を選択し て、Oracle Database XEのホームページを開きます。 ODI_STAGE1と して、Oracle Database XEにログインします。 このユーザーのパスワードはpasswordです。 「Login」をクリックします。

 

3.

Oracle Database Express Edition Home画面で、SQLドロッ プダウン・メニューを開き、「SQL Commands」→「Enter Command」 を選択します。 次のSQLコマンドを実行して、表を作成します。

CREATE table "SRC_SALES_PERSON" (
"SALES_PERSON_ID" NUMBER(8,0) NOT NULL,
"FIRST_NAME" VARCHAR2(80),
"LAST_NAME" VARCHAR2(80),
"DATE_HIRED" VARCHAR2(80),
"DATE_UPDATED" DATE NOT NULL,
constraint "TRG_SALES_PERSON_PK" primary key("SALES_PERSON_ID")
)
/

4.

SRC_SALES_PERSON表にデータを移入するため、SQL Commandsウィンドウへ移動して、次の表に示されたコマンドを入力します。 「RUN」をク リックしてから、SQL文が正しく処理されたことを確認します。

注:このOBEで提供されているテキスト・ファイルSRC_SALES_PERSON_DATAか ら、スクリプトをコピーすることもできます。 このファイルをダウンロードするには、こ ちらをクリックしてください。

begin
insert into ODI_STAGE1.SRC_SALES_PERSON values
(11,'Andrew','Andersen','22/02/1999',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(12,'John','Galagers','20/04/2000',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(13,'Jeffrey','Jeferson','32422',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(20,'Jennie','Daumesnil','28/02/1988',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(21,'Steve','Barrot','24/09/1992',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(22,'Mary','Carlin','14/03/1995',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(30,'Paul','Moore','36467',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(31,'Paul','Edwood','18/03/2003',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(32,'Megan','Keegan','29/05/2001',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(40,'Rodolph','Bauman','29/05/2000',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(41,'Stanley','Fischer','37233',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(42,'Brian','Schmidt','25/08/1992',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(50,'Anish','Ishimoto','30/01/1992',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(51,'Cynthia','Nagata','28/02/1994',sysdate);
insert into ODI_STAGE1.SRC_SALES_PERSON values
(52,'William','Kudo','28/03/1993',sysdate);
end

5.

次のSQL文を実行して、表SRC_SALES_PERSONにデータが正しく移入されたことを確 認します。

注:次のステップに進む前に、データが正しくロードされていることを確認してください。

select* from ODI_STAGE1.SRC_SALES_PERSON

 

 

トピック・リストに戻る

新規Oracle Data Integratorソース・データ・サーバーおよび物理スキーマの作成

次のステップでは、Oracle Data Integratorソース・データ・サーバーと物理スキーマを新しく作成します。 Oracle Data Integratorソース・データ・サーバーと物理スキーマを作成するには、以下の手順に従います。

1.

スタート」→「すべてのプログラム」 →「Oracle」→「Oracle Data Integrator」→「Topology Manager」を選択して、Oracle Data Integrator Topology Managerを起動します。 「Master Repository」を選択します。 User名とPasswordはデフォルトで、SUPERVISORSUNOPSISに 設定されています。 「OK」をクリックしてログインします。

注:マスター・リポジトリは、OBE『ODIのマスターおよび作業リポジトリの作成 および接続』で作成しておく必要があります。 このOBEにアクセスするには、こちらをクリックしてください。

 

2.

Topology Managerの「Physical Architecture」タブをク リックします。 「Technologies」を開き、「Oracle」を右ク リックして、「Insert Data Server」を選択します。

 

4.

Data Server: Newウィンドウで、次の表に示した値を入力します。 「JDBC」 タブをクリックします。

パラメータ
Name ODI_STAGE1
Instance / dblink (Data Server) localhost
User ODI_STAGE1
Password password

 

5.

JDBC Driverのアイコン「」をク リックします。 「Oracle JDBC Driver」を選択します。 「OK」をクリックしま す。 URLのアイコン「」をク リックし、Oracle Database XEのURLとして、jdbc:oracle:thin:@localhost:1521:XEを 入力します。 「Test」をクリックします。 再度、「Test」をクリックし ます。

注:

  • コピーした値をJDBC Urlフィールドに貼り付けないでください。 URL文字列が正しく入力されない場合があります。
  • 使用しているRDBMSに合わせて、適切なドライバとURLを入力してください。

6. 接続が成功したことを確認したら、「OK」 をクリックします。 再度「OK」をクリックします。 Physical Schema画 面が表示されます。

7.

Physical Schema画面で、Schema (Schema)フィー ルドとSchema (Work Schema)フィールドの両方に「ODI_STAGE1」 を選択します。 「Context」タブをクリックします。 Add new contextボ タン「」をク リックします。 Logical Schemaとして、「ODI_STAGE1」を選択します。 「OK」 をクリックします。

トピック・リストに戻る

新規Oracle Data Integratorソース・モデルの作成

ここでは、Oracle Data Integratorインタフェース内で使用されるOracle Data Integratorソース・モデルを新しく作成します。 新規Oracle Data Integratorソース・モデルを作成するには、以下の手順を実行します。

1.

スタート」→「すべてのプログラム」 →「Oracle」→「Oracle Data Integrator」→「Designer」 を選択して、Oracle Data Integrator Designerを開きます。 Oracle Data Integrator Login画面で、Login Nameとして作業リポジトリ「WORKREP」を選択します。 「OK」 をクリックします。

2.

Oracle Data Integrator Designerの左側のパネルで、「Models」 タブをクリックして、Insert Model Folderアイコン「」をク リックします。 次の画面で、フォルダ名としてRDBMS1を入力します。

3.

RDBMS1」モデルを右クリックして、「Insert Model」を選択しま す。 次の画面で、以下の表に示した値を入力します。 「Reverse」タブをクリックします(Reverseボタ ンをクリックしないでください)。

パラメータ
Name Oracle ODI_STAGE1
Technology Oracle
Logical Schema ODI_STAGE1

 

4.

Reverseタブで、Contextに「Global」を指 定します。 「Reverse」ボタンをクリックします。 次の画面が表示されます。 「Yes」 をクリックして、「OK」をクリックします。

5.

新しく作成した「Oracle RDBMS1」モデル・フォルダを開き、「Oracle ODI_Stage1」モデルを開きます。 データ・ストアSRC_SALES_PERSONが正 しくリバースされたことを確認します。

 

トピック・リストに戻る

フラット・ファイル・ ターゲット用の新規Oracle Data Integratorモデルの作成

フラット・ファイル・ターゲット・データ・ストア用の新規モデルを作成するには、以下の手順を実行します。

1.

Oracle Data Integrator Designerの左側のパネル内で「Models」 タブをクリックします。 「Insert Model Folder」アイコンをクリックします。 画面が表示されたら、NameにFlat Filesと入力します。 「OK」を クリックします。

 

 

2.

Flat Files」モデル・フォルダを右クリックして、「Insert Model」を選択します。

 

3.

次の画面で、以下の表に示した値を入力します。 「Reverse」タブをクリックします (Reverseボタンをクリックしないでください)。 「Global」コンテキストを選択します。 「OK」 をクリックします。

パラメータ
Name Flat Files
Technology File
Logical Schema FILE_DEMO_SRC

 

4.

このOBEでは、Oracle Data Integratorのインストールに同梱されているサンプル・ファイルを使用します。 ODI_HOME\demo\fileディ レクトリへ移動します。 SRC_SALES_PERSON.txtファイルをコピーし、次のスクリーンショットに 示すように、ファイル名をTRG_SALES_PERSON.txtに変更します。

トピック・リストに戻る

Oracle Data Integratorインタフェースで使用する新規Oracle Data Integratorターゲット・データ・ストアの作成

新規Oracle Data Integratorターゲット・データ・ストアを作成するには、以下の手順を実行します。

1.

Flat Files」フォルダを開いて、新しく作成した「Flat Files」モデルを右クリックし、「Insert Datastore」を選択します。 画面が表示されたら、NameTRG_SALES_PERSONと入力します。 Resource Nameフィールドの横にあるボタン「」 をクリックします。 「TRG_SALES_PERSON.txt」ファイルを選択し、「Open」 をクリックします。

 

2.

Files」タブをクリックします。 File Formatと して「Fixed」を選択し、「Columns」タブをクリックします。


3.

Columnsタブで、「Reverse」ボタンをクリックし ます。 次の画面が表示されます。 「Yes」をクリックします。 Column Setup Wizardが表示されます。

4.

マウスをドラッグし、それぞれの列の開始位置をクリックすると、ウィザードによって各列がマークされます。

5.

すべての列がマークされたら、各列のデータをクリックし、次のスクリーンショットに示すように、Column NameDatatypeを指定します。 各列の名前およびデータ型については、次の表を参照してください。 完了したら、「OK」をクリックします。

名前 データ型
C1 SALES_PERSON_ID numeric
C2 FIRST_NAME string
C3 LAST_NAME string
C4 DATE_HIRED string

 

6.

列は、以下のようになります。 「OK」をクリックして、モデルを保存します。 「Flat Files」→「Flat Files」→「TRG_SALES_PERSON (TRG_SALES_PERSON.txt)」→「Columns」の順に開き、列を表示しま す。 「Oracle RDBMS1」→「Oracle ODI_STAGE1」 →「SRC_SALES_PERSON」→「Columns」の順にフォルダを開 きます。 ソース・モデルとターゲット・モデルを確認します。

注:TRG_SALES_PERSONの列が作成されていない 場合は、新しく作成したデータ・ストアを編集します。 「TRG_SALES_PERSON」データ・ストアを右ク リックして「Edit」を選択し、ステップ2~5を繰り返します。

トピック・リストに戻る

Oracle Data Integratorを使用した新規インタフェースの作成

新規インタフェースを作成するには、以下の手順を実行します。

1.

Oracle Data Integrator Designerで、「Projects」 タブをクリックします。 「ODIexp_RT_FF」プロジェクトを開いて、「First Folder」を開きます。 「Interfaces」を右クリックして、「Insert Interface」をクリックします。

 

 

2.

次の画面で、インタフェース名としてINTexp_RT_FFを入力します。 「Staging Area Different From Target」チェック・ボックスを選択し、ドロップダウン・メニューから「ODI_STAGE1」 を選択します。 「Diagram」タブをクリックします。 Help画面が表 示されたら、「OK」をクリックします。

注:この例では、ターゲット・ファイルではなくODI_STAGE1(ソース)をステージング領域 として使用します。


 

3.

Models」タブをクリックし、ソースおよびターゲットをOracle Data Integrator Designerにドラッグ・アンド・ドロップします。 Oracle RDBMS1から「SRC_SALES_PERSON」 データ・ストアをドラッグし、Sourcesコンテナにドロップします。 Flat Filesモ デルから「TRG_SALES_PERSON.txt」データ・ストアをドラッグし、Target Datastoreコンテナへドロップします。 "Do you want to perform and Automatic Mapping?"というプロンプトが表示されたら、「Yes」をクリックし ます。 Diagramタブは、次のように表示されます。 「Flow」タブをクリックします。

 

4.

このインタフェースでは、リレーショナル表をフラット・ファイル・ターゲットへエクスポートします。 ここで必要なナ レッジ・モジュールは、IKM SQL to File Appendです。 ナレッジ・モジュールをインポートするには、左側のパネルで「Project」タブをクリックし、「Knowledge Modules」フォルダを開きます。 「Loading (LKM)」を右クリックし、「Import Knowledge Modules」を選択します。

注:この例では、汎用のSQLナレッジ・モジュールを使用しますが、 RBMSテクノロジーに固有のナレッジ・モジュールを使用しても構いません。

 

5.

以下のスクリーンショットに示すように、次の画面で、File import directoryフィー ルドに..\impexpと入力します。 インポートするファイルが、Select the file(s) to importウィンドウに表示されます。 「IKM SQL to File Append」 を選択します。 「OK」をクリックします。

6.

Integration」フォルダを開き、インポートしたナレッジ・モジュールが、以下のように ツリー・ビューに表示されることを確認します。 「Flow」タブをクリックします。

 

7.

Target (FILE_GENERIC)」をクリックします。 これにより、ターゲットのプロパティが下部に表示されます。 IKMフィールドのドロップダウン・メニューをクリッ クし、「IKM SQL to File Append」を選択します。 下のスクリーンショットに示すように、IKMオプションTRUNCATEYesに 設定します。 「Apply」をクリックします。

 

8.

Execute」をクリックして、インタフェースをテストします。 次の画面が表示されます。 デフォルト値のままにして、「OK」をクリックします。次の画面で、「OK」 をクリックします。

9.

インタフェースが正しく実行されたことを確認するには、Oracle Data Integrator Operatorを開く必要があります。 メニューのOracle Data Integrator Operatorアイコン「」をクリックし、 Oracle Data Integrator Operatorを起動します。 Oracle Data Integrator Operatorで、「Date」→「Today」→「INTexp_RT_FF」 →「Steps」→「INTexp_RT_FF」 の順に開き、各ステップの実行結果を確認します。 「Step 3」をダブルクリックし、「Execution」 タブをクリックします。 ターゲット・ファイルに挿入された行数を確認します。 「OK」をクリックします。

10.

アイコン「」をクリックし て、Oracle Data Integrator Designerに戻ります。 「OK」をクリックして、新しく 作成したインタフェースを保存します。 これにより、Projectsツリー構造にインタフェースが表示されます。

注:Unlocking Objectウィンドウが表示された ら、自動的にオブジェクトをアンロックするよう、「Yes」をクリックします。

これで、Oracle Data IntegratorプロジェクトOracle Data Integratorインタフェースの作成は完了しました。 また、Oracle Data IntegratorインタフェースのINT_RT_FFを実行して、リレーショナル表をフラット・ファイル・ター ゲットにエクスポートしました。

トピック・リストに戻る

 

このレッスンで学習した内容は次のとおりです。

トピック・リストに戻る

 

このOBEチュートリアルについての質問は、OBE Discussion Forumに投稿してください。

トピック・リストに戻る

このアイコンの上にカーソルを置くと、すべてのスクリーンショットが 非表示になります。