ODI 11gR1 SDK Public API
http://download.oracle.com/docs/cd/E14571_01/apirefs.1111/e17060/toc.htm
余談ですが、ODI common format designer(以下のURLを参照してください) には、指定されたオブジェクトのような移行方法があるのですが、SDKを使うことで、もっと制御できるようになります。
ODIEXPERTS
Using one of ODI’s lesser-known secrets: the Common Format Designer (CFD) – by Craig Stewart
http://odiexperts.com/using-one-of-odis-lesser-known-secrets-the-common-format-designer-cfd-by-craig-stewart
説明のため、簡単なインターフェースコンストラクションアクセラレータを作成しました。このアクセラレータはODIのインターフェースをインターフェース名、ソース、ターゲットを定義する制御ファイルから生成するもので、デモ目的であれば、簡単かつ良いサンプルでしょう。これは以下のURLからダウンロード可能です。
http://blogs.oracle.com/warehousebuilder/resource/interfaceAccelerator.java
Javaのコードをご覧になっているなら、非常に基本的なものです。文字通り12行のコードです。以下の図は、ODI 11g SDKを使っているinterfaceAcceleratorというJavaプログラムが、接続の詳細情報や、ソースをターゲットデータストアへのマッピングを指定している制御ファイルを入力情報として使用していることを説明するものです。
コードを呼び出すときに下記のコマンドライン引数と標準入力からインターフェース制御ファイルを渡します。
java –classpath <cp> interfaceAccelerator <url> <driver> <schema> <pwd> <workrep> <odiuser> <odiuserpwd> <project> <folder> < <control_file>制御ファイルは標準入力から提供されるCSVファイルで、次のような構造になっています。
- インターフェース名, シースモデル,ソーステーブル,ターゲットモデル,ターゲットテーブル
- …
java –classpath <cp> interfaceAccelerator jdbc:oracle:thin:@localhost:1521:ora112 oracle.jdbc.OracleDriver ODI_MASTER mypwd WORKREP1 SUPERVISOR myodipwd STARTERS SDK < icontrol.csvインターフェースはSDKフォルダに作成され、プロジェクトコードはSTARTERSフォルダに作成されます。上の例で使っているicontrol.csvファイルは以下のようです(このフォーマットはあくまでもこの単純なデモプログラムのためのものです)。
- INTFC1,SCOTT,EMP,STG_MODEL,STG_EMP
- INTFC2,SCOTT,DEPT,STG_MODEL,STG_DEPT
- INTFC3,SCOTT,BONUS,STG_MODEL,STG_BONUS
このアクセラレータを実行している間に生成したインターフェースは以下のようになります。テーブル間のマッピングは類似の名前を持つ列同士をマッピングしていて、デフォルトのKMを使ってフローが構成されています。
原文はこちら。
http://blogs.oracle.com/warehousebuilder/entry/odi_11g_interface_builder_accelerator
0 件のコメント:
コメントを投稿