ヘッダーをスキップ
Oracle® Coherenceスタート・ガイド
リリース3.7.1
B65028-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

8 パーティション・キャッシュ・サービス

レプリケーション・キャッシュ・サービスに潜在的に存在するスケーラビリティの制約に対応するために、メモリーと通信の両方のボトルネックに対して、Coherenceではリリース1.2以降、分散キャッシュ・サービスを提供しています。分散キャッシュという用語は、多くの製品でその機能を説明するために使用されてきました。そこで、ここでも、Coherenceにおけるこの用語の正確な意味について説明します。Coherenceでは、分散キャッシュは、複数のクラスタ・ノードに分散(パーティション化)されたデータのコレクションとして定義されるため、クラスタ内の1つのノードがキャッシュ内の各データに対応し、その対応がクラスタ・ノード間で分散(ロード・バランシング)されます。

分散キャッシュには、いくつかの重要な留意事項があります。

分散キャッシュにアクセスするには、一般に、ネットワークを介して別のクラスタ・ノードに接続する必要があります。他の条件がすべて同じであるとして、n個のクラスタ・ノードがある場合は、(n-1)/nの操作がネットワークを経由することになります。

図8-1 パーティション・キャッシュ環境でのget操作

この図については前の文で説明しています。

各データは1つのクラスタ・ノードのみで管理されるため、ネットワーク経由のアクセスは単一ホップ操作になります。このタイプのアクセスは、Point-to-Point通信を使用できるためスイッチド・ネットワークを最大限に活用できます。そのため、スケーラビリティに非常に優れています。

同様に、キャッシュの更新操作にも同じ単一ホップのPoint-to-Point方式を使用できます。この方法を使用すると、すべてのクラスタ・ノードにキャッシュの更新をプッシュする必要があるというレプリケーション・キャッシュの制限に対応できます。

図8-2 パーティション・キャッシュ環境でのput操作

この図については前の文で説明しています。

上の図では、データはプライマリ・クラスタ・ノードとバックアップ・クラスタ・ノードに送信されています。これはフェイルオーバーを目的としたものであり、この場合のバックアップ回数は1になります(デフォルトのバックアップ回数は1に設定されています)。(デフォルトのバックアップ回数は1に設定されています)。キャッシュのデータがクリティカルでない(ディスクから再ロードできる)場合は、バックアップ回数を0に設定できますが、クラスタ・ノードに障害が発生したときに分散キャッシュ・データの一部が失われる可能性があります。キャッシュがきわめてクリティカルな場合は、バックアップ回数を2などの高い値に設定します。バックアップ回数は、キャッシュ・エントリの追加、変更、削除などによるキャッシュの変更パフォーマンスにのみ影響します。

キャッシュに対する変更は、すべてのバックアップが変更を受信したことを認識するまで完了したとは見なされません。分散キャッシュのバックアップを使用する場合は、キャッシュの変更パフォーマンスが若干低下します。しかし、クラスタ・ノードに予期しない障害が発生しても、データの整合性が維持されることが保証され、データが損失することはありません。

分散キャッシュのフェイルオーバーでは、バックアップ・データがプライマリ記憶域に昇格されます。あるクラスタ・ノードに障害が発生すると、残りのすべてのクラスタ・ノードは、障害が発生したクラスタ・ノードがプライマリ記憶域で停止時に管理していたデータを各自のバックアップ記憶域から判別します。これらのデータの管理は、それをバックアップ記憶域に保持していたクラスタ・ノードに引き継がれます。

図8-3 パーティション・キャッシュ環境のフェイルオーバー

この図については前の文で説明しています。

バックアップに複数のレベルがある場合は、最初のバックアップでデータがバックアップされ、2番目以降のバックアップでは前のバックアップがバックアップされるようになります。レプリケーション・キャッシュ・サービスとまったく同じように、サーバーの障害時にはロック情報も維持されます。ただし、唯一の例外として、障害が発生したクラスタ・ノードのロックは自動的に解除されます。

分散キャッシュ・サービスでは、データを格納するクラスタ・ノードと格納しないクラスタ・ノードを構成できます。この設定はローカル記憶域の有効化と呼ばれています。ローカル記憶域を有効化するオプションで構成されたクラスタ・ノードは、分散キャッシュのキャッシュ記憶域とバックアップ記憶域を提供します。この設定にかかわらず、位置の透過性により、データはすべてのクラスタ・ノードでまったく同じように表示できます。

図8-4 パーティション・キャッシュ環境のローカル記憶域

この図については前の文で説明しています。

local storage enabledオプションには、次のような利点があります。