O Orca é um banco de dados chave-valor persistente e compatível com Redis, desenvolvido sobre o PolarDB for MySQL. Ao ativar o recurso Orca, seu cluster PolarDB for MySQL passa a gerenciar dados relacionais e estruturas de dados no estilo Redis em uma única plataforma unificada. As aplicações continuam usando clientes e métodos de acesso familiares do Redis, o que reduz a complexidade operacional e o custo total de propriedade associado à gestão de middleware separado. Essa arquitetura também oferece menor latência para cargas de trabalho que usam o protocolo Redis. Além disso, o Orca suporta valores individuais de até 4 GB, sendo ideal para casos de uso que envolvem objetos grandes.
Como funciona
Bancos de dados chave-valor tradicionais, como os projetos open source Pika e Kvrocks, geralmente são projetados para alta escalabilidade. No entanto, sua implantação pode complicar a coordenação de nós e a gestão operacional. Para resolver esses desafios, o PolarDB for MySQL introduz o recurso Orca. Após adquirir um cluster PolarDB for MySQL, você também pode usá-lo como um banco de dados chave-valor persistente (compatível com Redis). Os dados do MySQL e os dados chave-valor (protocolo Redis) permanecem separados.
Desenvolvido com base na arquitetura do PolarDB for MySQL, o Orca incorpora um framework para analisar e processar solicitações do protocolo Redis. Todas as solicitações relacionadas ao Orca se conectam a uma porta dedicado. A figura a seguir ilustra a arquitetura técnica do Orca no PolarDB for MySQL:
Principais vantagens
-
Baixo custo
O Orca elimina a necessidade de recursos de computação separados. Ele aproveita o armazenamento distribuído de alto desempenho para atender a requisitos de grande capacidade.
-
Facilidade de uso
Baseado na arquitetura do PolarDB for MySQL, o Orca usa replicação física para habilitar a separação de leitura e escrita. Ele também suporta dimensionamento elástico Serverless horizontal e vertical e inclui um recurso de standby quente de computação, o que reduz significativamente a sobrecarga operacional.
O Orca é compatível com formas avançadas de product do PolarDB for MySQL, como a Global Database Network (GDN). Ao usar o Orca com uma GDN, implante seus negócios em várias regiões. A GDN fornece sincronização de dados entre regiões com baixa latência, separação de leitura e escrita entre regiões e roteamento de leitura local. Isso garante que o acesso da aplicação ao Orca tenha latência inferior a 2 segundos em cada região.
-
Persistência de dados e forte consistência
Construído sobre o mecanismo de armazenamento InnoDB do PolarDB for MySQL, o Orca usa o PolarStore, um service de armazenamento distribuído, para evitar perda de dados.
O Orca alcança forte consistência de leitura nos nós primários e somente leitura por meio da tecnologia SCC do PolarDB for MySQL.
-
Alto desempenho
Com base no mecanismo InnoDB de alto desempenho, o Orca usa recursos como a estrutura de índice de alto desempenho Blink-tree e pré-busca lógica para oferecer melhorias significativas de desempenho em cenários de leitura e escrita com alta concorrência.
Casos de uso
O Orca oferece compatibilidade com o protocolo Redis sobre o PolarDB for MySQL, complementando os casos de uso existentes do Redis. Use o Orca como um banco de dados chave-valor persistente. Com a enorme capacidade de armazenamento de até 500 TB fornecida pelo armazenamento distribuído PolarStore, resolva desafios de custo e volume de dados mantendo a facilidade de uso do Redis.
Banco de dados principal para servidores de jogos: Uma implantação típica de jogos possui uma arquitetura simples. A aplicação principal é implantada em instâncias ECS e todos os dados comerciais ficam armazenados no Orca. Como banco de dados persistente, o Orca fornece recuperação de desastres multi-AZ por padrão, backups rápidos, recuperação point-in-time, escritas de alto desempenho e capacidade de escalar horizontalmente com nós somente leitura para atender às crescentes demandas de escrita dos jogos.
Placares de jogos: Em aplicações de jogos, atualizações de placar em tempo real e acesso rápido ao status do jogador são críticos. O Orca armazena pontuações e classificações dos jogadores. Implemente placares facilmente usando a estrutura de dados sorted set do protocolo Redis.
Serviços de recomendação de anúncios: Em muitos cenários de publicidade online, os sistemas de anúncios precisam armazenar grandes volumes de dados e lidar com solicitações de alta concorrência. O Orca oferece baixa latência estável e baixos custos de armazenamento, tornando-se uma solução eficaz para requisitos de veiculação de anúncios.
Motor de execução de scripts Lua: Clientes frequentemente precisam combinar vários comandos do Redis em uma única operação atômica para garantir a consistência dos dados. Exemplos comuns incluem redução de inventário, locks distribuídos e limitação de taxa. O Orca é compatível com os comandos EVAL/EVALSHA do protocolo Redis e suporta execução de scripts Lua no lado do servidor. Isso permite encapsular múltiplas operações em uma transação atômica, reduzindo idas e vindas na rede e garantindo atomicidade. Ao ativar o Orca, obtenha capacidades de script Lua sem precisar de middleware adicional.
Fila de mensagens leve: Alguns cenários de negócios exigem uma fila de mensagens confiável para processamento assíncrono de tarefas, notificações de eventos ou desacoplamento de services. O Orca é compatível com a estrutura de dados List do protocolo Redis e suporta nativamente o modelo produtor-consumidor por meio de comandos como LPUSH/BRPOP. Atenda às necessidades de uma fila de mensagens leve simplesmente adquirindo um cluster PolarDB for MySQL e ativando o Orca. Isso elimina a necessidade de implantar e manter middleware de mensagens separado, reduzindo a complexidade arquitetônica e os custos operacionais. Simultaneamente, a persistência de dados e a alta disponibilidade do PolarDB for MySQL garantem a durabilidade dos seus dados de mensagens.
Capacidades do protocolo Redis em uma pilha de dados unificada: Se desejar usar o PolarDB for MySQL como sua plataforma de dados unificada, mas também precisar de estruturas de dados semelhantes às do Redis, o Orca fornece um service de dados compatível com Redis sobre seu cluster PolarDB for MySQL existente. Gerencie dados relacionais e estruturas como hashes, sets, filas e placares com uma abordagem de gestão unificada e persistência.
Armazenamento para objetos de valor grande: Em cenários como criação de perfil de usuário, recursos de recomendação, armazenamento de documentos ou gerenciamento de estado de tarefas de IA, o valor de uma única chave pode ser muito grande. Com base na BLOB performance optimization do PolarDB for MySQL, o Orca suporta um único valor de até 4 GB. Armazene objetos grandes de forma persistente, continue usando um modelo simples de acesso chave-valor e reduza a complexidade de dividir, mover e gerenciar objetos grandes.
Desenvolvimento local e testes de integração: No desenvolvimento local, depuração conjunta e cenários de CI/CD, as aplicações frequentemente precisam usar a mesma interface de protocolo Redis da produção, mas sem a sobrecarga de implantar e manter um service Redis separado. Por ser compatível com Redis, o Orca serve como armazenamento chave-valor persistente para validação funcional, reprodução de problemas e testes de regressão. Isso simplifica o ambiente e melhora a eficiência do desenvolvimento.
Requisitos
Seu cluster PolarDB for MySQL deve atender aos seguintes requisitos:
Arquitetura de cpu: X86
-
Versão do mecanismo:
MySQL 8.0.1, com versão secundária do mecanismo 8.0.1.1.53 ou posterior.
MySQL 8.0.2, com versão secundária do mecanismo 8.0.2.2.24 ou posterior.
Faturamento
O recurso Orca é gratuito. Não há cobrança por nós de computação. Você paga apenas pelo espaço de armazenamento consumido pelos dados do Orca. Para mais informações, consulte Compute node billing rules e Storage space billing rules.
Limitações
O recurso Orca não suporta acesso sem senha. Crie uma conta Orca.
Após ativar o recurso Orca, ele reutiliza os recursos de cpu e memória de todo o cluster PolarDB for MySQL. Portanto, as cargas de trabalho do Orca aumentam a carga no cluster. O aumento real na sobrecarga de cpu e memória depende da sua carga de trabalho comercial.
Depois de ativar o recurso Orca, o cluster PolarDB for MySQL cria automaticamente um banco de dados Orca padrão chamado
__orca_in_polardb_m_. Não é possível realizar operações neste banco de dados nem criar outro banco com o mesmo nome.
Compatibilidade
O Orca é compatível com alguns comandos do Redis 7.0 e anteriores e suporta os protocolos RESP2 e RESP3. Atualmente, ele suporta até 16 bancos de dados Redis (DB 0 a DB 15). Comandos entre bancos de dados, como MOVE, não são suportados. Para mais informações, consulte Redis protocol compatibility.
Uso
-
Ative o Orca:
Ative o Orca na página de compra do cluster.
Ative o Orca na seção da página de detalhes do cluster.
Crie uma conta Orca: Crie uma conta Orca na seção da página de detalhes do cluster. Para mais informações, consulte Create an Orca account
Gerencie endpoints e portas do Orca: Visualize o endpoint e a porta do Orca na seção da página de detalhes do cluster. Para mais informações, consulte Manage Orca endpoints
-
Conecte-se ao Orca (protocolo Redis): Use um cliente ou aplicação Redis para se conectar e usar o Orca.
NotaUse o Data Management Service (DMS) para se conectar e gerenciar dados do Orca.
Visualize métricas do Orca: Na página de detalhes do cluster, acesse a seção para visualizar as métricas do Orca conforme suas necessidades comerciais. Para mais informações, consulte View Orca metrics
(Opcional) Migre dados: Use o Data Transmission Service (DTS) para migrar dados do Orca.