Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

Benchmark de desempenho do Redis no Azure – ScaleGrid para Redis™ vs. Cache do Azure

O Redis é um armazenamento avançado de valores-chave. Na verdade, é o armazenamento de valor chave número um e o oitavo banco de dados mais popular do mundo. Ele tem alta taxa de transferência e é executado a partir da memória, mas também tem a capacidade de persistir dados no disco. O Redis é uma ótima solução de armazenamento em cache para aplicativos altamente exigentes, e há muitas soluções disponíveis para ajudá-lo a implantar e gerenciar o Redis na nuvem. Nesta postagem, compararemos os recursos de desempenho e gerenciamento do ScaleGrid para Redis™ com o do Azure Cache para Redis para ajudá-lo a escolher a melhor solução gerenciada para sua implantação do Redis.

ScaleGrid é um provedor de DBaaS que fornece hospedagem totalmente gerenciada não apenas para Redis™, mas também para banco de dados MongoDB®, MySQL e PostgreSQL. O plano Bring Your Own Cloud (BYOC) hospeda o servidor de banco de dados em sua própria conta AWS, Azure ou GCP.

O Azure fornece um serviço hospedado para Redis chamado Cache do Azure para Redis.

Em resumo – TLDR

Desempenho de rendimento


Testando o desempenho da taxa de transferência O ScaleGrid for Redis™ consegue atingir uma taxa de transferência até 5 vezes maior em comparação com o Cache do Azure para Redis. Leia agora

Desempenho de latência


Com uma latência média de 85% menor, ScaleGrid for Redis™ supera o Azure Cache for Redis ao testar em todas as contagens de conexão. Leia agora

Configuração de benchmark


Veja as configurações usadas neste benchmark de desempenho. Leia agora

ScaleGrid for Redis™ vs. Azure Cache for Redis Performance Benchmark

Neste benchmark, medimos o desempenho em taxa de transferência e latência. A taxa de transferência é medida em operações por segundo (ops/s) e a latência em microssegundos. Confira nossa seção Configurações de benchmark mais adiante neste post para obter informações sobre como esse benchmark de desempenho foi configurado.

Avaliamos o desempenho do Redis™ com as seguintes configurações.

Provedor Tamanho do plano RAM Custo Mensal
ScaleGrid for Redis™ Hospedagem Dedicada Grande no Azure 7 GB de memória $607
Cache do Azure para Redis Padrão C3 – largura de banda de rede moderada 6 GB de memória $328,50
Cache do Azure para Redis P1 Premium – largura de banda de rede moderada 6 GB de memória $404,42
Cache do Azure para Redis P2 Premium – Alta largura de banda de rede 13 GB de memória $810,30

Desempenho de rendimento



Conexões ScaleGrid for Redis™
Azure Cache
C3 Std. 6 GB
Azure Cache
P1 6GB
Azure Cache
P2 13GB
Melhoria do ScaleGrid
100 134.667 16.461 19.881 38.459 439%
200 147.551 16.246 25.361 35.459 474%
300 152.341 15.872 25.346 35.045 499%
400 152.624 15.235 19.043 37.301 539%
Como podemos ver no gráfico acima, ScaleGrid for Redis™ atinge uma taxa de transferência aproximadamente 5x maior comparado ao Cache do Azure para Redis quando comparado com 100-400 conexões. Por exemplo, enquanto o plano de 13 GB do Cache do Azure para Redis P2 Premium gerencia cerca de 36.000 operações/s durante todos os cenários de conexão, o ScaleGrid para Redis™ tem mais de 130.000 operações/s para todos os cenários.

Desempenho de latência



Conexões ScaleGrid for Redis™
Azure Cache
C3 Std. 6 GB
Azure Cache
P1 6GB
Azure Cache
P2 13GB
Melhoria do ScaleGrid
100 744 6.809 5.896 2.497 -85%
200 1.353 10.950 8.447 5.565 -84%
300 2.044 17.807 13.045 8.539 -84%
400 2.609 25.126 16.999 10.716 -85%
Enquanto a latência do Cache do Azure para Redis aumenta rapidamente à medida que o número de conexões cresce, o ScaleGrid para Redis™ atinge constantemente baixa latência em todos os contagens de conexão. Em média, o ScaleGrid for Redis™ tem latência 85% menor do que o Cache do Azure para Redis. Isso é especialmente perceptível ao comparar o Cache do Azure para Redis (C3 Standard 6 GB) com o ScaleGrid para Redis™, onde a diferença é de até -99%.
Redis no Azure Benchmark - Obtenha uma taxa de transferência até 5x maior e reduza sua latência em 85%!Clique para Tweet

Resumo do comparativo de mercado

Como você pode ver nos gráficos acima, o ScaleGrid para Redis™ oferece uma taxa de transferência significativamente maior e menor latência. Em média, podemos ver aproximadamente 5x a taxa de transferência e latência 85% menor em comparação com tamanhos equivalentes no Cache do Azure. O plano BYOC do ScaleGrid for Redis™ começa em US$ 9 por mês (720h + custos de VM) e US$ 18 por mês (720h) para o plano de hospedagem dedicada.

Saiba mais sobre como o ScaleGrid for Redis™ se compara a outros provedores


Para saber mais sobre como os diferentes provedores Redis se comparam ao ScaleGrid for Redis™, confira nosso gráfico de comparação de provedores de serviços Redis, onde você pode saber mais sobre o ScaleGrid for Redis™.

Configuração de benchmark

Vamos dar uma olhada nas configurações que usamos no benchmark de desempenho:

Configuration Detalhes
Ferramenta de comparação Memtier Benchmark
Região do Azure para Redis Leste dos EUA
Região do Azure para aplicativo Leste dos EUA
Tipo de implantação Mestre-Escravo

Para cada servidor Redis™, comparamos 100, 200, 300 e 400 conexões. Cada conexão envia 10.000 solicitações com tamanho de dados de objeto de 32 bytes por solicitação. Usamos conexões não SSL para conectar servidores Redis™.

O ScaleGrid não apenas oferece maior taxa de transferência e menor latência, mas também traz muitos outros recursos, como acesso total de administrador, backups agendados e acesso SSH. Você pode encontrar mais informações sobre ScaleGrid for Redis™ no Azure, em nosso site.

O que considerar ao escolher um serviço Redis™?

Então, com tantas opções de provedores de serviços Redis™ totalmente gerenciados, quais são os recursos mais importantes a serem observados? Aqui está uma lista de verificação para usar ao escolher o serviço de hospedagem Redis certo para você:

  1. Servidor Dedicado
  2. Escalabilidade
  3. Persistência de dados
  4. Backups e restaurações
  5. Alta taxa de transferência e baixa latência

Servidor dedicado

O Redis é um servidor de thread único onde os dados são armazenados na memória; portanto, ter o Redis rodando em um servidor dedicado é muito importante em um ambiente de produção. Você não quer que seu servidor Redis batalhe por recursos de CPU e memória com outros serviços.

Escalabilidade

Os negócios crescem, e o mesmo para seus dados. É muito importante que seu serviço Redis seja capaz de realizar uma expansão dinâmica e in-loco do seu servidor Redis com pouco ou nenhum tempo de inatividade.

Persistência de dados

Dependendo das suas necessidades de negócios, talvez seja necessário manter seus dados do Redis no armazenamento físico. O Redis oferece duas opções de persistência:RDB e AOF.

O RDB é um instantâneo pontual de seu conjunto de dados em intervalos especificados para um arquivo Redis Database Backup. O arquivo pode ser transferido para outras instâncias do Redis.

AOF significa Append Only File. O Redis registra todas as operações de gravação que foram modificadas em seu conjunto de dados. É uma maneira muito confiável de persistir seus dados.

Tanto o RDB quanto o AOF podem ser ativados ao mesmo tempo e têm diferentes compensações. Para obter mais detalhes sobre seus prós e contras, você pode ler mais na página Redis Persistence em redis.io.

Seu serviço Redis deve fornecer opções não apenas para persistir os dados, mas também para implantar o Redis no modo mestre/réplica ou cluster para minimizar a chance de perda de dados.

Backups e restaurações

Qualquer banco de dados como serviço (DBaaS) para Redis também deve fornecer backups agendados e sob demanda para que você possa garantir que sempre tenha um agendamento regular de backups disponível e possa realizá-los conforme necessário antes de um evento de aplicativo. Ele também deve fornecer opções de “restauração de backup” para bancos de dados existentes ou para uma nova instância de banco de dados.

Alta taxa de transferência e baixa latência

O Redis pode fornecer cache rápido para aplicativos. No entanto, às vezes a latência da rede pode afunilar o acesso aos dados do Redis. A chave é evitar o distanciamento físico entre seu aplicativo e o Redis. Portanto, você deseja garantir que o aplicativo e o Redis estejam hospedados na mesma região do provedor de nuvem e na mesma rede virtual. Seu provedor de serviços Redis deve ter a opção de implantar seu servidor Redis na rede virtual de sua escolha.