

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 引擎特定參數
<a name="parametergroups.redis"></a>

如果您未指定 Valkey 或 Redis OSS 叢集的參數群組，則會使用適合您引擎版本的預設參數群組。您無法變更預設參數群組中任何參數的值。但是，只要可條件式修改參數的值在兩個參數群組中都是相同的，您便可以建立自訂參數群組並隨時將其指派給您的叢集。如需詳細資訊，請參閱[建立參數群組](parametergroups.creating.md)。

**Topics**
+ [Valkey 7 和 Redis OSS 7 參數變更](#ParameterGroups.Redis.7)
+ [Redis OSS 6 參數](#parametergroups.redis.6-x)
+ [MemoryDB 節點類型特定參數](#parametergroups.redis.nodespecific)

## Valkey 7 和 Redis OSS 7 參數變更
<a name="ParameterGroups.Redis.7"></a>

**注意**  
MemoryDB 推出[向量搜尋](https://docs.aws.amazon.com/memorydb/latest/devguide/vector-search.html)，其中包含新的不可變參數群組 `default.memorydb-valkey7.search`。此參數群組可在 MemoryDB 主控台中使用，以及使用 [create](https://docs.aws.amazon.com/cli/latest/reference/memorydb/create-cluster.html)vector-search-enabled的叢集時使用。預覽版可在下列AWS區域使用：美國東部 （維吉尼亞北部）、美國東部 （俄亥俄）、美國西部 （奧勒岡）、亞太區域 （東京） 和歐洲 （愛爾蘭）。

**參數群組系列：** memorydb\_valkey7

在 Valkey 7 和 Redis OSS 7 中新增的參數如下所示。


|  Name  |  詳細資訊 |  Description  | 
| --- | --- | --- | 
| latency-tracking | 允許的值：`yes`、`no`<br />預設：`no`<br />類型：字串<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 設定為 yes 時，會追蹤每個命令的延遲情況，並可透過 `INFO` 延遲統計資料命令匯出百分位數分佈，同時透過 `LATENCY` 命令匯出累積延遲分佈 (長條圖)。 | 
| hash-max-listpack-entries | 允許的值：`0+`<br />預設：`512`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 要壓縮資料集的雜湊項目數目上限。 | 
| hash-max-listpack-value | 允許的值：`0+`<br />預設：`64`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 最大雜湊項目的臨界值，以便壓縮資料集。 | 
| zset-max-listpack-entries | 允許的值：`0+`<br />預設：`128`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 要壓縮資料集的雜湊有序集項目數目上限。 | 
| zset-max-listpack-value | 允許的值：`0+`<br />預設：`64`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 要壓縮資料集的雜湊有序集項目數目上限。 | 
| search-enabled | 允許的值：`yes, no`<br />預設：`no`<br />類型：字串<br />可修改：是<br />變更生效：僅適用於新叢集。<br />最低引擎版本：7.1 | 設定為是時，會啟用搜尋功能。 | 
| search-query-timeout-ms | 允許的值：`1 - 60,000`<br />預設：`10,000`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。<br />最低引擎版本：7.1 | 允許執行搜尋查詢的時間上限，以毫秒為單位。 | 

Redis OSS 7 中變更的參數如下所示。


|  Name  |  詳細資訊 |  Description  | 
| --- | --- | --- | 
| activerehashing | 可修改：`no`。在 Redis OSS 7 中，預設會隱藏並啟用此參數。為了將其停用，您需要建立一個[支援案例](https://console.aws.amazon.com/support/home)。 | 「可修改」先前為「是」。 | 

在 Redis OSS 7 中移除的參數如下所示。


|  Name  |  詳細資訊 |  Description  | 
| --- | --- | --- | 
| hash-max-ziplist-entries | 允許的值：`0+`<br />預設：`512`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 使用 `listpack` 而非 `ziplist` 來表示小雜湊編碼 | 
| hash-max-ziplist-value | 允許的值：`0+`<br />預設：`64`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 使用 `listpack` 而非 `ziplist` 來表示小雜湊編碼 | 
| zset-max-ziplist-entries | 允許的值：`0+`<br />預設：`128`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 使用 `listpack` 而非 `ziplist` 來表示小雜湊編碼。 | 
| zset-max-ziplist-value | 允許的值：`0+`<br />預設：`64`<br />類型：整數<br />可修改：是<br />變更生效：直接套用至叢集中所有節點。 | 使用 `listpack` 而非 `ziplist` 來表示小雜湊編碼。 | 

## Redis OSS 6 參數
<a name="parametergroups.redis.6-x"></a>

**注意**  
在 Redis OSS 引擎 6.2 版中，當引進 r6gd 節點系列以搭配 使用時[資料分層](data-tiering.md)，r6gd 節點類型僅支援 `noeviction``volatile-lru`和 `allkeys-lru` 最大記憶體政策。

**參數群組系列：** memorydb\_redis6

Redis OSS 6 中新增的參數如下。


|  Name  |  詳細資訊 |  Description  | 
| --- | --- | --- | 
|  maxmemory-policy  | 類型：STRING<br />允許的值：volatile-lru、allkeys-lru、volatile-lfu、allkeys-lfu、volatile-random、allkeys-random、volatile-ttl、noeviction<br />預設：noeviction | 到達記憶體用量上限時，針對鍵的移出政策。<br />如需使用 Valkey 或 Redis OSS 做為 LRU 快取的詳細資訊，請參閱[金鑰移出](https://valkey.io/topics/lru-cache)。 | 
|  list-compress-depth | 類型：INTEGER<br />允許的值：0-<br />預設：0 | 壓縮深度是來自清單每一端的快速清單 (quicklist) 壓縮清單 (ziplist) 節點數量，這些節點會從壓縮中排除。清單的前端和尾端一律不會進行壓縮，以進行快速的推送及彈出操作。設定如下：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/memorydb/latest/devguide/parametergroups.redis.html) | 
|  hll-sparse-max-bytes | 類型：INTEGER<br />允許的值：1-16000<br />預設：3000 | HyperLogLog 疏鬆表示位元組限制。限制包含 16 位元組的標頭。當使用疏鬆表示的 HyperLogLog 超過此限制時，便會轉換成密集表示。<br />不建議使用大於 16000 的值，因為屆時密集表示可以更有效率的使用記憶體。<br />我們建議值約為 3000，以享有節省空間編碼的優點，而不會`PFADD`太慢，也就是使用稀疏編碼的 O(N)。若 CPU 不在考量範圍內，但空間為考量的項目之一，且資料集是由許多基數介於 0 到 15000 範圍間的 HyperLogLog 組成時，則可以將此值提升到約 10000。 | 
|  lfu-log-factor | 類型：INTEGER<br />允許的值：1-<br />預設：10 | LFU 移出政策遞增索引鍵計數器的日誌因素。 | 
|  lfu-decay-time | 類型：INTEGER<br />允許的值：0-<br />預設：1 | 減少 LFU 移出政策之金鑰計數器的時間，以分鐘為單位。 | 
|  active-defrag-max-scan-fields | 類型：INTEGER<br />允許的值：1-1000000<br />預設：1000 | 在作用中重組期間，將從主要字典掃描處理的 set/hash/zset/list 欄位數目上限。 | 
|  active-defrag-threshold-upper | 類型：INTEGER<br />允許值：1 到 100<br />預設：100 | 進行最大程度投入量所需要的最高分散百分比。 | 
|  client-output-buffer-limit-pubsub-hard-limit | 類型：INTEGER<br />允許的值：0-<br />預設：33554432 | 對於 Redis OSS 發佈/訂閱用戶端：如果用戶端的輸出緩衝區達到指定的位元組數，用戶端將會中斷連線。 | 
|  client-output-buffer-limit-pubsub-soft-limit | 類型：INTEGER<br />允許的值：0-<br />預設：8388608 | 對於 Redis OSS 發佈/訂閱用戶端：如果用戶端的輸出緩衝區達到指定的位元組數，則用戶端會中斷連線，但前提是此條件仍存在 `client-output-buffer-limit-pubsub-soft-seconds.` | 
|  client-output-buffer-limit-pubsub-soft-seconds | 類型：INTEGER<br />允許的值：0-<br />預設：60 | 對於 Redis OSS 發佈/訂閱用戶端：如果用戶端的輸出緩衝區停留在`client-output-buffer-limit-pubsub-soft-limit`位元組超過此秒數，用戶端將會中斷連線。 | 
|  timeout | 類型：INTEGER<br />允許的值：0，20-<br />預設：0 | 節點在逾時前等待的秒數。數值為：[See the AWS documentation website for more details](http://docs.aws.amazon.com/zh_tw/memorydb/latest/devguide/parametergroups.redis.html) | 
|  notify-keyspace-events | 類型：STRING<br />允許的值：NULL<br />預設：NULL | Redis OSS 要通知 Pub/Sub 用戶端的金鑰空間事件。預設會停用所有通知。 | 
|  maxmemory-samples | 類型：INTEGER<br />允許的值：1-<br />預設：3 | 對於最近least-recently-used `(LRU)`和 `time-to-live (TTL)`計算，此參數代表要檢查的金鑰大小範例。根據預設，Redis OSS 會選擇 3 個金鑰，並使用最近最少使用的金鑰。 | 
|  slowlog-max-len | 類型：INTEGER<br />允許的值：0-<br />預設：128 | Redis OSS 慢速日誌的長度上限。此長度沒有限制。請注意，它會耗用記憶體。您可以使用 回收慢速日誌所使用的記憶體 `SLOWLOG RESET.` | 
|  activerehashing | 類型：STRING<br />允許的值：是、否<br />預設：是 | 主要雜湊表會每秒重新雜湊十次。每一次的重新雜湊操作都會使用 1 毫秒的 CPU 時間。<br />您可以在建立參數群組時設定此值。將新的參數群組指派給叢集時，此值在舊的及新的參數群組中都必須相同。 | 
|  client-output-buffer-limit-normal-hard-limit | 類型：INTEGER<br />允許的值：0-<br />預設：0 | 若用戶端的輸出緩衝區達到指定的位元組數，便會中斷用戶端連線。預設為零 (無硬式限制)。 | 
|  client-output-buffer-limit-normal-soft-limit | 類型：INTEGER<br />允許的值：0-<br />預設：0 | 若用戶端的輸出緩衝區達到指定的位元組數，便會中斷用戶端連線，但只有在此條件持續達 `client-output-buffer-limit-normal-soft-seconds` 時。預設為零 (無軟式限制)。 | 
|  client-output-buffer-limit-normal-soft-seconds | 類型：INTEGER<br />允許的值：0-<br />預設：0 | 若用戶端的輸出緩衝區維持在 `client-output-buffer-limit-normal-soft-limit` 位元組超過此秒數，便會中斷用戶端連線。預設為零 (無時間限制)。 | 
|  tcp-keepalive | 類型：INTEGER<br />允許的值：0-<br />預設：300 | 若將此設為非零值 (N)，節點用戶端便會每 N 秒輪詢一次，確保仍然持續連線。使用預設設定的 0，便步會發生任何輪詢。 | 
|  active-defrag-cycle-min | 類型：INTEGER<br />允許值：1 到 75<br />預設：5 | 用於磁碟重組的最小投入量 (CPU 百分比)。 | 
|  stream-node-max-bytes | 類型：INTEGER<br />允許的值：0-<br />預設：4096 | 串流資料結構是節點基數樹狀結構，它會在內部編碼多個項目。使用這個組態可指定基數樹狀結構中單一節點的最大大小 (以位元組為單位)。如果設為 0，則節點的大小沒有限制。 | 
|  stream-node-max-entries | 類型：INTEGER<br />允許的值：0-<br />預設：100 | 串流資料結構是節點基數樹狀結構，它會在內部編碼多個項目。使用此組態來指定在附加新串流項目時，切換至新節點之前，單一節點可包含的最大項目數。如果設定為 0，則樹狀節點中的項目數量不受限制。 | 
|  lazyfree-lazy-eviction | 類型：STRING<br />允許的值：是、否<br />預設：否 | 在移出時執行非同步刪除。 | 
|  active-defrag-ignore-bytes | 類型：INTEGER<br />允許的值：1048576-<br />預設：104857600 | 啟動主動磁碟重組所需要的最低分散廢棄物數量。 | 
|  lazyfree-lazy-expire | 類型：STRING<br />允許的值：是、否<br />預設：否 | 在過期的金鑰上執行非同步刪除。 | 
|  active-defrag-threshold-lower | 類型：INTEGER<br />允許值：1 到 100<br />預設：10 | 啟動主動磁碟重組所需要的最低分散百分比。 | 
|  active-defrag-cycle-max | 類型：INTEGER<br />允許值：1 到 75<br />預設：75 | 用於磁碟重組的最大投入量 (CPU 百分比)。 | 
|  lazyfree-lazy-server-del | 類型：STRING<br />允許的值：是、否<br />預設：否 | 針對更新數值的命令執行非同步刪除。 | 
|  slowlog-log-slower-than | 類型：INTEGER<br />允許的值：0-<br />預設：10000 | 命令由 Redis OSS `Slow Log`功能記錄所超過的最大執行時間，以微秒為單位。請注意，負數會停用慢速日誌，而零值會強制記錄每個命令。 | 
|  hash-max-ziplist-entries | 類型：INTEGER<br />允許的值：0-<br />預設：512 | 決定用於雜湊的記憶體數量。少於指定項目數的雜湊會使用特別的編碼存放，以節省空間。 | 
|  hash-max-ziplist-value | 類型：INTEGER<br />允許的值：0-<br />預設：64 | 決定用於雜湊的記憶體數量。項目小於指定位元組數的雜湊會使用特別的編碼存放，以節省空間。 | 
|  set-max-intset-entries | 類型：INTEGER<br />允許的值：0-<br />預設：512 | 決定要用於特定類型組 (基數為 10，介於 64 位元帶正負號整數範圍內整數的字串) 的記憶體數量。這類少於指定項目數的組會使用特別的編碼存放，以節省空間。 | 
|  zset-max-ziplist-entries | 類型：INTEGER<br />允許的值：0-<br />預設：128 | 決定用於排序組的記憶體數量。少於指定元素數的排序組會使用特別的編碼存放，以節省空間。 | 
|  zset-max-ziplist-value | 類型：INTEGER<br />允許的值：0-<br />預設：64 | 決定用於排序組的記憶體數量。項目小於指定位元組數的排序組會使用特別的編碼存放，以節省空間。 | 
|  tracking-table-max-keys | 類型：INTEGER<br />允許的值：1-100000000<br />預設：1000000 | 為了協助用戶端快取，Redis OSS 支援追蹤哪些用戶端已存取哪些金鑰。<br />追蹤的索引鍵有所修改時，會傳送失效訊息給所有用戶端，通知他們快取的值不再有效。此值可讓您指定此資料表的上限。 | 
|  acllog-max-len | 類型：INTEGER<br />允許的值：1-10000<br />預設：128 | ACL 日誌中的項目數量上限。 | 
|  active-expire-effort | 類型：INTEGER<br />允許的值：1-10<br />預設：1 | Redis OSS 會刪除已超過兩個機制存活時間的金鑰。一種機制是系統會存取一個索引鍵，並發現其過期。另一種機制則是定期任務對索引鍵進行取樣，而導致超過存留時間的索引鍵過期。此參數定義 Redis OSS 用來使定期任務中的項目過期的工作量。<br />預設值 1 會嘗試避免有超過 10% 的過期索引鍵仍存在於記憶體中。也會嘗試避免佔用總記憶體的 25% 以上以及為系統增加延遲。您最多可以將此值增加 10，以增加使索引鍵過期花費的工作量。缺點是 CPU 會較高，且延遲也可能更高。除非您發現記憶體使用量很高，且可以容忍 CPU 使用率的增加，否則建議您使用值 1。 | 
|  lazyfree-lazy-user-del | 類型：STRING<br />允許的值：是、否<br />預設：否 | 指定`DEL`命令的預設行為是否與 作用相同`UNLINK`。 | 
|  activedefrag | 類型：STRING<br />允許的值：是、否<br />預設：否 | 啟用作用中記憶體重組。 | 
|  maxclients | 類型：INTEGER<br />允許的值：65000<br />預設：65000 | 一次可連線的用戶端數量上限。不可修改。 | 
| client-query-buffer-limit | 類型：INTEGER<br />允許的值：1048576-1073741824<br />預設：1073741824 | 單一用戶端查詢緩衝區的大小上限。變更會立即發生。 | 
| proto-max-bulk-len | 類型：INTEGER<br />允許的值：1048576-536870912<br />預設：536870912 | 單一元素請求的大小上限。變更會立即發生。 | 

## MemoryDB 節點類型特定參數
<a name="parametergroups.redis.nodespecific"></a>

雖然大多數的參數都只有單一值，有些參數則可能會根據所使用的節點類型而有不同的值。下表顯示`maxmemory`每個節點類型的 預設值。`maxmemory` 的值為您在節點上可以用於資料及其他用途的位元組上限。


|  Node type  | Maxmemory  | 
| --- | --- | 
| db.r7g.large | 14037181030 | 
| db.r7g.xlarge | 28261849702 | 
| db.r7g.2xlarge | 56711183565 | 
| db.r7g.4xlarge | 113609865216 | 
| db.r7g.8xlarge | 225000375228 | 
| db.r7g.12xlarge | 341206346547 | 
| db.r7g.16xlarge | 450000750456 | 
| db.r6gd.xlarge | 28261849702 | 
| db.r6gd.2xlarge | 56711183565 | 
| db.r6gd.4xlarge | 113609865216 | 
| db.r6gd.8xlarge | 225000375228 | 
| db.r6g.large | 14037181030 | 
| db.r6g.xlarge | 28261849702 | 
| db.r6g.2xlarge | 56711183565 | 
| db.r6g.4xlarge | 113609865216 | 
| db.r6g.8xlarge | 225000375228 | 
| db.r6g.12xlarge | 341206346547 | 
| db.r6g.16xlarge | 450000750456 | 
| db.t4g.small | 1471026299 | 
| db.t4g.medium | 3317862236 | 

**注意**  
所有 MemoryDB 執行個體類型都必須在 Amazon Virtual Private Cloud VPC 中建立。