Oracle® Fusion Middleware Oracle Data Integrator接続およびナレッジ・モジュール・ガイド 12c (12.2.1.2.0) E82656-01 |
|
前 |
次 |
この章では、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には、表23-1に示されている、TimesTenデータを処理するためのナレッジ・モジュール(KM)が用意されています。これらのKMではTimesTen固有の機能が使用されます。TimesTenデータベースでは、汎用SQL KMを使用することもできます。詳細は、第4章「汎用SQL」を参照してください。
表23-1 TimesTen KM
ナレッジ・モジュール | 説明 |
---|---|
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)を使用します。詳細は、23.7.1.1項「TimesTenからのデータのロード」を参照してください。