TimesTen接続オプション

TimesTenでは、ユーザーが自身のアプリケーションでのパフォーマンスと機能性とのバランスを最適にできるように、直接接続オプション、ドライバ・マネージャ接続オプションおよびクライアント/サーバー接続オプションがサポートされています。

アプリケーションから見ると、直接接続、ドライバ・マネージャ接続またはクライアント/サーバー接続かにかかわらず、TimesTen APIは同じです。

アプリケーションは、次のいずれかの方法でTimesTenデータベースに接続できます。

TimesTen Classicデータベースへの接続の詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』TimesTenデータベースの管理TimesTenクライアントおよびサーバーの使用およびODBCドライバおよびJDBCドライバを使用したTimesTenへの接続を参照してください。

TimesTen Scaleoutの使用によるグリッドへの接続の詳細は、『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』データベース接続およびデータベースへの接続を参照してください。

直接接続

直接接続を使用するアプリケーションは、データベースと同じシステム上で実行されます。直接接続では、ODBCドライバによって、TimesTenデータベースの共有メモリー領域がアプリケーションのプロセス・アドレス領域にアタッチされます。

アプリケーションは、ダイレクト・ドライバを使用して、データベースのメモリー・イメージにアクセスします。どのような種類のプロセス間通信(IPC)も必要ないため、直接接続は非常に高速なパフォーマンスを実現し、TimesTenデータベースにアクセスするアプリケーションにとって適した接続方法です。

直接接続を使用するアプリケーションは、データベースを提供するTimesTenインスタンスの環境で実行する必要があります。TimesTen Scaleoutを使用する場合、アプリケーションは任意のデータ・インスタンスで実行できます。

ODBCダイレクト・ドライバは、ODBCおよびTimesTenルーチンのライブラリであり、データベース管理に使用されるデータベース・エンジンを実装します。他のAPIを使用するアプリケーションでは適切なAPIライブラリが使用され、続いてTimesTen ODBCドライバが使用されます。

クライアント/サーバー接続

TimesTen ClientドライバおよびTimesTen Serverデーモン・プロセスは、ネットワーク上のリモート・クライアント・マシンからデータベースへの接続を調整します。

  • クライアント・マシン上のアプリケーションは、ODBCコール、JDBCコールまたはOCIコールを発行します。これらのコールは、TimesTenインスタンスと通信するローカルODBCクライアント・ドライバにアクセスします。次に、TimesTenインスタンスがODBCダイレクト・ドライバにODBC固有のリクエストを発行して、TimesTenデータベースにアクセスします。

  • TimesTenサーバー・デーモンは、リモート・クライアント・アプリケーションからの受信接続を管理します。その動作はローカル・アプリケーション用のTimesTenデーモンとほぼ同じですが、これは、クライアントのかわりにデータベースにアクセスするためにサーバー子プロセスを割り当てます。

従来のクライアント/サーバー・アクセスは、レポートなどの機能に対してサポートされています。または、多数のアプリケーション層プラットフォームで共通のインメモリー・データベースへのアクセスを共有する必要がある場合にサポートされます。

クライアントとサーバー間のすべての送受信は、TCP/IP接続で行われます。クライアントとサーバーが内部ネットワーク上の個別のホストに存在する場合、これらはソケットとTCP/IPを使用して通信します。クライアントとサーバーの両方が同一マシン上に存在する場合は、直接接続を使用して、より効率的に通信できます。

  • クライアント・アプリケーションは、データベースを提供するTimesTenインスタンスと通信します。

  • TimesTen Scaleoutを使用すると、クライアント/サーバー接続を使用しているアプリケーションは、データ・インスタンス上、または外部ネットワークへのアクセスを持つ任意のホスト上で実行できます。クライアント・アプリケーションは自動的に実行中のデータ・インスタンスに接続されます。『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』データベース接続を参照してください。

『Oracle TimesTen In-Memory Database C開発者ガイド』ODBCでのTimesTenデータベースの使用、および『Oracle TimesTen In-Memory Database Java開発者ガイド』JDBCでのTimesTenデータベースの使用を参照してください。

ドライバ・マネージャ接続

アプリケーションは、ODBCドライバ・マネージャを介してTimesTenデータベースに接続できます。単一のアプリケーションで、1つのドライバ・マネージャを使用して複数の異なるドライバにリンクできます。

ドライバ・マネージャにより、アプリケーションが、データベースと関係なく動作するようになり、直接的にはTimesTenでサポートされていないインタフェースを使用できるようになります。アプリケーションでは、1つのデータベースに対して直接接続とクライアント・サーバー接続を両方同時に使用する必要がある場合に、ODBCドライバ・マネージャが使用されます。

  • TimesTenドライバ・マネージャ(TimesTenの一部として提供される)では、TimesTenドライバ用の透過的で低オーバーヘッドのオプションが提供されます。TimesTenドライバ・マネージャにより、複数のODBCアプリケーションが、1つのTimesTenデータベースに対する、同じプロセスからの直接接続およびクライアント・サーバー接続を使用できるようになります。TimesTenドライバ・マネージャでは、XLA、ルーティングAPI、TimesTenユーティリティAPIおよびTimesTen ODBC拡張がサポートされています。『Oracle TimesTen In-Memory Database C開発者ガイド』TimesTenドライバ・マネージャの概要を参照してください。

  • 汎用のODBCドライバ・マネージャでは、様々なODBCバージョン用に作成されたODBCアプリケーションに対するサポート、またはODBCインタフェースを使用する複数のRDBMS製品に対するサポートが提供されます。Windowsでは、標準のODBCドライバ・マネージャが提供されます。LinuxまたはUNIXの場合は、オープン・ソースまたは商用のドライバ・マネージャを選択できます。

なお、ODBCドライバ・マネージャを使用する場合は、パフォーマンスに関して考慮事項があります。TimesTenドライバ・マネージャを使用する場合は、パフォーマンスに関する考慮事項が最小限になります。

『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』ODBCドライバおよびJDBCドライバを使用したTimesTenへの接続を参照してください。