Oracle® Fusion Middleware Oracle Data Integrator接続およびナレッジ・モジュール・ガイド 12c (12.1.2) E49825-03 |
|
![]() 前 |
![]() 次 |
この章では、Oracle Data IntegratorでのOracle TimesTen In-Memory Databaseの使用方法について説明します。
この章には次の項が含まれます:
Oracle TimesTen In-Memory Database (TimesTen)には、リアルタイムのデータ管理機能が備えられています。業界標準インタフェースを介してアクセスする、メモリーが最適化されたアーキテクチャ上に構築された、アプリケーション層データベースおよびトランザクション管理が用意されています。オプションのデータ・レプリケーションおよびOracleキャッシュによって製品を拡張すると、複数ノードおよび複数層構成が可能になり、これにより、ネットワーク接続され、大容量のメモリーを利用できる最新のコンピューティング・プラットフォームが持つパフォーマンスを最大限に活用できます。
Oracle TimesTen In-Memory Databaseは、メモリーが最適化されたリレーショナル・データベースです。TimesTenは、アプリケーション層にデプロイされ、標準のSQLインタフェースを使用して、物理メモリーに完全に格納されたデータベースで動作します。インメモリー・データベースの高可用性は、リアルタイム・トランザクション・レプリケーションを介して提供されます。
TimesTenでは、JDBC (Java Database Connectivity)およびPL/SQL (Oracle procedural language extension for SQL)を含む、様々なプログラミング・インタフェースがサポートされています。
TimesTenの概念は、次のようにOracle Data Integratorの概念にマップされます。1つのOracle TimesTen In-Memory Databaseインスタンスは、Oracle Data Integratorの1つのデータ・サーバーに対応します。このデータベース・インスタンス内で、データベースと所有者のペアが1つのOracle Data Integrator物理スキーマに対応します。1つのデータベース内の一連の関連オブジェクトは1つのデータ・モデルに対応し、各表、ビューまたはシノニムは、その属性、列および制約とともに、ODIデータストアとして示されます。
Oracle Data Integratorでは、Java Database Connectivity (JDBC)を使用してOracle TimesTen In-Memory Database ODBC DSNに接続します。
Oracle Data Integratorには、TimesTenデータを処理するためのナレッジ・モジュール(KM)が用意されています。これらのリストを表18-1に示します。これらのKMではTimesTen固有の機能が使用されます。TimesTenデータベースでは、汎用SQL KMを使用することもできます。詳細は、第4章「汎用SQL」を参照してください。
表18-1 TimesTenナレッジ・モジュール
ナレッジ・モジュール | 説明 |
---|---|
IKM TimesTen Incremental Update (MERGE) |
増分更新モードでTimesTen JDBCドライバを使用して、ステージング領域からTimesTenのターゲット表にデータを統合します。たとえば、存在しない行は挿入され、既存の行は更新されます。 |
LKM SQL to TimesTen |
TimesTen JDBCドライバを使用して、ANSI SQL-92ソースからTimesTenのステージング表にデータをロードします。 |
LKM File to TimesTen (ttBulkCp) |
ttBulkCpユーティリティを使用して、ファイルからTimesTenのステージング表へデータをロードします。 |
TimesTenナレッジ・モジュールの使用を開始する前に、この項の情報を必ず読んでください。
インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。
サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。
http://www.oracle.com/technology/products/oracle-data-integrator/index.html
TimesTenの一部のナレッジ・モジュールでは、ttBulkCpユーティリティが使用されます。
これらのナレッジ・モジュールには、次の要件および制限が適用されます。
ジョブを実行するODIエージェントのホストには、TimesTen Clientユーティリティがインストールされている必要があります(TTBULKCP)。
データ変換は、ステージング領域またはターゲットで実行される必要があります。
エージェント・マシン上に、次の正しいODBCエントリが作成される必要があります。
クライアントDSN: クライアントDSNにより、リモート・データベースが指定され、TimesTen Clientが使用されます。クライアントDSNは、ホスト名とDSNのペアを指定することにより、間接的にTimesTenデータベースを参照します。ホスト名はTimesTen Serverが実行されているサーバー・マシンを表し、DSNはサーバー・ホスト上のTimesTenデータベースを指定するサーバーDSNを表します。
サーバーDSN: サーバーDSNは常にシステムDSNとして定義され、クライアント・アプリケーションがアクセスする、そのサーバー上の各データベースのサーバー・システム上で定義されます。サーバーDSNの形式および属性は、Data Manager DSNのものと似ています。
この項では、TimesTenデータベースに接続するための要件をリストします。
Microsoft Excelデータにアクセスするための要件は次のとおりです。
TimesTen ODBCドライバのインストール
Microsoft Excelワークブックにアクセスできるのは、ODBC接続を使用した場合のみです。使用するシステムに、TimesTen用ODBCドライバがインストールされている必要があります。
TimesTen ODBCデータソースの宣言
ODBCデータソースは、ODIからアクセスするそれぞれのMicrosoft Excelワークブック(.xls
ファイル)に対して定義する必要があります。ODBCデータソースは、Microsoft ODBCデータソース・アドミニストレータで作成します。データソースの作成方法は、Microsoft Windowsオペレーティング・システムのドキュメントを参照してください。
JDBCドライバ
Oracle Data Integratorでは、TimesTen JDBCドライバを使用してTimesTenデータベースに接続します。このドライバをOracle Data Integratorのdriversディレクトリにインストールする必要があります。
ODIエージェント
ジョブを実行するODIエージェントには、TimesTen JDBCドライバおよびODBCドライバがインストールされ、構成されている必要があります。
トポロジの設定には次が含まれます。
TimesTenデータ・サーバーはTimesTenデータベースに対応します。
『Oracle Data Integrator開発者ガイド』のデータ・サーバーの作成に関する項に記載されている標準の手順で、TimesTenテクノロジ用データ・サーバーを作成します。この項では、TimesTenデータ・サーバーの定義に関する必須または固有のフィールドのみについて説明します。
「定義」タブ:
名前: Oracle Data Integratorに表示されるデータ・サーバーの名前
サーバー: データ・サーバーの物理名
ユーザー/パスワード: TimesTenユーザーおよびそのパスワード
「JDBC」タブ:
JDBCドライバ: org.TimesTen.Driver
JDBC URL: jdbc:timesten:direct:dsn=<DSNname>
DSNname
は、エージェントを実行するマシン上で構成されているODBCデータソースの名前です。
注意: Oracle Data Integratorが書込みアクセス権を持つのは、URLで指定されたデータベースのみです。 |
『Oracle Data Integrator開発者ガイド』の物理スキーマの作成に関する項に記載されている標準の手順で、TimesTen物理スキーマを作成します。
『Oracle Data Integrator開発者ガイド』の論理スキーマの作成に関する項に記載されている標準の手順で、この物理スキーマ用の論理スキーマを作成し、特定のコンテキストで関連付けます。
TimesTenデータベースを使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Data Integrator開発者ガイド』の「統合プロジェクトの作成」を参照してください。
TimesTenでの作業を開始するにあたり、使用するプロジェクトに次のナレッジ・モジュールをインポートすることをお薦めします。
CKM SQL
IKM SQL Control Append
IKM TimesTen Incremental Update (MERGE)
LKM SQL to TimesTen
LKM File to TimesTen (ttBulkCp)
RKM SQL (Jython)
この項には次のトピックが含まれます:
『Oracle Data Integrator開発者ガイド』のモデルの作成に関する項に記載されている標準の手順で、TimesTenモデルを作成します。
TimesTenでは、JDBCドライバの機能のみを使用する標準のリバース・エンジニアリング、およびカスタマイズされたリバース・エンジニアリングの両方がサポートされています。
通常は、標準のJDBCリバース・エンジニアリングを使用して作業を開始することを検討してください。
TimesTen JDBCドライバの特異性によって、標準のJDBCリバース・エンジニアリング・プロセスで問題が発生した場合は、カスタマイズされたリバース・エンジニアリングへの切替えを検討してください。
標準のリバース・エンジニアリング
TimesTenで標準のリバース・エンジニアリングを実行するには、『Oracle Data Integrator開発者ガイド』のモデルのリバース・エンジニアリングに関する項に記載されている通常の手順を行います。
カスタマイズされたリバース・エンジニアリング
RKMを使用して、TimesTenでカスタマイズされたリバース・エンジニアリングを実行するには、『Oracle Data Integrator開発者ガイド』のモデルのリバース・エンジニアリングに関する項に記載されている通常の手順を行います。この項では、TimesTenテクノロジ固有のフィールドのみについて説明します。
TimesTenモデルの「リバース・エンジニアリング」タブでKM: RKM SQL (Jython).<project name>
を選択します。
リバース・エンジニアリングによって、表、ビュー、属性、キーおよび外部キーが戻されます。
Oracle Data Integratorには、TimesTen表で定義された制約と照合してデータの整合性をチェックするためのCKM SQLが用意されています。詳細は、『Oracle Data Integrator開発者ガイド』のフロー制御および静的制御に関する項を参照してください。
詳細は、第4章「汎用SQL」を参照してください。
マッピングのソース、ステージング領域またはターゲットとしてTimesTenを使用できます。
マッピングまたはチェック用に選択したKMによって、このマッピングまたはチェックの機能およびパフォーマンスが決まります。この項に示す推奨事項は、TimesTenデータ・サーバーに関連する様々な状況でのKMの選択に役立ちます。
マッピングのソース、ターゲットまたはステージング領域としてTimesTenを使用できます。「ロード・ナレッジ・モジュール」タブでの、TimesTenと別のタイプのデータ・サーバー間でデータをロードするためのLKMの選択は、マッピングのパフォーマンスに関してきわめて重要です。
汎用SQL KMまたは関係するもう一方のテクノロジ固有のKMを使用して、TimesTenデータベースからターゲットまたはステージング領域のデータベースへデータをロードします。
TimesTenステージング領域からTimesTenの表にデータを抽出するには、IKM TimesTen Incremental Update (MERGE)を使用します。詳細は、18.7.1.1項「TimesTenからのデータのロード」を参照してください。