Valkey 8 lançado com melhorias em velocidade e eficiência

E foi lançado o Valkey 8 com melhorias em velocidade e eficiência, e mais. Confira as novidades e veja como instalar no Linux.

Devido à mudança da política de licenciamento do Redis e ao afastamento do software livre, o projeto Valkey surgiu como uma resposta a essa decisão, apoiado por grandes gigantes de TI como Google, Oracle e AWS.

Dito isso, o Valkey é um armazenamento de dados em memória de código aberto que segue a mesma ideia do Redis.

Sendo mais detalhista, o Valkey é um datastore de chave/valor de alto desempenho de código aberto (BSD) que suporta uma variedade de cargas de trabalho, como cache, filas de mensagens e pode atuar como um banco de dados primário.

E o Valkey pode ser executado como um daemon autônomo ou em um cluster , com opções para replicação e alta disponibilidade .

Além disso, o Valkey suporta nativamente uma rica coleção de tipos de dados, incluindo strings, numbers, hashes, lists, sets, sorted sets, bitmaps , hyperloglogs e muito mais. Você pode operar em estruturas de dados no local com uma coleção expressiva de comandos.

O Valkey também suporta extensibilidade nativa com suporte de script integrado para Lua e suporta plugins de módulo para criar novos comandos, tipos de dados e muito mais.

Agora, os desenvolvedores do Valkey anunciaram a disponibilidade geral da nova versão 8.0, marcando um marco significativo na evolução do projeto.

Novidades do Valkey 8

Valkey 8 lançado com melhorias em velocidade e eficiência
Valkey 8 lançado com melhorias em velocidade e eficiência

O Valkey 8.0 promete desempenho superior, lidando com até 1,2 milhão de consultas por segundo.

Embora a versão inicial, 7.2.5, lançada há mais de cinco meses, tenha se concentrado na compatibilidade e continuidade da licença, esta grande atualização apresenta muitos novos recursos para melhorar a velocidade, eficiência e confiabilidade.

O Valkey 8.0 apresenta melhorias substanciais ao sistema de threading de E/S existente. Notavelmente, o threading de E/S assíncrono permite que os threads principal e de E/S operem simultaneamente, maximizando o rendimento e minimizando gargalos.

Além disso, a utilização inteligente do núcleo distribui tarefas de E/S em vários núcleos com base no uso em tempo real, reduzindo o tempo ocioso e melhorando a eficiência energética.

Outro aprimoramento importante é o loteamento de comandos, que otimiza os padrões de acesso à memória ao pré-buscar dados acessados ​​com frequência. Isso minimiza as perdas de cache da CPU e reduz o número de acessos à memória necessários para operações de dicionário.

No total, essas melhorias permitem que o Valkey 8.0 manipule até 1,2 milhão de consultas por segundo (QPS) na plataforma r7g da AWS, um aumento significativo em relação ao limite anterior de 380 mil QPS.

A nova versão principal também melhora as operações de dimensionamento de cluster por meio de migrações de slot. Agora, o failover automático para fragmentos vazios garante alta disponibilidade desde o início do processo de dimensionamento.

Além disso, a replicação dos estados de migração de slot sincroniza todos os comandos CLUSTER SETSLOT para réplicas antes da execução no nó primário. Isso reduz a chance de indisponibilidade se o primário falhar.

Em termos de replicação, o Valkey 8.0 introduz um esquema de replicação de canal duplo. Isso permite que o RDB (arquivo do banco de dados Redis) e o backlog da réplica sejam transferidos simultaneamente, acelerando a sincronização.

O nó primário sofre pressão de memória reduzida, e a conexão dedicada para transferência de RDB libera recursos para lidar com consultas de clientes de forma mais eficiente.

O Valkey 8.0 apresenta uma infraestrutura abrangente de métricas por slot, fornecendo visibilidade detalhada do desempenho e uso de recursos de slots individuais.

Isso inclui rastrear as contagens de chaves de cada slot, uso da CPU e bytes de entrada/saída da rede. Os benchmarks iniciais indicam que habilitar essas métricas detalhadas incorre em uma sobrecarga insignificante de aproximadamente 0,7% em QPS.

Os ganhos de eficiência também são realizados por meio de reduções na sobrecarga de memória. As chaves agora são incorporadas no dicionário principal, eliminando ponteiros de chave separados e reduzindo significativamente o uso de memória.

Para cenários com chaves de 16 bytes e valores de 8 ou 16 bytes, os usuários podem esperar uma redução de 9 a 10% no uso geral de memória, juntamente com melhorias de desempenho.

O Valkey 8.0 também traz vários outros recursos dignos de nota:

  • Suporte a pilha dupla IPv4 e IPv6: opere perfeitamente em ambientes de IP mistos para compatibilidade e flexibilidade aprimoradas.
  • Eficiência aprimorada de Pub/Sub: mensagens de cluster leves otimizam a comunicação, reduzindo a sobrecarga para operações mais rápidas.
  • Valkey sobre RDMA (experimental): o acesso direto à memória entre clientes e servidores Valkey desbloqueia melhorias significativas de desempenho, proporcionando um aumento de até 275% na taxa de transferência.

Para saber mais sobre essa versão do Valkey, acesse a nota de lançamento.

Como instalar ou atualizar o Valkey

Para instalar a versão mais recente do Valkey nas principais distribuições Linux, leia a página de documentação da instalação do software.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.