Armazenamento de grandes itens compostos (Valkey e Redis) OSS - Amazon ElastiCache

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á.

Armazenamento de grandes itens compostos (Valkey e Redis) OSS

Em alguns cenários, um aplicativo pode armazenar grandes itens compostos no Valkey ou no Redis OSS (como um conjunto de dados de hash de vários GB). Essa não é uma prática recomendada porque geralmente leva a problemas de desempenho no Valkey ou no RedisOSS. Por exemplo, o cliente pode executar um HGETALL comando para recuperar toda a coleção de hash de vários GB. Isso pode gerar uma pressão significativa de memória para o OSS servidor Valkey ou Redis, armazenando em buffer o item grande no buffer de saída do cliente. Além disso, para migração de slots no modo de cluster, ElastiCache não migra slots que contenham itens com tamanho serializado maior que 256 MB.

Para resolver os problemas de itens grandes, temos as seguintes recomendações:

  • Divida o item composto grande em vários itens menores. Por exemplo, divida uma coleção de hash grande em campos de valor-chave individuais com um esquema de nome de chave que reflita da maneira indicada a coleção, como o uso de um prefixo comum no nome da chave para identificar a coleção de itens. Se você precisar acessar vários campos na mesma coleção atomicamente, poderá usar o MGET comando para recuperar vários valores-chave no mesmo comando.

  • Se você tiver avaliado todas as opções e ainda não tiver conseguido dividir o conjunto de dados da coleção grande, tente usar comandos que operem em um subconjunto dos dados na coleção, e não em toda a coleção. Evite ter um caso de uso que exija que você recupere atomicamente toda a coleção de vários GB no mesmo comando. Um exemplo é usar HMGET comandos HGET or em vez de HGETALL em coleções de hash.