Nós escravos no hadoop distributed file system (hdfs)

Em um cluster Hadoop, cada nó de dados (também conhecido como um nó escravo

) Executa um processo de fundo chamado DataNode. Este processo fundo (também conhecido como um demônio) Mantém o controle das fatias de dados que o sistema armazena em seu computador. Ele fala regularmente para o servidor principal para HDFS (conhecido como o NameNode) para informar sobre a saúde eo status dos dados armazenados localmente.

Video: Hadoop Distributed File System (HDFS) Introduction

blocos de dados são armazenados como arquivos raw no sistema de arquivos local. Do ponto de vista de um usuário do Hadoop, você não tem idéia de qual dos nós escravos tem as partes do arquivo que você precisa para processar. De dentro do Hadoop, você não vê blocos de dados ou como eles são distribuídos em todo o cluster - tudo que você vê é uma lista de arquivos no HDFS.

A complexidade de como os blocos de arquivos são distribuídos em todo o cluster está escondido de você - você não sabe o quão complicado isso tudo é, e você não faz necessidade saber. Na verdade, a nós escravos em si não sei mesmo o que está dentro dos blocos de dados que está armazenando. É o servidor NameNode que conhece os mapeamentos dos quais blocos de dados compõem os arquivos armazenados no HDFS.

Melhor vida com a redundância

princípio de design um núcleo de HDFS é o conceito de minimizar o custo dos nós escravos individuais usando componentes de hardware commodity. Para sistemas massivamente escaláveis, essa idéia é sensata porque os custos de escalar rapidamente quando você precisa de centenas ou milhares de nós escravos. Usando hardware de baixo custo tem uma consequência, porém, em que os componentes individuais não são tão confiáveis ​​quanto hardware mais caro.

Quando você está escolhendo opções de armazenamento, considere o impacto do uso de unidades de commodities, em vez de unidades de qualidade empresarial mais caros. Imagine que você tem um cluster de 750 nós, onde cada nó tem 12 unidades de disco rígido dedicados ao armazenamento HDFS.

Com base em uma taxa de falha anual (AFR) de 4 por cento para unidades de disco de commodities (uma dada unidade de disco rígido tem uma probabilidade de 4 por cento de falhar em um determinado ano, em outras palavras), o cluster irá provavelmente experimentar uma falha no disco rígido todos os dias Do ano.

Porque não pode haver tantos nós escravos, o seu fracasso também é uma ocorrência comum em grupos maiores com centenas ou mais nós. Com esta informação em mente, HDFS foi concebido no pressuposto de que todos componentes de hardware, mesmo no nível do nó escravo, não são confiáveis.



HDFS supera a falta de fiabilidade dos componentes individuais de hardware por meio de redundância: Essa é a idéia por trás dessas três cópias de todos os arquivos armazenados no HDFS, distribuídos por todo o sistema. Mais especificamente, cada bloco de arquivo armazenado em HDFS tem um total de três réplicas. Se um sistema de quebra com um bloco de arquivo específico que você precisa, você pode ligar para os outros dois.

Video: Hadoop Distributed File System - HDFS

Esboçando design de servidores nó escravo

Para equilibrar tais fatores importantes como o custo total de propriedade, capacidade de armazenamento e desempenho, você precisa planejar cuidadosamente o design de seus nós escravos.

Você normalmente ver nós escravos agora onde cada nó normalmente tem entre 12 e 16 unidades de disco rígido de 3 TB conectados localmente. nós escravos usar moderadamente rápido CPUs dual-soquete com seis a oito núcleos cada - sem demônios de velocidade, em outras palavras. Isto é acompanhado por 48GB de RAM. Em suma, este servidor é otimizado para armazenamento denso.

Porque HDFS é um sistema de arquivos de espaço ao nível do utilizador, é importante para otimizar o sistema de arquivos local sobre os nós escravos para trabalhar com HDFS. A este respeito, uma decisão de alto impacto ao configurar seus servidores é a escolha de um sistema de arquivos para a instalação do Linux nos nós de escravos.

Video: #15 Hadoop Distributed File System - HDFS : Hadoop Tutorial

Ext3 é o sistema de arquivos mais comumente implantado porque tem sido a opção mais estável para um número de anos. Dê uma olhada em Ext4, no entanto. É a próxima versão do Ext3, e está disponível por tempo suficiente para ser amplamente considerado estável e confiável.

Mais importante para os nossos propósitos, ele tem uma série de otimizações para lidar com arquivos grandes, o que torna a escolha ideal para servidores nó escravo HDFS.

Video: How Hadoop Distributed File System (HDFS) write and read file

Não utilizar o Logical Volume Manager Linux (LVM) - representa uma camada adicional entre o sistema de arquivos Linux e HDFS, o que impede Hadoop de otimizar seu desempenho. Especificamente, LVM agrega discos, o que dificulta a gestão de recursos que HDFS e os fios de fazer, com base em como os arquivos são distribuídos nas unidades físicas.


Publicações relacionadas