Oracle TimesTen In-Memory Database Classicの概要
Oracle TimesTen In-Memory Database (TimesTen) は、メモリに最適化されたフル機能のリレーショナル・データベースであり、ミッションクリティカルなアプリケーションへの高速な応答時間と高スループットを提供します。TimesTenは、TimesTen ScaleoutおよびTimesTen Classicとしてデプロイできます。このページには、TimesTen Classicの概要が含まれています。TimesTen Classic1は、幅広い業界の多くのアプリケーションで必要とされる非常に高速な応答時間と非常に高いスループットを持つアプリケーションを提供するスタンドアロン・リレーショナル・データベースです。(製品データシート)(PDF)
TimesTen Classicは、は、実行時にデータが存在する場所に関する前提条件を変更することで、その効果を発揮します。データをメモリ内で管理し、データ構造とアクセス・アルゴリズムを最適化することで、データベース操作の実行効率が最大限に引き上げられ、完全にキャッシュされたディスクベースのRDBMSと比較しても応答性とスループットが劇的に向上します。TimesTen Classicはアプリケーションに組み込むことができ、プロセス間の通信やネットワークのオーバーヘッドを排除することで、データベース操作のパフォーマンスをさらに向上させることができます。
TimesTen Classicは、通常、行レベルのロックおよび読取りコミット分離を使用してマルチユーザーおよびマルチスレッド・アプリケーションでデプロイされます。アプリケーションは、JDBC、ODBC、ODP.NET、OCI (Oracle Call Interface)、Pro*C/C++、Oracle PL/SQLのプログラミング・インターフェイスを介して、標準SQLを使用してTimesTenデータベースにアクセスします。TimesTenをアプリケーションと同一プロセス内で実行すると(「ダイレクト・モード」)、最速のレスポンスタイムが実現しますが、複数のサーバー上で実行されている複数のアプリケーションでデータベースを共有する場合は、従来のクライアント/サーバー・アクセスが一般的に使用されます。
TimesTenデータベースは永続的でリカバリ可能です。耐久性を高めるには、トランザクション・ロギングとディスクへのデータベース・チェックポイントを組合せます。
高可用性を実現するには、TimesTen Classic Replicationを使用して、TimesTenデータベース間でリアルタイムにトランザクションを複製します。ミッションクリティカルな性質を持つため、ほとんどの企業では可用性と災害復旧のためにTimesTen Replicationを使用しています。例えば、オンライン請求、加入者セッション管理、eコマースのオンラインストア、旅行および予約Webサイトなどの通信およびWebアクセス可能なグローバルシステムでは、アプリケーション/サービスのダウンタイムは許されません。金融サービスおよび証券取引システムは、金融市場が開いている間は常に利用可能でなければなりません。
TimesTen Classic Replicationは、効率的なストリームベースのネットワークプロトコルと、メモリ用に最適化されたトランザクション・ログ・ベースのレプリケーション・テクノロジーを使用し、高いパフォーマンス、信頼性、堅牢性を実現します。主な機能:
- 非同期レプリケーション: アプリケーションのトランザクション実行を、レプリケーションの取得、伝播、適用ステップから切り離すことで、最高のパフォーマンスを実現します。
- 同期レプリケーション: アクティブ・データベースとスタンバイ・データベース間の完全な一貫性を維持することで、より高度なデータ保護を実現します。アプリケーションのコミットは、レプリケートされたトランザクションがスタンバイ・データベースで受信およびコミットされた場合にのみ返されます。
- スタンバイ・データベースの使用頻度の高い読み取り可用性: 追加の読み取り専用サブスクライバを設定することで、追加の読み取り容量を提供できます。
- 非常に高いトランザクション処理能力を必要とするアプリケーション向けの並列レプリケーション。
- 自動障害検出とスタンバイ・データベースへのフェイルオーバー: Oracle Clusterwareとのシームレスな統合により実現。
- オンライン・アップグレード: 個々のサーバーをオフラインにしてソフトウェアのアップグレードを行っても、他のサーバーは中断することなく稼働し続けます。
既存のデータがすでにOracle Databaseに存在するアプリケーションの場合、パフォーマンスに重要なデータの一部をTimesTenインメモリ・データベースにキャッシュすることで、アプリケーションのトランザクション応答時間を改善できます。TimesTenアプリケーション層データベース・キャッシュの概要については、こちらをご覧ください。