Como funciona o Azure HDInsight

Concluído

Aqui, você aprenderá como o Azure HDInsight funciona. Você descobrirá sobre os seguintes componentes e como eles se encaixam para fornecer controle e gerenciamento de dados:

  • Apache Hadoop
  • Armazenamento HDInsight
  • Processamento do HDInsight

O que é o Apache Hadoop?

O Apache Hadoop é um sistema de processamento de dados distribuído na nuvem no núcleo do HDInsight. Tem três componentes, que a tabela a seguir descreve:

Componente Apache Hadoop Descrição
HDFS O Apache Hadoop Distributed File System (HDFS) fornece armazenamento para o sistema Hadoop.
YARN O componente Apache Hadoop Yet Another Resource Negotiator (YARN) fornece processamento para o sistema.
MapReduce MapReduce é um modelo de programação que permite processar e analisar dados.

Como é que os componentes interagem?

O diagrama a seguir mostra os componentes de armazenamento e processamento interagindo em um cluster Hadoop HDInsight típico. Ilustra os seguintes componentes:

  • O nó principal e os nós de trabalho, que fazem o processamento.
  • Vários centros de armazenamento do Microsoft Azure Storage Blob (WASB), associados aos nós. O HDFS interage com estes contentores.
  • Vários contêineres de armazenamento padrão, vinculados e não vinculados. Estes estão disponíveis para os dois nós.

Um diagrama que representa os nós head e worker no Hadoop e, em seguida, os vários contêineres de armazenamento acessíveis aos nós.

Vamos agora examinar como o armazenamento e o processamento funcionam.

Como funciona o armazenamento?

O componente de armazenamento de um cluster não é criado automaticamente quando você provisiona um cluster HDInsight. Em vez disso, é fornecido por um sistema compatível com HDFS, como o Armazenamento do Azure ou o Azure Data Lake.

Há benefícios em separar o componente de armazenamento de um cluster do componente de processamento. Por exemplo, você pode excluir com segurança qualquer cluster HDInsight usado apenas para computação sem se preocupar com a perda de dados. Ao adicionar um cluster HDInsight, você deve definir um sistema de arquivos padrão.

Importante

Para o Armazenamento do Azure, você deve especificar um contêiner de blob como o sistema de arquivos padrão.

Fornecer um sistema de ficheiros padrão assegura que o HDInsight possa resolver referências de ficheiros relativas ao procurar ficheiros.

Dica

Quando quiser aumentar o armazenamento disponível, você pode vincular e desvincular sistemas de arquivos adicionais conforme necessário.

Um diagrama que representa o elemento de armazenamento do diagrama anterior.

Como funciona o processamento?

Ao processar dados, o componente de computação de um cluster Hadoop no HDInsight se divide em duas áreas lógicas. A tabela a seguir descreve essas duas áreas:

Componente Descrição
Nó principal O nó principal aceita e gerencia as solicitações do cliente e passa as solicitações para os nós de trabalho.
Nó de trabalho Os nós operacionais processam dados.

Observação

O nó principal também é conhecido como nó mestre.

A maioria dos clusters contém dois nós principais, incluindo:

  • Um nó ativo principal, que gere as ligações de cliente.
  • Um nó principal passivo, que fornece resiliência caso o nó ativo fique indisponível.

Um diagrama que representa o elemento de processamento em um cluster Hadoop típico.

Os nós principal e de trabalho podem se conectar diretamente a um HDFS conectado localmente ou acessar dados armazenados no Blob do Azure ou no Azure Data Lake. Os dados que são gerenciados dependem de dois fatores:

  • Como o modelo de programação MapReduce definiu como trabalhar com os dados
  • Como o nó principal aloca o trabalho

O que faz o YARN?

O YARN executa o gerenciamento de recursos em um cluster HDInsight. Quando você está processando dados, esse serviço gerencia recursos e agendamento de tarefas.

O YARN fica entre o HDFS e o sistema de computação do cluster HDInsight. Este sistema funciona com o nó principal para ajudar a distribuir um trabalho entre os nós de trabalho do cluster. Isso ajuda a garantir que os trabalhos de processamento de dados ocorram em paralelo.