Classificação de dados em níveis - Amazon MemoryDB

Classificação de dados em níveis

Os clusters que usam um tipo de nó da família r6gd têm seus dados classificados em níveis entre a memória e o armazenamento local em unidades de estado sólido (Solid state Drives, SSD). A classificação de dados em níveis fornece uma nova opção de relação entre preço e desempenho para workloads do Valkey e Redis OSS, utilizando unidades de estado sólido (SSDs) de menor custo em cada nó de cluster, além do armazenamento de dados na memória. Semelhante a outros tipos de nós, os dados gravados nos nós r6gd são armazenados de forma durável em um log de transações Multi-AZ. A classificação de dados em níveis é ideal para workloads que acessam regularmente até 20% do conjunto de dados geral e para aplicações que podem tolerar latência adicional ao acessar dados em SSD.

Em clusters com classificação de dados em níveis, o MemoryDB monitora o último horário de acesso de cada item armazenado. Quando a memória disponível (DRAM) é totalmente consumida, o MemoryDB usa um algoritmo usado menos recentemente (Least-Recently Used, LRU) para mover automaticamente da memória para o SSD os itens acessados com pouca frequência. Quando os dados em SSD são acessados posteriormente, o MemoryDB os move de modo automático e assíncrono de volta para a memória antes de processar a solicitação. Se você tiver uma workload que acessa regularmente apenas um subconjunto de dados, a classificação de dados em níveis é uma maneira ideal de dimensionar sua capacidade de modo econômico.

Observe que, ao usar a classificação por níveis, as próprias chaves sempre permanecem na memória, enquanto a LRU controla a colocação de valores na memória versus disco. Em geral, recomendamos que seus tamanhos de chave sejam menores do que seus tamanhos de valor ao usar a classificação por níveis de dados.

A classificação de dados em níveis foi projetada para causar impacto mínimo na performance das workload da aplicação. Por exemplo, supondo valores de string de 500 bytes, você pode esperar um adicional de 450 microssegundos de latência para solicitações de leitura de dados armazenados em SSD em comparação com solicitações de leitura de dados na memória.

Com o maior tamanho de nó de classificação de dados (db.r6gd.8xlarge), é possível armazenar até mais ou menos 500 TB em um único cluster de 500 nós (250 TB ao usar 1 réplica de leitura). Para a classificação de dados em níveis, o MemoryDB reserva 19% da memória (DRAM) por nó para uso não relacionado a dados. A classificação de dados em níveis é compatível com todos os comandos e estruturas de dados do Valkey e Redis OSS compatíveis com o MemoryDB. Para usar esse recurso, não é necessário promover alterações no lado do cliente.