Parâmetros específicos do mecanismo - Amazon MemoryDB

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Parâmetros específicos do mecanismo

Se você não especificar um grupo de parâmetros para o cluster do Valkey ou Redis OSS, será usado um grupo de parâmetros padrão apropriado à versão de seu mecanismo. Não é possível alterar os valores de nenhum parâmetro em um grupo de parâmetros padrão. No entanto, é possível criar um grupo de parâmetros personalizado e atribui-lo ao seu cluster a qualquer momento, desde que os valores de parâmetros condicionalmente modificáveis sejam os mesmos nos dois grupos de parâmetros. Para ter mais informações, consulte Criar um parameter group.

Alterações nos parâmetros do Valkey 7 e Redis OSS 7

nota

O MemoryDB apresentou a Pesquisa vetorial que inclui um novo grupo de parâmetros imutáveis default.memorydb-valkey7.search. Esse grupo de parâmetros está disponível no console do MemoryDB e ao criar um novo cluster habilitado para pesquisa vetorial usando o comando da CLI create-cluster. A prévia está disponível nas seguintes regiões da AWS: Leste dos EUA (Norte da Virginia), Leste dos EUA (Ohio), Oeste dos EUA (Oregon), Ásia-Pacífico (Tóquio) e Europa (Irlanda).

Família do grupo de parâmetros: memorydb_valkey7

Os parâmetros adicionados no Valkey 7 e Redis OSS 7 estão listados a seguir.

Nome Detalhes Descrição
latency-tracking

Valores permitidos: yes, no

Padrão: no

Tipo: sequência

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

Quando definido como yes (sim), rastreia as latências por comando e permite exportar a distribuição de percentil por meio do comando de estatísticas de latência do INFO e as distribuições de latência cumulativa (histogramas) por meio do comando LATENCY.

hash-max-listpack-entries

Valores permitidos: 0+

Padrão: 512

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

O número máximo de entradas de hash para que o conjunto de dados seja compactado.

hash-max-listpack-value

Valores permitidos: 0+

Padrão: 64

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

O limite das maiores entradas de hash para que o conjunto de dados seja compactado.

zset-max-listpack-entries

Valores permitidos: 0+

Padrão: 128

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

O número máximo de entradas do conjunto classificado para que o conjunto de dados seja compactado.

zset-max-listpack-value

Valores permitidos: 0+

Padrão: 64

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

O limite das maiores entradas do conjunto classificado para que o conjunto de dados seja compactado.

search-enabled

Valores permitidos: yes, no

Padrão: no

Tipo: sequência

Modificável: sim

As alterações entrarão em vigor: somente para novos clusters.

Versão mínima do mecanismo: 7.1

Quando definido como “yes”, habilita os recursos de pesquisa.

search-query-timeout-ms

Valores permitidos: 1 - 60,000

Padrão: 10,000

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

Versão mínima do mecanismo: 7.1

A quantidade máxima de tempo em milissegundos em que uma consulta de pesquisa pode ser executada.

Os parâmetros alterados no Redis OSS 7 estão listados a seguir.

Nome Detalhes Descrição
activerehashing

Permite modificação: no. No Redis OSS 7, esse parâmetro está oculto e habilitado por padrão. Para desativá-lo, você precisa criar um caso de suporte.

Permite modificação era Sim.

Os parâmetros removidos no Redis OSS 7 estão listados a seguir.

Nome Detalhes Descrição
hash-max-ziplist-entries

Valores permitidos: 0+

Padrão: 512

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

Use listpack em vez de ziplist para representar uma pequena codificação de hash

hash-max-ziplist-value

Valores permitidos: 0+

Padrão: 64

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

Use listpack em vez de ziplist para representar uma pequena codificação de hash

zset-max-ziplist-entries

Valores permitidos: 0+

Padrão: 128

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

Use listpack em vez de ziplist para representar uma pequena codificação de hash.

zset-max-ziplist-value

Valores permitidos: 0+

Padrão: 64

Tipo: inteiro

Modificável: sim

As alterações entrarão em vigor: imediatamente em todos os nós no cluster.

Use listpack em vez de ziplist para representar uma pequena codificação de hash.

Parâmetros do Redis OSS 6

nota

Na versão 6.2 do mecanismo Redis OSS, que apresentou a família de nós r6gd para uso com Classificação de dados em níveis, somente as políticas de memória máxima noeviction, volatile-lru e allkeys-lru são compatíveis com os tipos de nós r6gd.

Família do grupo de parâmetros: memorydb_redis6

Os parâmetros adicionados no Redis OSS 6 estão listados a seguir.

Nome Detalhes Descrição
maxmemory-policy

Tipo: STRING

Valores permitidos: volatile-lru, allkeys-lru, volatile-lfu, allkeys-lfu, volatile-random, allkeys-random, volatile-ttl, noeviction

Padrão: noeviction

A política de remoção de chaves quando o uso máximo da memória é atingido.

Para ter mais informações, consulte Using Redis OSS as an LRU cache.

list-compress-depth

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 0

A profundidade de compactação é o número de nós ziplist de lista rápida de cada lado da lista a serem excluídos da compactação. O início e o final cauda da lista são sempre descompactados para operações Push e Pop rápidas. As configurações são:
  • 0: desabilitar toda a compactação.

  • 1: começar a compactar com o 1º nó de início e final.

    [início] -> nó-> nó -> ...-> nó -> [final]

    Todos os nós, exceto [início] e [final] são compactados.

  • 2: começar a compactar com o 2º nó de início e final.

    [início] -> [próximo] -> nó-> nó -> ...-> nó -> [anterior] -> [final]

    [início], [próximo], [anterior], [final] não são compactados. Todos os outros nós são compactados.

  • Etc.

hll-sparse-max-bytes

Tipo: INTEGER

Valores permitidos: 1-16000

Padrão: 3000

Limite de bytes de representação esparsa de HyperLogLog. O limite inclui o cabeçalho de 16 bytes. Quando um HyperLogLog usando a representação esparsa ultrapassar esse limite, ele será convertido na representação densa.

Não é recomendado um valor superior a 16000, porque, nesse ponto, a representação densa é mais eficiente em termos de memória.

Recomendamos um valor de 3000 para ter os benefícios da codificação eficiente do espaço sem diminuir demais o PFADD, que é O(N) com a codificação esparsa. O valor pode ser aumentado para ~10000 quando a CPU não é uma preocupação, mas o espaço sim, e o conjunto de dados for composto por muitos HyperLogLogs com cardinalidade no intervalo de 0 a 15000.

lfu-log-factor

Tipo: INTEGER

Valores permitidos: 1-

Padrão: 10

O fator do log para incrementar o contador de chaves da política de remoção da LFU.

lfu-decay-time

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 1

A quantidade de tempo, em minutos, para diminuir o contador de chaves da política de remoção da LFU.

active-defrag-max-scan-fields

Tipo: INTEGER

Valores permitidos: 1-1000000

Padrão: 1000

Número máximo de campos set/hash/zset/list que serão processados a partir da varredura do dicionário principal durante a desfragmentação ativa.

active-defrag-threshold-upper

Tipo: INTEGER

Valores permitidos: 1-100

Padrão: 100

Porcentagem máxima de fragmentação em que usamos o esforço máximo.

client-output-buffer-limit-pubsub-hard-limit

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 33554432

Para clientes de publicação/assinatura do Redis OSS: se o buffer de saída de um cliente atingir o número especificado de bytes, o cliente será desconectado.

client-output-buffer-limit-pubsub-soft-limit

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 8388608

Para clientes de publicação/assinatura do Redis OSS: se o buffer de saída de um cliente atingir o número especificado de bytes, o cliente será desconectado, mas somente se essa condição persistir por client-output-buffer-limit-pubsub-soft-seconds.

client-output-buffer-limit-pubsub-soft-seconds

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 60

Para clientes de publicação/assinatura do Redis OSS: se o buffer de saída de um cliente permanecer em client-output-buffer-limit-pubsub-soft-limit bytes por mais tempo que esse número de segundos, o cliente será desconectado.

timeout

Tipo: INTEGER

Valores permitidos: 0,20-

Padrão: 0

O número de segundos que um nó espera antes do tempo limite. Os valores são:

  • 0: nunca desconectar um cliente ocioso.

  • 1-19: valores inválidos.

  • >=20: o número de segundos que um nó espera antes de desconectar um cliente ocioso.

notify-keyspace-events

Tipo: STRING

Valores permitidos: NULL

Padrão: NULL

Os eventos do espaço de chaves para o Redis OSS notificar os clientes de Pub/Sub. Por padrão, todas as notificações estão desabilitadas.

maxmemory-samples

Tipo: INTEGER

Valores permitidos: 1-

Padrão: 3

Para cálculos de (LRU) e time-to-live (TTL) usados menos recentemente, esse parâmetro representa o tamanho da amostra de chaves a serem verificadas. Por padrão, o Redis OSS escolhe três chaves e usa a que foi usada menos recentemente.

slowlog-max-len

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 128

O comprimento máximo do Redis OSS Slow Log. Não há limite para esse comprimento. Esteja ciente de que isso consumirá memória. Você pode recuperar a memória usada pelo log lento com SLOWLOG RESET.

activerehashing

Tipo: STRING

Valores permitidos: sim,não

Padrão: sim

A tabela de hash principal é sofre rehashing dez vezes por segundo. Cada operação de rehash consome 1 milissegundo de tempo da CPU.

Esse valor é definido quando você cria o grupo de parâmetros. Ao atribuir um novo grupo de parâmetros a um cluster, esse valor deve ser o mesmo nos grupo de parâmetros antigo e novo.

client-output-buffer-limit-normal-hard-limit

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 0

Se o buffer de saída de um cliente atingir o número especificado de bytes, o cliente será desconectado. O padrão é zero (sem limite fixo).

client-output-buffer-limit-normal-soft-limit

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 0

Se o buffer de saída de um cliente atingir o número especificado de bytes, o cliente será desconectado, mas somente se essa condição persistir por client-output-buffer-limit-normal-soft-seconds. O padrão é zero (sem limite flexível).

client-output-buffer-limit-normal-soft-seconds

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 0

Se o buffer de saída de um cliente permanecer em client-output-buffer-limit-normal-soft-limit bytes por mais tempo que esse número de segundos, o cliente será desconectado. O padrão é zero (sem limite de tempo).

tcp-keepalive

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 300

Se estiver definido como um valor diferente de zero (N), os clientes do nó são sondados a cada N segundos para garantir que ainda estejam conectados. Com a configuração padrão de 0, essa sondagem não ocorre.

active-defrag-cycle-min

Tipo: INTEGER

Valores permitidos: 1-75

Padrão: 5

Esforço mínimo para desfragmentação em porcentagem de CPU.

stream-node-max-bytes

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 4096

A estrutura do fluxo de dados é uma árvore radix de nós que codifica vários itens dentro. Use esta configuração para especificar o tamanho máximo de um nó único em uma árvore radix em bytes. Se definido como 0, o tamanho do nó da árvore é ilimitado.

stream-node-max-entries

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 100

A estrutura do fluxo de dados é uma árvore radix de nós que codifica vários itens dentro. Use essa configuração para especificar o número máximo de itens que um único nó pode conter antes de alternar para um novo nó ao anexar novas entradas de fluxo. Se definido como 0, o número de itens no nó da árvore é ilimitado.

lazyfree-lazy-eviction

Tipo: STRING

Valores permitidos: sim,não

Padrão: não

Realiza uma exclusão assíncrona em remoções.

active-defrag-ignore-bytes

Tipo: INTEGER

Valores permitidos: 1048576-

Padrão: 104857600

Quantidade mínima de desperdício de fragmentação para iniciar a desfragmentação ativa.

lazyfree-lazy-expire

Tipo: STRING

Valores permitidos: sim,não

Padrão: não

Realiza uma exclusão assíncrona em chaves expiradas.

active-defrag-threshold-lower

Tipo: INTEGER

Valores permitidos: 1-100

Padrão: 10

Porcentagem mínima de fragmentação para iniciar a desfragmentação ativa.

active-defrag-cycle-max

Tipo: INTEGER

Valores permitidos: 1-75

Padrão: 75

Esforço máximo para desfragmentação em porcentagem de CPU.

lazyfree-lazy-server-del

Tipo: STRING

Valores permitidos: sim,não

Padrão: não

Realiza uma exclusão assíncrona para comandos que atualizam valores.

slowlog-log-slower-than

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 10000

O tempo máximo de execução, em microssegundos, que precisa ser excedido para que o comando seja registrado em log pelo recurso Redis OSS Slow Log. Observe que um número negativo desativa o log lento, enquanto um valor de zero força o log de todos os comandos.

hash-max-ziplist-entries

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 512

Determina a quantidade de memória usada para hashes. Hashes com menos que o número especificado de entradas são armazenados usando uma codificação especial que economiza espaço.

hash-max-ziplist-value

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 64

Determina a quantidade de memória usada para hashes. Hashes com entradas menores que o número especificado de bytes são armazenados usando uma codificação especial que economiza espaço.

set-max-intset-entries

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 512

Determina a quantidade de memória utilizada para certos tipos de conjuntos (strings que são inteiros em radix 10 no intervalo de inteiros de 64 bits com sinal). Esses conjuntos com menos que o número especificado de entradas são armazenados usando uma codificação especial que economiza espaço.

zset-max-ziplist-entries

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 128

Determina a quantidade de memória utilizada para conjuntos classificados. Os conjuntos classificados com menos que o número especificado de elementos são armazenados usando uma codificação especial que economiza espaço.

zset-max-ziplist-value

Tipo: INTEGER

Valores permitidos: 0-

Padrão: 64

Determina a quantidade de memória utilizada para conjuntos classificados. Os conjuntos classificados com entradas menores que o número especificado de bytes são armazenados usando uma codificação especial que economiza espaço.

tracking-table-max-keys

Tipo: INTEGER

Valores permitidos: 1-100000000

Padrão: 1000000

Para auxiliar no armazenamento em cache do lado do cliente, o Redis OSS oferece suporte ao monitoramento de quais clientes acessaram quais chaves.

Quando a chave monitorada é modificada, mensagens de invalidação são enviadas a todos os clientes para notificá-los que seus valores armazenados em cache não são mais válidos. Esse valor permite que você especifique o limite superior desta tabela.

acllog-max-len

Tipo: INTEGER

Valores permitidos: 1-10000

Padrão: 128

O número máximo de entradas no log da ACL.

active-expire-effort

Tipo: INTEGER

Valores permitidos: 1-10

Padrão: 1

O Redis OSS exclui chaves que excederam seu tempo de vida por dois mecanismos. Em um, uma chave é acessada e se descobre que ela está expirada. No outro, um trabalho periódico amostra as chaves e faz com que aquelas que excederam seu tempo de vida expirem. Esse parâmetro define a quantidade de esforço que o Redis OSS usa para expirar itens no trabalho periódico.

O valor padrão de 1 tenta evitar ter mais de 10 por cento das chaves expiradas ainda na memória. Ele também tenta evitar consumir mais de 25% da memória total e adicionar latência ao sistema. Você pode aumentar esse valor até 10 para aumentar a quantidade de esforço gasto em chaves expirando. A compensação é mais CPU e latência potencialmente maior. Recomendamos um valor de 1, a menos que você esteja vendo alto uso de memória e possa tolerar um aumento na utilização da CPU.

lazyfree-lazy-user-del

Tipo: STRING

Valores permitidos: sim,não

Padrão: não

Especifica se o comportamento padrão do comando DEL age da mesma forma que UNLINK.

activedefrag

Tipo: STRING

Valores permitidos: sim,não

Padrão: não

Desfragmentação ativa da memória habilitada.

maxclients

Tipo: INTEGER

Valores permitidos: 65000

Padrão: 65000

O número máximo de clientes que podem ser conectados ao mesmo tempo. Não modificável.

client-query-buffer-limit

Tipo: INTEGER

Valores permitidos: 1048576-1073741824

Padrão: 1073741824

Tamanho máximo de um único buffer de consulta do cliente. As alterações ocorrem imediatamente

proto-max-bulk-len

Tipo: INTEGER

Valores permitidos: 1048576-536870912

Padrão: 536870912

Tamanho máximo de uma única solicitação de elemento. As alterações ocorrem imediatamente

Parâmetros específicos do tipo de nó do MemoryDB

Embora a maioria dos parâmetros tenha um valor único, alguns parâmetros têm valores diferentes dependendo do tipo de nó usado. A tabela a seguir mostra o valor padrão para o maxmemory para cada tipo de nó. O valor de maxmemory é o número máximo de bytes disponíveis para uso, dados e outros usos no nó.

Tipo de nó 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
nota

Todos os tipos de instâncias do MemoryDB devem ser criados em uma nuvem privada virtual (VPC) da Amazon.