Lidar com a perda de instâncias spot no Presto - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Lidar com a perda de instâncias spot no Presto

Com as Instâncias Spot na AmazonEMR, você pode executar cargas de trabalho de big data na EC2 capacidade disponível da Amazon a um custo reduzido. Em troca do menor custo, a Amazon EC2 pode interromper as Instâncias Spot com uma notificação de dois minutos. Quando você encerra um nó, o Presto pode levar até 10 minutos para retornar um erro. Isso causa atrasos desnecessários nos relatórios de erros e possíveis novas tentativas. O encerramento rápido é um atributo que permite o controle da forma como o Presto manipula nós encerrados.

O trabalho do coordenador do Presto é acompanhar todos os nós de processamento com sondagens regulares dos seus status. Sem uma rescisão rápida, o coordenador não consulta o YARN NodeManager para saber o status de cada nó. Isso pode resultar em um longo loop de novas tentativas antes que a consulta apresente falha. Com o encerramento rápido, o coordenador do Presto consulta o status do nó NodeManager assim que a pesquisa não chega ao host. Se NodeManager mostrar que o nó está inativo, o Presto abandona novas tentativas, falha na consulta e retorna um erro. NODE_DECOMMISSIONED

O conjunto de parâmetros de configuração a seguir permite o controle e a personalização do comportamento do Presto no caso do encerramento do nó.

Configurações do Presto para tratamento de falhas em nós
Configuração Descrição Padrão
query.remote-task.max-backoff-duration Período durante o qual o coordenador continua tentando obter o status da tarefa remota nos nós de processamento. 10 minutos
query.remote-task.quick-terminate-node-failure

Ativa a falha rápida do nó se o coordenador não consegue acessar o nó ou não consegue se conectar ao worker executado nesse nó. O valor de query.remote-task.terminate-on-connect-exception determina se o coordenador deve acessar o nó ou se conectar ao worker.

O nó falha na consulta e a Amazon EMR remove o nó da lista de trabalhadores disponíveis. Quando isso acontece, você não pode usar o nó para programar novas consultas.

Quando você define esse valor como false, o Presto volta ao comportamento anterior, em que o coordenador do Presto novamente tenta acessar o nó (para query.remote-task.max-backoff-duration) antes de marcar o nó como indisponível e indica falha na consulta em andamento no nó.

true
query.remote-task.terminate-on-connect-exception Especifica se a Amazon EMR deve ser um nó se o host estiver acessível, mas o coordenador não conseguir se conectar ao processo de trabalho do host. Ao definir esse valor como true, você ativa falha na consulta rápida se o host está inacessível. false