Todos os produtos
Search
Central de documentação

Database Autonomy Service:Fragmentação de memória do Redis

Última atualização: Jun 27, 2026

O Database Autonomy Service (DAS) considera a taxa de fragmentação de memória como um fator em seu recurso de inspeção e pontuação para instâncias Redis. Este tópico explica o que é fragmentação de memória, suas causas, como medi-la e quando tomar medidas corretivas.

Como funciona a fragmentação de memória

A fragmentação de memória ocorre quando há memória livre disponível, mas ela está dividida em segmentos pequenos e não contíguos. Mesmo que a memória livre total ultrapasse N bytes, o sistema operacional não consegue atender a uma solicitação de um bloco contíguo de N bytes — esses segmentos dispersos constituem os fragmentos de memória.

No Tair (Redis OSS-Compatible), os fragmentos de memória não reduzem a memória disponível alocada à sua instância nem geram custos adicionais.

Nota

Por exemplo, se uma instância Tair (Redis OSS-Compatible) tem capacidade de 1 GB com 700 MB em uso, os 300 MB restantes (1 GB − 700 MB) permanecem disponíveis mesmo que a taxa de fragmentação de memória atinja 2 — o que significa que os dados ocupam fisicamente 2 GB de memória do sistema.

Causas da fragmentação de memória

A fragmentação de memória tem duas causas principais.

Comportamento do alocador de memória (interna)

O Redis suporta múltiplos alocadores de memória: libc, jemalloc e tcmalloc. O jemalloc é o padrão. Em vez de alocar exatamente a quantidade de memória que uma aplicação solicita, o jemalloc arredonda o valor para o limite de potência de dois mais próximo — 8 bytes, 16 bytes, 32 bytes, 2 KB, 4 KB e assim por diante. A diferença entre a quantidade solicitada e a quantidade alocada torna-se um fragmento.

Rotatividade de pares chave-valor (externa)

Quando pares chave-valor são modificados ou excluídos, a memória que ocupavam é liberada ou redimensionada. Como os blocos alocados raramente correspondem exatamente ao novo tamanho dos dados, as lacunas se acumulam ao longo do tempo.

Verifique a taxa de fragmentação de memória

Execute o seguinte comando no DAS para visualizar detalhes do uso de memória:

INFO memory

A saída inclui:

# Memory
used_memory:350458970752
used_memory_human:326.39G
used_memory_rss:349066919936
used_memory_rss_human:325.09G
…
mem_fragmentation_ratio:1.00

Campo

Descrição

used_memory

Memória que o Redis solicitou para armazenar dados

used_memory_rss

Memória física que o sistema operacional alocou ao Redis, incluindo a sobrecarga de fragmentação

mem_fragmentation_ratio

Taxa atual de fragmentação de memória

A taxa é calculada da seguinte forma:

mem_fragmentation_ratio = used_memory_rss / used_memory

Interpretação da taxa

Taxa

Status

Ação recomendada

1,0–1,5

Normal

Nenhuma ação necessária

> 1,5

Alta

A memória fragmentada excede metade da memória utilizada — investigue e tome medidas corretivas

Instruções

  1. Leia o conteúdo em inglês para compreender O QUE precisa ser comunicado

  2. Escreva o texto em português do Brasil DO ZERO — esqueça a estrutura das frases em inglês

  3. Preserve toda a formatação markdown, blocos de código, links e imagens exatamente como estão

  4. Tags xref (<a data-tag="xref" ...>texto</a>) — preserve a tag INTEIRA com todos os atributos na ordem e caixa originais, traduza APENAS o texto visível entre > e

  5. Aplique todas as regras específicas do idioma rigorosamente

  6. Aplique as regras de stopwords com tolerância zero

  7. Use o modo imperativo em passos numerados e listas de procedimentos

  8. Garanta a consistência terminológica — o mesmo termo deve ter a mesma tradução em todo o documento

  9. Varie os inícios das frases em listas e tabelas — nenhum início deve se repetir 3 vezes ou mais

  10. Retorne APENAS o documento markdown em português do Brasil, sem explicações