サポートされているインスタンス構成

このページでは、Memorystore for Redis Cluster で使用できる maxmemory ポリシーとその他の Redis 構成について説明します。

このページに記載されている構成を変更する方法については、 インスタンスを構成するをご覧ください。

maxmemory ポリシー

インスタンスのメモリがいっぱいになり、新しい書き込みが発生すると、Redis はキーのエビクションを行い、インスタンスの maxmemory ポリシーに基づいて書き込み用にスペースを確保します。Memorystore for Redis Cluster のデフォルトの maxmemory ポリシーは volatile-lru です。次のいずれかの maxmemory ポリシーを使用することもできます。

  • noeviction: インスタンスが maxmemory に達するとエラーを返します。 データの上書きや削除は行いません。
  • allkeys-lfu: キーセット全体から、使用頻度の最も低い(LFU)キーを削除します。
  • allkeys-lru: キーセット全体から、最も長い間使用されていない(LRU)キーを削除します。
  • volatile-lfu: TTL(有効期間)期限が設定されている、使用頻度の低いキーを削除します。
  • volatile-lru: TTL 期限が設定されている、最も長い間使用されていない(LRU)キーを削除します。
  • allkeys-random: キースペース全体からランダムにキーを削除します。
  • volatile-random:TTL 期限が設定されたキーの中から、ランダムにキーを削除します。
  • volatile-ttl: TTL 期限が設定されたキーのうち、最も短い TTL を持つキーを削除します。

変更可能な構成パラメータ

Memorystore for Redis Cluster インスタンスを作成または更新する際に、次のパラメータを変更できます。

パラメータ 説明 使用できる値
maxmemory-clients Redis 7.0 以降。この構成を使用すると、ユーザーは クライアントの最大メモリ使用量を制御できます。

通常/pubsub クライアントの合計メモリ使用量。上限に達すると、メモリ使用量が最も多いクライアント削除されます。
使用できる値は、整数 パーセント値で、0%100%です。クライアント ストレージが制限されるインスタンスの maxmemory の割合を表します。

デフォルト値はノードタイプによって異なります。詳細については、ノードの特性をご覧ください。
maxmemory エビクション ポリシーを有効にする調整可能な上限を指定します。maxmemory 上限は個々のノードレベルで設定しますが、この 設定はすべてのノードに適用されます。たとえば、3 つのノードを持つインスタンスがあり、58 GB の redis-highmem-xlarge ノードタイプを使用し、maxmemory を合計インスタンス容量の 90% に設定するとします。これを行うには、maxmemory をノード容量の 90% である 52.2 GB に設定します。これはすべてのノードに適用され、インスタンスの maxmemory 上限が 90% に設定されます。デフォルトの予約済みオーバーヘッドの詳細については、キースペースの容量と予約済みオーバーヘッドをご覧ください。 インスタンスの maxmemory 上限。

以下の単位がサポートされます。

b デフォルト)
k
kb
m
mb
g
gb
maxmemory-policy インスタンス データが Redis に達すると、動作を指定します。maxmemory各ポリシーの詳細については、 maxmemory ポリシー をご覧ください。

オープンソースの Redis maxmemory ポリシーについてさらに詳しくは、 オープンソースの Redis の LRU キャッシュ ページをご覧ください。
noevictionnoeviction
allkeys-lruallkeys-lru
volatile-lruvolatile-lru(デフォルト)
allkeys-randomallkeys-random
volatile-randomvolatile-random
volatile-ttlvolatile-ttl
volatile-lfuvolatile-lfu(Redis バージョン 4.0 以降)
allkeys-lfuallkeys-lfu(Redis バージョン 4.0 以降)
notify-keyspace-events 特定のキースペース イベントの通知をクライアントに登録できるようにします。 詳細については、Redis キースペースの通知をご覧ください。 ""
イベントなし(デフォルト)
K
キースペース イベント。__keyspace@<db>__ 接頭辞付きで公開されます。
E
キーイベント イベント。__keyevent@<db>__ 接頭辞付きで公開されます。
g
DEL、EXPIRE、RENAME などの一般的なコマンド
$
文字列コマンド
l
リストコマンド
s
セットコマンド
h
ハッシュコマンド
z
ソートされたセットコマンド
x
期限切れイベント(キーが期限切れになるたびに生成されるイベント)
e
削除されたイベント(maxmemory のためにキーが削除された場合に生成されるイベント)
A
g$lshzxe のエイリアス。したがって、「AKE」文字列は全イベントを意味します。
slowlog-log-slower-than 低速ログを構成できます。 実行時間のしきい値(マイクロ秒単位)を指定します。コマンドがこのしきい値を超えると、低速ログに追加されます。 デフォルト値は 10000 です。

0 にすると、すべてのコマンドが強制的にロギングされます。一方、-1 にすると、低速ログが無効になります。その他の負の値は拒否されます。
maxclients インスタンスの maxclients 構成を構成できます。インスタンスの最大クライアント数とデフォルトについては、最大クライアント数をご覧ください。 デフォルト値はノードタイプによって異なります。詳細については、 ノードの特性をご覧ください。

変更不可の構成パラメータ

Memorystore for Redis Cluster は、proto-bulk-max-len 構成パラメータの値を 256 MB に設定します。この値は変更できません。