Um armazenamento de dados em memória compatível com as APIs do Redis e do Memcached, criado para substituir ambos sem mudanças nas aplicações.
Snapchat/KeyDB
Banco de dados em memória multithread compatível com Redis e substituto direto, com replicação active-active e armazenamento FLASH opcional.
Alternativa open source a:Redis
- Estrelas
- 12,498
- Forks
- 679
- Issues abertas
- 295
- Último commit
- há 16 dias
O que é?
KeyDB é um fork de alto desempenho do Redis, com foco em multithreading, eficiência no uso de memória e throughput. Mantém compatibilidade total com o protocolo, os módulos e os scripts do Redis, permitindo migrar implantações existentes sem alterar clientes nem o código da aplicação.
Além dos recursos do Redis, o KeyDB oferece replicação active-active, que permite que várias instâncias aceitem leituras e gravações enquanto permanecem sincronizadas, além de simplificar o balanceamento de carga baseado em TCP e o failover com instância de reserva. Também oferece armazenamento FLASH em SSDs locais, expiração de subchaves e opções para exportar e importar dumps no S3. Seu design MVCC permite que comandos como KEYS e SCAN sejam executados sem bloquear o banco de dados.
O KeyDB roda no Linux, onde seu processo de build também é testado. O multithreading é controlado por opções como server-threads e configurações de balanceamento de clientes, e o TLS vem habilitado por padrão nos builds.
Recursos principais
- 01Processamento multithread de requisições, compatível com o protocolo, os módulos e os scripts do Redis.
- 02Replicação active-active para que várias instâncias possam aceitar leituras e gravações.
- 03Armazenamento FLASH em SSDs locais (experimental).
- 04Expiração de subchaves e execução não bloqueante de KEYS e SCAN com base em MVCC.
- 05Opções para exportar e importar dumps no AWS S3.
Casos de uso
- Substituir uma implantação existente do Redis para obter maior throughput no mesmo hardware.
- Executar uma camada de cache em que várias instâncias precisam atender gravações e leituras em conjunto.
- Reduzir a quantidade de servidores processando mais carga por nó.
Início rápido
- 1
Instale as dependências de compilação no Debian/Ubuntu
sudo apt install build-essential nasm autotools-dev autoconf libjemalloc-dev tcl tcl-dev uuid-dev libcurl4-openssl-dev libbz2-dev libzstd-dev liblz4-dev libsnappy-dev libssl-dev - 2
Inicialize e atualize as dependências dos submódulos
git submodule init && git submodule update - 3
Compile o KeyDB
make - 4
No diretório src, inicie o servidor com a configuração padrão
./keydb-server
Antes de usar
- A compilação e os testes são feitos somente no Linux, pois dependem do Linux SO_REUSEPORT.
- O armazenamento FLASH é experimental (beta) e deve ser usado com cautela.
- Não há suporte pago; a ajuda é oferecida pelos canais da comunidade.
Em coleções
Tópicos
Perguntas frequentes
- O que é KeyDB?
- Banco de dados em memória multithread compatível com Redis e substituto direto, com replicação active-active e armazenamento FLASH opcional. KeyDB é um fork de alto desempenho do Redis, com foco em multithreading, eficiência no uso de memória e throughput. Mantém compatibilidade total com o protocolo, os módulos e os scripts do Redis, permitindo migrar implantações existentes sem alterar clientes nem o código da aplicação.
- KeyDB é gratuito? Qual é a licença?
- KeyDB é open source sob a licença BSD-3-Clause. Confira os termos da licença antes de usá-lo em produtos comerciais.
- KeyDB ainda é mantido?
- Manutenção ativa. O último commit de KeyDB foi em 22 de out. de 2026.
- Para que posso usar KeyDB?
- Substituir uma implantação existente do Redis para obter maior throughput no mesmo hardware. Executar uma camada de cache em que várias instâncias precisam atender gravações e leituras em conjunto. Reduzir a quantidade de servidores processando mais carga por nó.
- Como instalar KeyDB?
- Instale as dependências de compilação no Debian/Ubuntu: sudo apt install build-essential nasm autotools-dev autoconf libjemalloc-dev tcl tcl-dev uuid-dev libcurl4-openssl-dev libbz2-dev libzstd-dev liblz4-dev libsnappy-dev libssl-dev Inicialize e atualize as dependências dos submódulos: git submodule init && git submodule update Compile o KeyDB: make No diretório src, inicie o servidor com a configuração padrão: ./keydb-server
- Onde consigo KeyDB?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Snapchat/KeyDB
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Servidor de estruturas de dados de alto desempenho e compatível com Redis, derivado do Redis, voltado para cache e cargas de trabalho em tempo real.
Um cache-store remoto em C# que usa o protocolo Redis RESP, permitindo que clientes Redis existentes se conectem sem alterações.
Servidor de chave-valor em memória compatível com Redis e Valkey, escrito em Rust, com busca integrada de texto completo e vetorial.
Banco de dados NoSQL distribuído de chave-valor que usa RocksDB para armazenamento e fala o protocolo Redis, permitindo conectar clientes Redis existentes.
Biblioteca de armazenamento chave-valor para Node.js, com expiração por TTL e backends intercambiáveis, como Redis, MongoDB, SQLite e PostgreSQL.