TimesTen Scaleout固有の機能

TimesTenの一般的な機能に加えて、次の機能がTimesTen Scaleout内でサポートされています

TimesTen Scaleoutの高可用性機能

TimesTen Scaleoutのアーキテクチャでは、高いパフォーマンスが実現され、高可用性がサポートされています。

TimesTen Scaleoutを使用すると、1つ以上のホストで実行されている相互接続されたインスタンスのセットであるグリッドを作成できます。グリッドでホストされるデータベースを作成すると、そのデータベースに格納されているデータがグリッドのインスタンス全体に分散されます。各インスタンスには、グリッドでホストされているすべてのデータベースの1つの部分(要素)が含まれます。

図1-2は、アーキテクチャのこの部分を示しています。

  • TimesTen Scaleoutは、データベース内でデータの各項目の複数のコピーを保持するよう指定できるようにすることで、高可用性を実現します(K-safetyと呼ばれます)。データのコピー数はk-factorと呼ばれます。データのコピーを複数保持することで、単一の障害が発生した場合にデータ損失から保護されます。そのため、kが1のグリッドでは高可用性が実現されませんが(データのコピーが1つのみであるため)、kが1より大きいグリッドでは高可用性が実現されます。

    データベースの各コピーは、論理的にはデータ領域内に含まれており、データベースのコピー全体を含むインスタンスを論理的にグループ化します。データ領域はグリッドのk-factorと同じ数だけ存在します。

  • TimesTen Scaleoutでは、データベースの作業がデータ・インスタンス間でパラレルに分散されるため、SQL文の結果がより高速に計算されます。データベースのデータは要素に分散されます。

  • アプリケーションはグリッド内の任意のデータ・インスタンスに接続でき、特定のデータが配置されている場所を認識しなくても、データベースのすべてのデータに透過的にアクセスできます。

  • レプリカ・セットは、同一の内容を持つデータベース要素のセットです(指定されたk-factorの結果として生成される複数のコピー)。各レプリカ・セットには常にk要素が含まれます。レプリカ・セット内の個々の要素は、別々のデータ領域に配置されています。1つの要素に障害が発生した場合、接続をレプリカ・セット内の他の要素(まだ使用可能な場合)に再ルーティングできます。

  • グリッドにインスタンスを追加または削除して次のことを行うことができます。

    • 必要に応じてデータベースの記憶域容量を拡張または縮小します。

    • アプリケーションのパフォーマンス要件にあわせてデータベースのコンピューティング・リソースを拡張または縮小します。

図1-2は、k-factorが2に設定されているグリッド内のデータベースを示しています。

図1-2 TimesTen Scaleoutでのパフォーマンスおよび高可用性アーキテクチャ

図1-2の説明が続きます。
「図1-2 TimesTen Scaleoutでのパフォーマンスおよび高可用性アーキテクチャ」の説明

このガイドの「TimesTen Scaleoutのアーキテクチャの概要」、および『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』TimesTen Scaleoutアーキテクチャを参照してください。

透過的データ分散

TimesTen Scaleoutは複数のインスタンスにデータを分散し、アプリケーションはデータの分散方法を認識する必要はありません。アプリケーションはグリッド内のいずれかのインスタンスに接続すると、特定のデータが配置されている場所を認識しなくても、データベースのすべてのデータにアクセスできます。

TimesTen Scaleoutではデータの分散に関する知識は必要ありませんが、この知識を使用してアプリケーションのパフォーマンスをチューニングできます。可能な場合は、この知識を使用して場所を利用できます。

『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』データの透過性を参照してください。

オンラインでの柔軟なスケーラビリティ

TimesTen Scaleoutでは、データベースのパフォーマンスと記憶域容量の両方を制御するためにインスタンスを追加または削除できます。

インスタンスを追加すると、これらのインスタンスを実行しているホストの追加のコンピューティング・リソースが提供されることで、ワークロードのスループットが向上します。ビジネス・ニーズが変化した場合、インスタンス(およびそのホスト)を削除して、少ないリソースでターゲットを満たすことができます。

『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』スケーラビリティを参照してください。

K-Safetyを介した自動的な高可用性

TimesTen Scaleoutでは、K-safety (k)を使用してデータの複数のコピーを複数の別々のホストに配置してあるときに、高可用性とフォルト・トレランスが実現されます。

ソフトウェアのエラーによりデータのコピーの1つが使用できない場合は、データの他のコピーにSQL文が自動的にリダイレクトされます(可能な場合)。その間、TimesTen Scaleoutは障害が発生したシステムのデータをデータベースの残りの部分と同期します。

『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』TimesTen Scaleout固有の機能および高可用性とフォルト・トレランスを参照してください。

管理および監視のための単一ポイント

管理アクティビティを実行するには、グリッド内のすべてのホストにログオンする必要はありません。かわりに、ttGridAdminユーティリティを使用して単一の管理インスタンスからすべての管理アクティビティを実行します。

ttGridAdminユーティリティを使用して、各データベースのステータスを定義、デプロイおよび確認します。

また、ttGridRolloutユーティリティまたはOracle SQL Developer GUI (どちらもすべてのリクエストを実行するために背後でttGridAdminユーティリティを使用します)を使用して、グリッドの作成、デプロイおよび管理を容易にすることもできます。

『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』一元管理を参照してください。