O que é o Azure Managed Redis (versão prévia)?
O Azure Managed Redis (prévia) fornece um armazenamento de dados na memória com base no software Redis Enterprise. O Redis Enterprise melhora o desempenho e a confiabilidade da edição comunitária do Redis, mantendo a compatibilidade. A Microsoft opera o serviço, hospedado no Azure e utilizável por qualquer aplicativo dentro ou fora do Azure. Para obter mais informações sobre como o Azure Managed Redis é criado, veja Arquitetura do Azure Managed Redis.
Importante
O Azure Managed Redis está atualmente em PREVIEW. Veja os Termos de Uso Complementares para Versões Prévias do Microsoft Azure para obter termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.
O Azure Managed Redis pode melhorar o desempenho e a escalabilidade de um aplicativo que usa muito armazenamentos de dados de back-end. Ele é capaz de processar grandes volumes de solicitações de aplicativo mantendo os dados acessados com frequência na memória do servidor, que pode ser gravada e lida rapidamente.
O Redis traz uma solução de armazenamento de dados crítica de baixa latência e alta taxa de transferência para aplicativos modernos. Além disso, o Redis é cada vez mais usado para aplicações sem cache, incluindo ingestão de dados, desduplicação, mensagens, tabelas de classificação, cache semântico e como um banco de dados vetorial.
O Azure Managed Redis pode ser implantado de forma autônoma ou junto com outros serviços de aplicativo ou banco de dados do Azure, como Aplicativos de Contêiner do Azure, Serviço de Aplicativo do Azure, Azure Functions, SQL do Azure ou Azure Cosmos DB.
Principais cenários
O Azure Managed Redis melhora o desempenho do aplicativo ao oferecer suporte a padrões comuns de arquitetura de aplicativo. Alguns dos mais comuns incluem os seguintes padrões:
Padrão | Descrição |
---|---|
Cache de dados | Os bancos de dados geralmente são grandes demais para serem carregados diretamente em um cache. É comum usar o padrão cache-aside para carregar dados no cache, somente conforme necessário. Quando o sistema faz alterações nos dados, ele também pode atualizar o cache, que será distribuído a outros clientes. Além disso, o sistema pode definir uma expiração em dados ou usar uma política de remoção para disparar atualizações de dados para o cache. |
Cache de conteúdo | Muitas páginas da Web são geradas com base em modelos que usam conteúdo estático, como cabeçalhos, rodapés e faixas. Esses itens estáticos não devem ser alterados com frequência. O uso de um cache na memória fornece acesso rápido a conteúdo estático em comparação com armazenamentos de dados de back-end. Esse padrão reduz o tempo de processamento e a carga do servidor, permitindo que servidores Web sejam mais responsivos. Ele pode permitir que você reduza o número de servidores necessários para lidar com cargas. O Azure Managed Redis fornece o Provedor de Cache de Saída do Redis para dar suporte a esse padrão com o ASP.NET. |
Repositório de sessão | Esse padrão é geralmente usado com carrinhos de compras e outros dados de histórico do usuário que um aplicativo Web pode associar aos cookies do usuário. O armazenamento de muitas informações em um cookie pode ter um efeito negativo no desempenho conforme o tamanho do cookie aumenta e é passado e validado com cada solicitação. Uma solução típica usa o cookie como uma chave para consultar os dados em um banco de dados. Quando você usa um cache na memória, como o Azure Managed Redis, associar informações a um usuário é mais rápido do que interagir com um banco de dados relacional completo. |
Pesquisa de similaridade vetorial | Um caso de uso comum de IA é gerar embeddings vetoriais usando um modelo de linguagem grande (LLM). Essas incorporações vetoriais precisam ser armazenadas em um banco de dados de vetores e então comparadas para determinar similaridade. O Azure Managed Redis tem funcionalidade integrada para armazenar e comparar incorporações de vetores em altas taxas de transferência. |
Cache semântico | O uso de LLMs geralmente introduz uma alta quantidade de latência (devido ao tempo de geração) e custo (devido ao preço por token) em um aplicativo. O armazenamento em cache pode ajudar a resolver esses problemas armazenando a saída anterior de um LLM para que ela possa ser recuperada rapidamente. No entanto, como os LLMs usam linguagem natural, isso pode ser difícil de lidar para caches comuns. Caches semânticos como o Azure Managed Redis são capazes de armazenar em cache não apenas uma consulta específica, mas o significado semântico de uma consulta, permitindo que ela seja usada de forma muito mais natural com LLMs. |
Eliminação de duplicação | Muitas vezes, você precisa determinar se uma ação já ocorreu em um sistema, como determinar se um nome de usuário já foi usado ou se um email já foi enviado a um cliente. No Azure Managed Redis, filtros bloom podem ser usados para determinar rapidamente duplicatas e evitar problemas. |
Placares de líderes | O Redis oferece suporte simples e poderoso para o desenvolvimento de tabelas de classificação de todos os tipos usando a estrutura de dados conjunto classificado. Além disso, o uso da replicação geográfica ativa pode permitir que uma tabela de classificação seja compartilhada globalmente. |
Enfileiramento de mensagens e trabalhos | Aplicativos geralmente adicionam tarefas a uma fila quando as operações associadas à solicitação levam tempo para serem executadas. As operações de execução mais longa são enfileiradas para serem processadas em sequência, muitas vezes por outro servidor. Esse método de adiamento do trabalho é chamado de enfileiramento de tarefas. O Azure Managed Redis fornece uma fila distribuída para habilitar esse padrão em seu aplicativo. |
Aceleração do PowerBI/Analytics | Você pode usar o driver ODBC do Redis para utilizar o Redis para casos de uso de BI, relatórios e análises. Como o Redis normalmente é muito mais rápido do que os bancos de dados relacionais, o uso do Redis dessa forma pode aumentar drasticamente a capacidade de resposta da consulta. |
Transações distribuídas | Às vezes, os aplicativos exigem uma série de comandos em relação a um armazenamento de dados de back-end para serem executados como uma única operação atômica. Todos os comandos devem ter êxito ou ser revertidos para o estado inicial. O Azure Managed Redis oferece suporte à execução de um lote de comandos como uma única transação. |
Versão do Redis
O Azure Managed Redis oferece suporte ao Redis versão 7.4.x. Para obter mais informações, veja Como atualizar a versão da sua instância do Azure Managed Redis.
Escolher a camada correta
Há quatro níveis do Azure Managed Redis disponíveis, cada um com diferentes características de desempenho e níveis de preço.
Três níveis são para dados na memória:
- Otimizado para memória Ideal para casos de uso com uso intensivo de memória que exigem uma alta taxa de memória para vCPU (8:1), mas não precisam do desempenho de taxa de transferência mais alto. Ele oferece um preço mais baixo para cenários em que menos poder de processamento ou taxa de transferência é necessário, o que o torna uma excelente escolha para ambientes de desenvolvimento e de teste.
- Equilibrado (Memória + Computação) Oferece uma taxa equilibrada de memória para vCPU (4:1), tornando esta opção ideal para cargas de trabalho padrão. Essa camada fornece um equilíbrio saudável de recursos de memória e computação.
- Computação otimizada Projetado para cargas de trabalho com uso intensivo de desempenho que exigem taxa de transferência máxima, com uma baixa taxa de memória para vCPU (2:1). É ideal para aplicativos que exigem o mais alto desempenho.
Um nível armazena dados na memória e no disco:
- Otimizado para Flash Permite que os clusters do Redis movam automaticamente dados acessados com menos frequência da memória (RAM) para o armazenamento NVMe. Isso reduz o desempenho, mas permite o escala econômico de caches com grandes conjuntos de dados.
Observação
Para obter mais informações sobre como a camada Flash Optimized é arquitetada, veja Arquitetura do Azure Managed Redis
Importante
Você também pode usar o recurso persistência de dados para armazenar dados em disco para as camadas na memória. A persistência de dados armazena uma cópia de backup dos dados no disco para recuperação rápida em caso de interrupção inesperada. Isso é diferente do nível Flash Optimized, que é projetado para armazenar dados em disco para operações típicas. Armazenar alguns dados em disco usando a camada Flash Optimized não aumenta a resiliência dos dados. Você também pode usar persistência de dados na camada Flash Optimized.
Para obter instruções sobre como dimensionar entre camadas e SKUs, veja Dimensionar uma instância do Azure Managed Redis.
Níveis e SKUs em resumo
Para obter informações sobre preços, veja Preços do Azure Managed Redis
Comparação de recursos
A seguinte tabela ajuda a descrever alguns dos recursos compatíveis por camada:
Descrição do recurso | Otimizado para memória | Balanced | Computação otimizada | Flash Otimizado |
---|---|---|---|---|
Tamanho (GB) | 12 - 1920 | 0.5 - 960 | 3 - 720 | 250 - 4500 |
Contrato de nível de serviço (SLA) | Sim | Sim | Sim | Sim |
Criptografia de dados em trânsito | Sim (ponto de extremidade privado) | Sim (ponto de extremidade privado) | Sim (ponto de extremidade privado) | Sim (ponto de extremidade privado) |
Replicação e failover | Sim | Sim | Sim | Sim |
Isolamento da rede | Sim | Sim | Sim | Sim |
Autenticação baseada em ID do Microsoft Entra | Sim | Sim | Sim | Sim |
Dimensionamento | Sim | Sim | Sim | Sim |
Persistência de dados | Sim | Sim | Sim | Sim |
Redundância de zona | Sim | Sim | Sim | Sim |
Replicação geográfica | Sim (Ativo) | Sim (Ativo) | Sim (Ativo) | Não |
Registros de auditoria da conexão | Sim (baseado em evento) | Sim (baseado em evento) | Sim (baseado em evento) | Sim (baseado em evento) |
Estruturas de dados JSON (ou seja, Redis JSON) | Sim | Sim | Sim | Sim |
Funcionalidade de pesquisa (incluindo busca em vetores) | Sim | Sim | Sim | No |
Estruturas de dados probabilísticas (ou seja, Redis Bloom) | Sim | Sim | Sim | Sim |
Capacidade de banco de dados de séries temporais (ou seja, Redis TimeSeries) | Sim | Sim | Sim | Sim |
Redis no Flash (também conhecido como autotiering) | Sim | Sim | Sim | Yes |
Importar/exportar | Sim | Sim | Sim | Sim |
Atualizar o canal e agendar atualizações | Não | No | No | Não |
Importante
As opções de SKU B0 e B1 balanceadas não oferecem suporte à replicação geográfica ativa.
Importante
O SLA só está disponível no GA e não estará disponível durante a visualização.
Observação
A redução do suporte é limitada em algumas situações. Para obter mais informações, veja Pré-requisitos/limitações de escala do Azure Managed Redis.
Outras considerações ao escolher uma camada
- Desempenho da rede: se você tiver uma carga de trabalho que exija alto taxa de transferência, poderá ter gargalos na largura de banda da rede. Você pode aumentar a largura de banda passando para um nível de desempenho mais alto ou mudando para um tamanho de instância maior. Instâncias de tamanho maior têm mais largura de banda por causa da VM subjacente que hospeda o cache. Limites de largura de banda mais altos ajudam a evitar a saturação da rede que causa tempos limite no seu aplicativo. Para obter mais informações sobre o desempenho da largura de banda, veja Teste de desempenho
- Número máximo de conexões de clientes: Cada SKU tem um número máximo de conexões de clientes. Esse limite aumenta com níveis de desempenho mais altos e tamanhos de instâncias maiores. Para obter mais informações sobre o limite para cada SKU, veja Preços do Azure Managed Redis.
- Alta disponibilidade: o Azure Managed Redis oferece diversas opções de alta disponibilidade. o SLA abrange apenas a conectividade com os pontos de extremidade do cache. O SLA não abrange a proteção contra perda de dados. Para obter mais informações sobre o SLA, veja o SLA. É possível desabilitar a alta disponibilidade em uma instância do Azure Managed Redis. Isso reduz o preço, mas resulta em perda de dados e tempo de inatividade. Recomendamos desabilitar a alta disponibilidade somente para cenários de desenvolvimento/teste.
Outras considerações sobre preços
Importante
O Azure Managed Redis Enterprise requer um endereço IP para cada instância de cache. Atualmente, a cobrança pelo endereço IP é absorvida pelo Azure Managed Redis e não repassada aos clientes. Isso pode mudar no futuro. Para obter mais informações, veja Preços de endereços IP.
Importante
O uso da replicação geográfica ativa produzirá transferência de dados entre regiões do Azure. Essas cobranças de largura de banda são atualmente absorvidas pelo Azure Managed Redis e não repassadas aos clientes. Isso pode mudar no futuro. Para saber mais, confira Preços de largura de banda.
Disponibilidade por região
O Azure Managed Redis está continuamente se expandindo para novas regiões. Para verificar a disponibilidade em sua região, consulte Produtos disponíveis por região.
Migração do Cache do Azure para Redis
Para obter mais informações sobre a migração do Cache do Azure para Redis para o Azure Managed Redis, veja Mover do Azure Cache for Redis para o Azure Managed Redis