A partir da versão V1.1, o Hologres suporta uma instância primária com até 10 instâncias secundárias somente leitura em armazenamento compartilhado. Esse recurso separa os tráfegos de leitura e escrita, proporcionando isolamento de carga e de falhas sem duplicação de dados. O armazenamento é faturado apenas uma vez.
Configurar instâncias primárias e secundárias
Etapa 1: Adquirir uma instância secundária somente leitura
Acesse a página de compra do Hologres.
Defina Instance Type como Read-only Secondary Instance.
Em Primary Instance ID of the Read-only Secondary Instance, selecione o ID da instância primária.
Configure os parâmetros restantes. Adquirir uma instância do Hologres.
A instância secundária somente leitura deve estar na mesma região da instância primária.
Etapa 2: Verifique se a instância secundária está anexada
Após a aquisição, a instância secundária é anexada automaticamente à instância primária selecionada. Aguarde até que o estado da instância mude para Running as Expected.
Etapa 3: Conectar-se ao endpoint da instância secundária
Cada instância secundária possui seu próprio endpoint. Direcione o tráfego de leitura para diferentes endpoints secundários para isolar cargas de trabalho por cenário de negócio.
Diretrizes de uso
Execute todas as operações de escrita, DDL, autorização e alterações de parâmetros na instância primária. As instâncias secundárias são somente leitura.
As instâncias secundárias herdam todos os objetos (usuários, tabelas, políticas de acesso) da instância primária. Não é possível crie usuários específicos da instância em uma instância secundária.
Após a configuração, direcione o tráfego de leitura de produção para os endpoints das instâncias secundárias.
Cenários recomendados
|
Cenário |
Instância primária |
Instâncias secundárias |
|
Separação de leitura e escrita |
Ingestão e transformação de dados |
Análise de dados |
|
Isolamento de serviço online (alta estabilidade P99) |
Todas as escritas |
Réplica dedicada para consultas online, isolada de outras cargas de trabalho |
|
Isolamento de consultas OLAP |
Todas as escritas |
Réplica separada focada em análises, distinta da réplica de serviço online |
Funcionamento
Recuperação automática de instância única
Toda instância do Hologres possui recuperação automática integrada. Nenhuma operação manual de O&M é necessária.
Os nós de computação executam em contêineres (Worker Nodes). O Resource Manager verifica periodicamente a integridade de cada contêiner. Se um contêiner não responder dentro de um minuto — devido a OOM, falha de hardware ou bugs de software — o Resource Manager inicia um nó de substituição e migra as responsabilidades dos shards para ele.
Os dados residem no sistema de armazenamento distribuído Pangu, e não nos nós de computação. Como os nós de computação são stateless, a recuperação é concluída sem migração de dados. O processo leva aproximadamente um minuto na versão V1.1 e posteriores, sendo de 5 a 10 vezes mais rápido que nas versões anteriores.
Consultas que atingem um nó em recuperação falham imediatamente durante o processo.

Arquitetura de armazenamento compartilhado com múltiplas instâncias
A recuperação de instância única ainda causa uma breve janela de indisponibilidade. Para cargas de trabalho que exigem disponibilidade contínua, a versão V1.1 e posteriores suportam a implantação de múltiplas instâncias com armazenamento compartilhado.
|
Componente |
Capacidades |
|
Instância primária |
Operações de leitura e escrita, gerenciamento de permissões, configuração de parâmetros do sistema |
|
Instâncias secundárias |
Somente leitura; todas as alterações (criação de tabelas, autorização de usuários, parâmetros do sistema) devem ser feitas na instância primária |
As instâncias compartilham dados e políticas de acesso, mas não recursos de computação, proporcionando isolamento de carga e de falhas. O armazenamento é faturado apenas uma vez.

Sincronização entre instâncias
Os estados de memória sincronizam-se em tempo real entre as instâncias, com latência de milissegundos dentro da mesma região. Escritas na instância primária são sincronizadas automaticamente com todas as secundárias.
As instâncias secundárias consomem aproximadamente 1/8 da CPU e da memória da instância primária, mesmo quando ociosas. Evite especificações significativamente diferentes entre as instâncias primária e secundárias.
Pré-requisitos
Verifique os seguintes itens:
|
Requisito |
Detalhe |
|
Versão do Hologres |
V1.1 ou posterior para a instância primária. Para versões anteriores, consulte Erros comuns de preparação para atualização ou entre no grupo de usuários do Hologres para solicitar uma atualização. Para mais informações, consulte Obter suporte online para o Hologres |
|
Região |
As instâncias primária e secundária devem residir na mesma região |
|
Paridade de versão |
As instâncias primária e secundária devem executar a mesma versão do Hologres |
|
Permissões do RAM |
O usuário do RAM que executa operações de anexar/desanexar deve ter a política AliyunHologresFullAccess. Conceder permissões a usuários do RAM. |
Limites
|
Restrição |
Detalhe |
|
Máximo de instâncias secundárias |
10 instâncias secundárias somente leitura por instância primária |
|
Contagem de shards |
Todas as instâncias devem ter o mesmo número de shards |
|
Especificações |
As configurações de recursos podem diferir entre as instâncias, mas não devem variar significativamente |
|
Réplicas não anexadas |
Uma instância secundária somente leitura não aceita conexões até ser anexada a uma instância primária |
|
Duração da anexação |
Anexar uma réplica leva aproximadamente de 3 a 5 minutos. A réplica fica indisponível até a conclusão do processo |
|
Disponibilidade da instância primária durante a anexação |
A instância primária permanece totalmente operacional enquanto uma réplica está sendo anexada |
|
Limiar de latência de sincronização |
Na versão V1.3.27 e posteriores, o limiar é de 60 minutos (anteriormente 20 minutos). Se a utilização da réplica permanecer em 100% por mais de 60 minutos, a réplica reinicia automaticamente. Para utilização alta sustentada, ajuste o desempenho ou escale horizontalmente. |
|
Leitura direta do MaxCompute |
Quando o MaxCompute lê diretamente da camada de armazenamento do Hologres em uma arquitetura primária-secundária, a URL de conexão deve apontar para a instância primária, não para uma réplica. Ative leitura direta do armazenamento de tabela externa do Hologres. |