ビジネスシナリオに基づいて、ご利用の Tair (Redis OSS-compatible) インスタンスのパラメーターを微調整およびカスタマイズして、インスタンスのパフォーマンスとセキュリティを向上させることができます。エンジンバージョンとアーキテクチャが異なれば、サポートされるパラメーターも異なります。このトピックでは、各パラメーターについて詳しく説明します。
注意事項
-
パラメーターを設定する際に
Parameter is not supported for current versionエラーが返された場合は、インスタンスのマイナーバージョンを更新してください。詳細については、「マイナーバージョンとプロキシバージョンのアップグレード」をご参照ください。 -
特定のパラメーターの変更を送信すると、インスタンスは自動的に再起動されます。再起動中、インスタンスでは数秒間の一時的な切断が発生します。パラメーター変更ページでは、[再起動後に有効] 列に、変更を有効にするためにインスタンスを再起動する必要があるかどうかが示されます。詳細については、「パラメーターの設定」をご参照ください。
このトピックでは、Redis Community Edition インスタンスのパラメーターのみを扱います。Tair (Enterprise Edition) インスタンス (メモリ最適化、永続メモリ最適化、ディスクベースインスタンスなど) に関連するパラメーターについては、「Tair Enterprise Edition の設定パラメーター一覧」をご参照ください。
サポートされているパラメーターと説明
読みやすさと明確さを向上させるため、このトピックでは表内で次の表記を使用します:
✔️ は、指定されたメジャーバージョンまたはアーキテクチャでパラメーターがサポートされていることを示します。
❌ は、指定されたメジャーバージョンまたはアーキテクチャでパラメーターがサポートされていないことを示します。
インスタンスの安定性を最大限に確保するため、設定できるパラメーターは一部のみです。このトピックに記載されていないパラメーターは設定できません。
アーキテクチャの詳細については、「標準アーキテクチャ」、「クラスターアーキテクチャ」、および「読み書き分離アーキテクチャ」をご参照ください。
データベースカーネルパラメーター
パラメーター | 説明 | インスタンスのメジャーバージョンとアーキテクチャ | ||||
バージョン 7.0 | バージョン 6.0 | バージョン 5.0 | バージョン 4.0 | バージョン 2.8 | ||
#no_loose_check-whitelist-always | VPC のパスワードなしアクセスを有効にした後、クライアントの IP アドレスがインスタンスのホワイトリストに含まれているかどうかを確認するかどうかを指定します。有効値:
説明
| ❌ | ❌ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | ❌ |
#no_loose_disabled-commands | 無効化するコマンド。このパラメーターを使用して、ビジネス要件に基づいて、FLUSHALL、FLUSHDB、KEYS、HGETALL、EVAL、EVALSHA、SCRIPT など、リスクが高い、または時間計算量が大きい可能性のあるコマンドを無効にできます。 説明
| 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ |
#no_loose_sentinel-enabled | 標準インスタンスまたは直接接続モードのクラスターインスタンスで Sentinel 互換モードを有効にするかどうかを指定します。有効値:
| 標準 ✔️ クラスター ✔️ 読み書き分離 ❌ | 標準 ✔️ クラスター ✔️ 読み書き分離 ❌ | 標準 ✔️ クラスター ✔️ 読み書き分離 ❌ | 標準 ✔️ クラスター ✔️ 読み書き分離 ❌ | ❌ |
#no_loose_sentinel-password-free-access | Sentinel モードが有効な場合に、Sentinel 関連コマンドのパスワードなし実行を許可するかどうかを指定します。有効値:
| 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ |
#no_loose_sentinel-password-free-commands | Sentinel モードを有効にし、#no_loose_sentinel-password-free-access を設定した後、このパラメーターを使用して、パスワードなしで実行できる追加のコマンドを指定します (デフォルトでは空)。 重要
| 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ |
#no_loose_tls-min-version | インスタンスがサポートする最小 TLS バージョンを設定します。有効値:
| 標準 ❌ クラスター ✔️ 読み書き分離 ✔️ | 標準 ❌ クラスター ✔️ 読み書き分離 ✔️ | 標準 ❌ クラスター ✔️ 読み書き分離 ✔️ | 標準 ❌ クラスター ✔️ 読み書き分離 ✔️ | 標準 ❌ クラスター ✔️ 読み書き分離 ✔️ |
appendfsync | 追記専用ファイル (AOF) 永続化のために fsync 操作を実行する頻度。デフォルト値は everysec で、変更できません。このパラメーターは、appendonly パラメーターが yes に設定されている場合にのみ使用できます。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
appendonly | プライマリノードの AOF 永続化を有効または無効にします。有効値:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
| pubsub は、Publish/Subscribe クライアントの出力バッファを制限します。デフォルト値:33554432 8388608 60。 normal は、通常のクライアントの出力バッファを制限します。デフォルト値:524288000 0 0。 値は
重要
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
dynamic-hz | 動的なバックグラウンドタスクの頻度調整を有効または無効にします。有効値:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | ❌ | ❌ |
| Redis 6.0 以前と互換性のあるインスタンスでは、ハッシュのデフォルトエンコーディングとして ziplist が使用されます。ハッシュオブジェクトは、次の両方の条件が満たされた場合に ziplist エンコーディングを使用します:
| ❌ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
| Redis 7.0 以降と互換性のあるインスタンスでは、ハッシュのデフォルトエンコーディングとして listpack が使用されます。ハッシュオブジェクトは、次の両方の条件が満たされた場合に listpack エンコーディングを使用します:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ | ❌ |
hz | 期限切れキーのクリアなどのインスタンスのバックグラウンドタスクの実行頻度を設定します。有効値:[1-500]。デフォルト値:10 (1 秒あたり 10 回)。 説明 値を高くすると CPU リソースの消費量が増えますが、期限切れキーが多い場合のクリーンアップ頻度も高くなります。また、インスタンスがタイムアウトをより正確に処理できるようになります。100 以下の値を推奨します。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
latency-tracking | コマンドごとのレイテンシ追跡を有効または無効にします。有効値:
説明 このパラメーターは Redis 7.0 以降でのみ使用できます。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ | ❌ |
lazyfree-lazy-eviction | lazyfree ベースのエビクションを有効または無効にします。有効値:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ |
lazyfree-lazy-expire | 期限切れキーの lazyfree ベースの削除を有効または無効にします。有効値:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ |
lazyfree-lazy-server-del | 暗黙的な DEL 操作で lazyfree ベースの非同期削除を使用するかどうかを指定します。有効値:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ |
lazyfree-lazy-user-del | 明示的な DEL コマンドで lazyfree ベースの非同期削除を使用するかどうかを指定します。有効値:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ |
lazyfree-lazy-user-flush | FLUSHDB、FLUSHALL、SCRIPT FLUSH、FUNCTION FLUSH コマンドを lazyfree ベースの非同期削除モードに自動的に変換します。有効値:
説明 このパラメーターは Redis 7.0 以降でのみ使用できます。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ | ❌ |
list-compress-depth | リストの両端にある非圧縮ノードの数。有効値:[0-65535]。
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ |
list-max-ziplist-entries | これらのパラメーターは、Redis 2.8 互換インスタンスにのみ適用されます。両方の条件が満たされた場合に ziplist エンコーディングを使用します:
| ❌ | ❌ | ❌ | ❌ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
list-max-ziplist-value | ||||||
| Redis 6.0 以前と互換性のあるインスタンスでは、リストのデフォルトエンコーディングは ziplist です (list-max-ziplist-size パラメーター)。Redis 7.0 以降と互換性のあるインスタンスでは、リストのデフォルトエンコーディングは listpack です (list-max-listpack-size パラメーター)。
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ |
maxmemory-policy | データエビクションポリシー。インスタンスのメモリが不足し、メモリ使用量が Maxmemory 制限に達すると、データエビクションがトリガーされます。さまざまなデータエビクションポリシーを選択できます。有効値: 説明
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
maxmemory-eviction-tenacity | エビクションの粘り強さ係数。エビクションサイクルごとのレイテンシを制御します。有効値:[0–100]。デフォルト:10。
説明 このパラメーターは Redis 7.0 でのみ使用できます。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ | ❌ |
active-expire-effort | 期限切れキーの削除努力係数。期限切れキーの削除サイクルごとのレイテンシを制御します。有効値:[1–10]。デフォルト:1。値を高くすると期限切れキーの削除が速くなりますが、CPU の消費量が増えます。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ |
notify-keyspace-events | サーバーがクライアントに通知できるイベントの種類。このパラメーターの値は、次の文字の組み合わせです。このパラメーター設定は、インスタンス内のすべてのデータベースに適用されます。これらの通知は CPU リソースを消費します。詳細については、「Redis キースペース通知」をご参照ください。
重要
指定する値には、少なくとも K または E を含める必要があります。そうでない場合、通知は送信されません。 たとえば、有効期限イベントの通知を受けたい場合は、このパラメーターを | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
set-max-intset-entries | 以下の両方の条件を満たすセットに intset エンコーディングを使用します:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
slowlog-log-slower-than | スロークエリログのしきい値。この値より長くかかるコマンドがログに記録されます。単位:マイクロ秒 (μs)。デフォルト:20000 (20 ms)。有効値:10000–10000000。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
slowlog-max-len | スロークエリログに保存されるエントリの最大数。有効値:100–10000。デフォルト:1024。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
stream-node-max-bytes | ストリーム内のマクロノードあたりの最大メモリ (バイト単位)。有効値:0–999,999,999,999,999。 説明 値 0 は無制限を意味します。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | ❌ | ❌ |
stream-node-max-entries | ストリーム内のマクロノードあたりの最大エントリ数。有効値:0–999,999,999,999,999。 説明 値 0 は無制限を意味します。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️ 読み書き分離 ✔️ | ❌ | ❌ |
tracking-table-max-keys | 追跡テーブルに保存されるキーの最大数。有効値:[0–1000000000]。デフォルト:1000000。 説明 このパラメーターは Redis 7.0 でのみ使用できます。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ | ❌ |
timeout | クライアントが指定された秒数アイドル状態の場合、インスタンスは接続を閉じます。単位:秒。有効値:[0, 100000]。デフォルト値:0 (接続は閉じられません)。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ |
| Redis 6.0 以前と互換性のあるインスタンスでは、Zset のデフォルトエンコーディングとして ziplist が使用されます。Zset は、次の両方の条件が満たされた場合に ziplist エンコーディングを使用します:
| ❌ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ |
| Redis 7.0 以降と互換性のあるインスタンスでは、Zset のデフォルトエンコーディングとして listpack が使用されます。Zset は、次の両方の条件が満たされた場合に listpack エンコーディングを使用します:
| 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ | ❌ | ❌ |
bigkey-threshold | Top Key 統計で big key を識別するためのしきい値 (要素数)。デフォルト:2000。有効値:[500–100000]。 説明 このパラメーターが設定に表示されない場合は、「マイナーバージョンをアップグレードする」を実行し、再度お試しください。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ |
| Top Key 統計におけるホットキー (QPS 別) の統計しきい値。デフォルト値:5000。有効値:[100-100000]。 説明 このパラメーターには、マイナーバージョン 7.0.1.8、6.0.2.9、5.5.2.9 以降が必要です。 | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | 標準 ✔️ クラスター ✔️️️️️ 読み書き分離 ✔️ | ❌ | ❌ |
プロキシノードパラメーター
プロキシノードパラメーターは、プロキシモードを使用するクラスターインスタンスおよび読み書き分離インスタンスでのみ使用できます。
パラメーター | 説明 |
cluster_compat_enable | ネイティブ Redis クラスター構文との互換性を有効にするかどうかを指定します。有効値:
|
hello_enabled | HELLO コマンドを使用して RESP2 と RESP3 プロトコルを切り替えるためのスイッチ。有効値:
説明 このパラメーターは、プロキシバージョン 7.0.9 以降でのみサポートされます。 |
max_session_processing | 単一の接続でスタックできるリクエストの最大数。有効値:[10-10000000]。デフォルト値:1000。 プロキシノードがクライアントのリクエストをデータノードに転送しても応答を受信しない場合、リクエストはスタック状態になります。このパラメーターは主に、プロキシノードのフロントエンドとバックエンドの処理能力の違いによって引き起こされるリクエストのスタックを制限し、メモリ使用量の増加に伴う問題を回避するために使用されます。 |
| これらのパラメーターは 可観測性機能の一部です。設定後、有効にするには 監査ログも有効にする必要があります。統計は 5 秒ごとに収集されます。
説明
|
ptod_enabled | クライアントの IP アドレスをデータノードにパススルーするかどうかを指定します。有効値:
|
readonly_lua_route_ronode_enable | 読み取り専用レプリカの Lua 実行モードを有効または無効にします。有効値:
|
read_request_only_ronode_whenrwsplit_enable | 読み取り専用アカウントリクエストの方向性転送を有効または無効にします。有効値:
|
rt_threshold_ms | プロキシノードのスロークエリログのしきい値。単位:ミリ秒 (ms)。有効値:[30-2000]。デフォルト値:500。 プロキシノードがリクエストをデータノードに送信してから応答を受信するまでの時間がこのしきい値を超えると、スロークエリログエントリが生成されます。 |
script_check_enable | プロキシノードの Lua スクリプトチェックを有効または無効にします。チェック項目のリストについては、「Lua のプロキシチェック項目」をご参照ください。有効値:
|
sentinel_compat_enable | プロキシモードのクラスターインスタンスまたは読み書き分離インスタンスで Sentinel 互換モードを有効にするかどうかを指定します。有効値:
|
transfer_subscrible_to_psubscrible_enable | SUBSCRIBE を PSUBSCRIBE に変換する機能を有効または無効にします。有効値:
|