Redis Adota Bitmaps Comprimidos para Otimizar Armazenamento
Aprofundamento CEVIU
Aprofundamento
O Redis, conhecido por sua alta performance como banco de dados em memória, sempre buscou otimizar o uso de recursos. A novidade dos bitmaps comprimidos, que serão incluídos no Redis 8.12, mira diretamente um ponto sensível: o armazenamento de conjuntos de inteiros esparsos. Antes, um bitmap tradicional no Redis era armazenado como uma string, onde cada bit representava um estado. O problema surge quando você tem um ID alto, mas pouquíssimos bits ativados. Para definir um bit na posição quatro bilhões, por exemplo, o Redis alocaria cerca de 512 MB, e operações como BITCOUNT ou BITOP precisariam escanear todo esse bloco.
A tecnologia Roaring, que já é usada em sistemas como Elasticsearch, Apache Spark e ClickHouse, resolve isso de forma inteligente. Em vez de uma longa sequência de bits, o Roaring adapta a forma de armazenamento. Regiões esparsas são guardadas como listas de inteiros, regiões densas continuam como bitsets normais e sequências de valores consecutivos são representadas por 'runs'. Isso permite que a compressão seja muito mais eficiente para dados esparsos. A nova funcionalidade é opcional e pode ser ativada com um simples comando CONFIG SET bitmap-default-roaring yes, entregando ganhos de velocidade e economia de memória em cenários bem específicos.
O que mudou
A introdução de bitmaps comprimidos no Redis 8.12 é mais um passo na evolução contínua da performance e otimização de recursos do banco de dados, seguindo um caminho que o CEVIU News vem acompanhando. Em junho de 2026, noticiamos que o Redis 8.2 trouxe melhorias de performance e redução no consumo de memória, demonstrando o foco persistente da equipe de desenvolvimento. Agora, os bitmaps comprimidos estendem essa otimização para um tipo de dado e um cenário de uso muito específicos. Essa novidade também ecoa a tendência de aprimorar tipos de dados internos para lidar com casos de uso complexos e eficientes, algo que vimos com a discussão sobre a inclusão de um tipo de dado Array, como reportado em maio de 2026, com o próprio Salvatore Sanfilippo submetendo um PR.
Por que isso importa
Para desenvolvedores e arquitetos, essa otimização significa menos dores de cabeça com gerenciamento de memória em aplicações que usam muitos bitmaps esparsos. Imagine sistemas de análise de dados, rastreamento de usuários ou flags de funcionalidades, onde você precisa registrar centenas de milhões de IDs, mas apenas uma pequena fração está ativa em determinado momento. Com Roaring, o consumo de memória cai drasticamente, e operações de conjunto (interseção, união, contagem) se tornam muito mais rápidas, já que não precisam varrer enormes blocos de memória vazios. Isso libera recursos do servidor, reduz a latência e aumenta a escalabilidade, tornando o Redis ainda mais potente para cargas de trabalho intensivas em dados.
Linha do tempo
Salvatore Sanfilippo submete Pull Request para adicionar tipo de dado Arrays ao Redis.
CEVIU News detalha o longo desenvolvimento do tipo Redis Array, ainda em revisão.
CEVIU News publica panorama das novidades do Redis 8.2 e versões recentes.
Redis implementa bitmaps comprimidos usando tecnologia Roaring para otimizar armazenamento.
Perguntas frequentes
O que são bitmaps comprimidos no Redis?
Bitmaps comprimidos são uma nova forma de armazenar conjuntos de inteiros no Redis, utilizando a tecnologia Roaring. Eles otimizam o uso de memória e a performance de operações para conjuntos de dados esparsos, onde poucos bits estão ativos em uma grande faixa de valores.
Qual é a tecnologia por trás dos bitmaps comprimidos no Redis?
A tecnologia principal é a Roaring. Ela se adapta aos dados, armazenando regiões esparsas como listas de inteiros, regiões densas como bitsets tradicionais e trechos consecutivos de valores como 'runs', resultando em maior eficiência de armazenamento e velocidade para operações.
Quais os principais benefícios de usar bitmaps comprimidos no Redis?
Os principais benefícios são a redução significativa do espaço de armazenamento, especialmente para grandes conjuntos de inteiros esparsos, e o aumento da velocidade em operações como contagem de bits (BITCOUNT) e operações lógicas (BITOP), melhorando a performance geral do sistema.
Como faço para ativar os bitmaps comprimidos no meu ambiente Redis?
A funcionalidade é opcional e será ativada via configuração. Você pode habilitá-la executando o comando CONFIG SET bitmap-default-roaring yes no seu servidor Redis, uma vez que a versão 8.12 esteja disponível e instalada.
Fontes
- lemire.mefonte original
- Categoria
- CEVIU
- Publicado
- 16 de outubro de 2026
- Editoria
- CEVIU

