Hitachi

インメモリデータグリッド Hitachi Elastic Application Data Store ユーザーズガイド


4.1.3 Explicitヒープサイズを見積もる

Explicitヒープサイズを見積もる計算式を次に示します。

keyとvalueのうち,value部分が格納される領域と,更新操作の履歴が格納される領域を足した値がExplicitヒープサイズとなります。なお,Explicitヒープサイズの3%は管理領域として使用されます。

算出した値は,共通設定のeads.java.external.heapsizeパラメタに指定します。

Explicitヒープサイズ(単位:メガバイト)=(a÷1,0242※+b÷1,0242)÷0.97

変数の説明

a:value部分が格納される領域のサイズ

b:更新操作の履歴が格納される領域のサイズ

注※

データ総量監視機能を使用する場合,「a÷1,0242」は,データの多重度の倍数(単位:メガバイト)になるよう切り上げてください。

各領域のサイズを見積もる計算式を次に示します。

〈この項の構成〉

(1) value部分が格納される領域のサイズ

keyとvalueのうち,value部分が格納される領域のサイズを見積もる計算式を次に示します。ただし,valueをExplicitヒープに格納しない(キャッシュタイプがディスクキャッシュのキャッシュだけを使用する)場合は,0としてください。

value部分が格納される領域のサイズ(単位:バイト)=

 (メモリキャッシュおよび2Wayキャッシュに格納するデータ1件当たりのvalueサイズ※1(単位:バイト)

 +2バイト)※2

 ×(1レンジ当たりのメモリキャッシュおよび2Wayキャッシュに格納するデータ件数の合計×データの多重度

 +メモリキャッシュおよび2Wayキャッシュのキャッシュ数の合計

 ×データの多重度+500)

注※1

シリアライズ後のサイズです。

注※2

この括弧内の計算式は16バイト単位で切り上げて見積もってください。

データの多重度:

共通設定のeads.replication.factorパラメタの指定値

(2) 更新操作の履歴が格納される領域のサイズ

更新操作の履歴が格納される領域のサイズを見積もる計算式を次に示します。

算出した値は,メガバイト単位に切り上げてから,共通設定のeads.replication.external.heapsizeパラメタに指定します。

更新操作の履歴が格納される領域(単位:バイト)=

 {(データの多重度×2−1)×キャッシュ数×更新操作の履歴の最大数+500}

 ×(更新操作の履歴の最大サイズ(単位:バイト)+1,024)+1,048,576

小数点以下の値は切り上げます。

データの多重度:

共通設定のeads.replication.factorパラメタの指定値

更新操作の履歴の最大数:

更新操作の履歴の最大数を見積もる計算式を次に示します。

更新操作の履歴の最大数=

 更新操作の履歴が保持される最大数+合意処理で一度に合意できる処理の最大数

更新操作の履歴が保持される最大数:

更新操作の履歴が保持される最大数を見積もる計算式を次に示します。

更新操作の履歴が保持される最大数=

 ((eads.failureDetector.heartbeat.timeoutパラメタの指定値

 +eads.failureDetector.connection.timeoutパラメタの指定値

 ×(eads.failureDetector.retryパラメタの指定値+1))÷1,000)

 ×1EADSサーバへのデータの更新操作のスループット(単位:件/秒)※1,※2

注※1

キャッシュごとにスループットが大きく異なる場合は,キャッシュごとに算出したスループットのうち,最大の値を代入してください。

注※2

データ自動削除機能を使用する場合,create,put,putAllで更新するデータ件数分のデータを削除するため,create,put,putAllでデータを更新する件数を倍にして1EADSサーバへのデータの更新操作のスループットを見積もってください。

合意処理で一度に合意できる処理の最大数:

共通設定のeads.replication.preparationsパラメタの指定値

更新操作の履歴の最大サイズ(単位:バイト):

更新操作の履歴の最大サイズを見積もる計算式を次に示します。

更新操作の履歴の最大サイズ(単位:バイト)=

 MAX(クラスタに格納できるkeyの最大サイズ+valueの最大サイズ×2,(クラスタに格納できるkeyの最大サイズ+valueの最大サイズ)×最大同時更新データ件数)

MAX:

計算結果の最も大きい値を選ぶことを示しています。

(例)MAX(2,10)の計算結果は10となります。

クラスタに格納できるkeyの最大サイズ:

共通設定のeads.cache.key.maxsizeパラメタの指定値

valueの最大サイズ:

put,create,update,replace実行時に指定するvalueの最大サイズ

最大同時更新データ件数:

メモリキャッシュを使用して,データの一括操作を実行する場合は,10を代入してください。それ以外の場合は,1を代入してください。

注意事項
  • Explicitヒープの見積もりが適切でない場合,Explicitヒープの空き容量が少なくなると,valueおよび更新操作の履歴のフラグメントが発生し,性能が低下するおそれがあります。また,データ総量監視機能を使用していない場合,Explicitヒープの空き容量が不足して,valueを格納できなくなると,EADSサーバが縮退します。

  • Explicitヒープの空き容量が不足して更新操作の履歴が格納できなくなると,EADSサーバは既存の更新操作の履歴を削除することでExplicitヒープを確保しようとします。これによって,EADSサーバ間での更新操作の履歴の補完処理に失敗するおそれがあります。更新操作の履歴の補完処理については,「9.3.2(8) 更新操作の履歴の補完処理」を参照してください。