1.3. キャッシュモード
Data Grid の Cache Manager は、異なるモードを使用する複数のキャッシュを作成および制御できます。たとえば、ローカルキャッシュ、分散キャッシュ、およびインバリデーションモードでのキャッシュに、同じ Cache Manager を使用することができます。
- Local
- Data Grid は単一ノードとして実行され、キャッシュエントリーに対して読み取り操作または書き込み操作を複製しません。
- Replicated (レプリケート)
- Data Grid は、クラスター内のすべてのノードのすべてのキャッシュエントリーを複製し、ローカル読み取り操作のみを実行します。
- Distributed (分散)
-
Data Grid は、クラスター内のノードのサブセットでキャッシュエントリーを複製し、エントリーを固定所有者ノードに割り当てます。
Data Grid は所有者ノードから読み取り操作を要求し、正しい値を返すようにします。 - Invalidation (無効化)
- Data Grid は、操作のキャッシュ内のエントリーが変更されるたびに、すべてのノードから古いデータをエビクトします。Data Grid は、ローカルの読み取り操作のみを実行します。
- Scattered(散在)
-
Data Grid は、ノードのサブセット全体でキャッシュエントリーを保存します。
デフォルトでは、Data Grid はプライマリーの所有者とバックアップ所有者を scattered キャッシュの各キャッシュエントリーに割り当てます。
Data Grid は分散キャッシュと同じ方法でプライマリー所有者を割り当てますが、バックアップ所有者は常に書き込み操作を開始するノードになります。
Data Grid は、少なくとも 1 つの所有者ノードから読み取り操作を要求し、正しい値を返すようにします。
1.3.1. キャッシュモードの比較
選択するキャッシュモードは、データに必要な数量と保証によって異なります。
以下の表は、キャッシュモードの主な相違点をまとめています。
キャッシュモード | クラスター化 ? | 読み取りパフォーマンス | 書き込みパフォーマンス | 容量 | 可用性 | 機能 |
---|---|---|---|---|---|---|
Local | いいえ | 高(ローカル) | 高(ローカル) | 単一ノード | 単一ノード | 完了 |
Simple (単純) | いいえ | 最高(ローカル) | 最高(ローカル) | 単一ノード | 単一ノード | Partial: トランザクション、永続性、またはインデックスなし。 |
Invalidation (無効化) | Yes | 高(ローカル) | 低い(すべてのノード、データなし) | 単一ノード | 単一ノード | 部分的: インデックス化なし |
Replicated (レプリケート) | Yes | 高(ローカル) | 最低(すべてのノード) | 最小のノード | 全ノード | 完了 |
Distributed (分散) | Yes | メディア(所有者) | メディア(所有者ノード) | 所有者数で区分されたすべてのノード容量の合計。 | 所有者ノード | 完了 |
Scattered(散在) | Yes | 中(プライマリー) | さらに高 (単一 RPC) | 2 で除算されたすべてのノード容量の合計。 | 所有者ノード | 部分的: トランザクションがありません。 |