Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
No Azure Analysis Services, um nó representa uma máquina virtual host onde um recurso de servidor está sendo executado. Algumas operações, como consultas de longa duração, operações de atualização e sincronização de expansão de consulta, podem falhar se um recurso de servidor for movido para um nó diferente. As mensagens de erro comuns neste cenário incluem:
- "Ocorreu um erro ao tentar localizar uma solicitação XMLA de longa execução. O pedido pode ter sido interrompido por uma atualização do serviço ou reinício do servidor.”
- "Trabalho com ID '<guid>para modelo '<banco de dados>' foi cancelado devido a erro de serviço (inatividade) com a mensagem 'Cancelando a solicitação de atualização, uma vez que estava preso sem atualizações. Este é um problema de serviço interno. Volte a submeter o trabalho ou envie um pedido para obter ajuda se este problema ocorrer repetidamente”.
Há muitas razões pelas quais as operações de longa duração podem ser interrompidas. Por exemplo, atualizações no Azure como:
- Patches do Sistema Operativo
- Atualizações de segurança
- Atualizações do serviço Azure Analysis Services
- Atualizações do Service Fabric. O Service Fabric é um componente de plataforma utilizado por vários serviços cloud da Microsoft, incluindo o Azure Analysis Services.
Além das atualizações que ocorrem no serviço, há um movimento natural de serviços entre nós devido ao balanceamento de carga. Os movimentos de nós são uma parte esperada de um serviço cloud. O Azure Analysis Services tenta minimizar os impactos dos movimentos de nós, mas é impossível eliminá-los completamente.
Além dos movimentos dos nós, outras falhas podem ocorrer. Por exemplo, um sistema de base de dados de origem pode estar offline ou a conectividade de rede pode ter sido perdida. Se, durante a atualização, uma partição tiver 10 milhões de linhas e ocorrer uma falha na linha 9 milhões, não há como reiniciar a atualização no ponto de falha. O serviço deve ser reiniciado desde o início.
Atualização da API REST
As interrupções de serviço podem ser desafiadoras para operações de longa duração, como a atualização de dados. O Azure Analysis Services inclui uma API REST para ajudar a mitigar impactos negativos de interrupções de serviço. Para saber mais, consulte Atualização assíncrona com a API REST.
Além da API REST, há outras abordagens que você pode usar para minimizar possíveis problemas durante operações de atualização de longa duração. O objetivo é evitar ter que reiniciar a operação de atualização desde o início e, em vez disso, executar atualizações em lotes menores que podem ser confirmados em etapas.
A API REST permite essa reinicialização, mas não permite total flexibilidade de criação e exclusão de partições. Se um cenário exigir operações complexas de gerenciamento de dados, sua solução deverá incluir alguma forma de processamento em lote em sua lógica. Por exemplo, ao usar transações para processar dados em vários lotes separados, permite que uma falha não exija a reinicialização desde o início, mas sim a partir de um ponto de verificação intermediário.
Escalamento horizontal de réplicas de consultas
Seja usando REST ou lógica personalizada, as consultas de aplicativo cliente ainda podem retornar resultados inconsistentes ou intermediários enquanto os lotes estão sendo processados. Se forem necessários dados consistentes retornados por consultas de aplicações cliente enquanto o processamento está a ocorrer, e os dados do modelo estiverem num estado intermédio, use scale-out com réplicas de consulta somente leitura.
Usando réplicas de consulta somente leitura, enquanto as atualizações estão sendo executadas em lotes, os usuários do aplicativo cliente podem continuar a consultar o instantâneo antigo dos dados nas réplicas somente leitura. Depois de concluídas as atualizações, poderá ser executada uma operação de Sincronização para atualizar as réplicas de modo somente leitura.
Próximos passos
Atualização assíncrona com a API REST
Escalamento horizontal do Azure Analysis Services
Elevada disponibilidade do Analysis Services
Orientação de repetição para serviços do Azure