Checkpointing Atualizações no Hadoop Distributed File System

Hadoop Distributed File System (HDFS) é um sistema de arquivos registrados, onde novas alterações em arquivos no HDFS são capturados em um log de edição que está armazenado no NameNode em um arquivo chamado. Periodicamente, quando o arquivo atinge um determinado limite ou depois de um certo prazo, as entradas em diário precisam estar comprometidos com o arquivo mestre.

O NameNode si não fazer isso, porque ele é projetado para responder a solicitações de aplicativos o mais rápido possível. Mais importante ainda, risco considerável está envolvido em ter esta operação de actualização de metadados gerenciados por um único servidor mestre.

Se os metadados que descreve os mapeamentos entre os blocos de dados e seus arquivos correspondentes ficar corrompido, os dados originais é tão bom como perdido.

serviços de ponto de verificação para um cluster Hadoop são tratados por um dos quatro daemons possíveis, que precisam ser executados no seu próprio nó dedicado mestre ao lado nó mestre do daemon NameNode:

  • NameNode secundário: Antes de Hadoop 2, este foi o único daemon pontos de verificação, executar o processo de ponto de verificação descrita nesta seção. O NameNode secundário tem um nome notoriamente imprecisos porque ele não é de forma # 147-secundário # 148- ou um # 147-standby # 148- para o NameNode.

  • Nó Checkpoint: A Checkpoint Node é o substituto para o NameNode Secundário. Ele executa o ponto de verificação e nada mais.

  • Nó de backup: Oferece serviço de ponto de verificação, mas também mantém um backup do arquivo e edições.

  • Standby NameNode: Executa serviço de ponto de verificação e, ao contrário do antigo NameNode secundário, a espera NameNode é um verdadeiro servidor de espera, permitindo que um hot-swap do processo NameNode para evitar qualquer tempo de inatividade.

O processo de ponto de verificação

Os passos seguintes descrevem o processo de ponto de verificação, como é realizado pelo NameNode eo serviço de ponto de verificação (note que quatro possíveis daemons pode ser usado para o ponto de verificação):

  1. Quando é hora de executar o ponto de verificação, o NameNode cria um novo arquivo para aceitar as alterações do sistema de arquivos com diário.

    Ele nomeia o novo arquivo.

  2. Como resultado, o arquivo não aceita mais mudanças e é copiado para o serviço de ponto de verificação, juntamente com o arquivo.

  3. O serviço checkpointing mescla esses dois arquivos, criando um arquivo chamado.

  4. Os serviços checkpointing copia o arquivo para o NameNode.

  5. O NameNode substitui o ficheiro com.

  6. O NameNode renomeia o arquivo.

    image0.jpg

considerações nó de backup

Além de fornecer a funcionalidade de ponto de verificação, o nó de backup mantém o estado atual de todos os metadados de blocos HDFS na memória, assim como o NameNode. Neste sentido, ele mantém um backup em tempo real do estado do NameNode.

Como resultado de manter os metadados do bloco na memória, o nó de backup é muito mais eficiente do que a Checkpoint Nó em executar a tarefa de ponto de verificação, porque o e arquivos não precisam ser transferidos e, em seguida, fundidos. Estas mudanças já são mescladas na memória.

Outra vantagem de usar o nó de backup é que a NameNode pode ser configurado para delegar o nó de backup para que ele persiste dados revista em disco.

Se você estiver usando o nó de backup, você não pode executar o Checkpoint Node. Não há necessidade de fazê-lo, porque o processo de ponto de verificação já está sendo cuidado.

considerações NameNode espera

O NameNode Standby é o servidor espera quente designado mestre para o NameNode. Enquanto servia como espera, ele também realiza o processo de ponto de verificação. Como tal, você não pode executar o nó de backup ou Standby Node.

NameNode secundário, Checkpoint nó, nó de backup, e espera NameNode Mestre design do servidor

O servidor mestre executando a NameNode Secundária, Checkpoint Nó, nó de backup, ou Standby NameNode daemons têm os mesmos requisitos de hardware como os implantados para o servidor mestre NameNode. A razão é que esses servidores também carregar na memória todos os metadados e dados de localização sobre todos os blocos de dados armazenados no HDFS.

menu