Armazenamento de itens compostos grandes (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 itens compostos grandes (Valkey e Redis OSS)

Em alguns cenários, uma aplicação pode armazenar itens compostos grandes no Valkey ou Redis OSS (como um conjunto de dados hash de vários GB). Não se trata de uma prática recomendada porque ela normalmente acarreta problemas de desempenho no Valkey ou Redis OSS. Por exemplo, o cliente pode executar um comando HGETALL para recuperar toda a coleção hash de vários GB. Isso pode gerar uma pressão de memória significativa para o servidor Valkey ou Redis OSS, 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 precisar acessar vários campos na mesma coleção atomicamente, você poderá usar o comando MGET 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 os comandos HGET ou HMGET em vez de HGETALL em coleções de hash.