Engenharia e Análise de Dados
23. Apache Hadoop
23º capítulo da apostila Engenharia e Análise de Dados: estudo contínuo e em linguagem simples sobre Apache Hadoop, com conceitos conectados, aplicações e mapa mental.
Neste capítulo · 13 seções⌄
- O fio condutor
- Separar armazenamento, recursos e processamento
- HDFS: metadados e blocos
- Tolerância a falhas e segurança
- MapReduce e distribuição do trabalho
- Spark no ecossistema
- Streaming, atrasos e estado
- Caso integrado e raciocínio aplicado
- Resumo para revisão
- Ligando as partes em uma análise completa
- Como estudar e aplicar o capítulo
- Síntese e passagem para o próximo capítulo
- Base de cobertura
Hadoop reúne componentes com papéis distintos de armazenamento, recursos e processamento. A compreensão desses papéis permite interpretar questões sobre HDFS, YARN e MapReduce, além das interfaces com Spark e streaming presentes neste tópico. O foco é explicar o percurso dos dados e os compromissos de desempenho, recuperação e segurança.
Com dados compreendidos e governados, avançamos para preparação, modelagem analítica, aprendizado de máquina e processamento em escala. Os capítulos ligam fundamentos, algoritmos e aplicações. Este é o capítulo 23 de 24 da disciplina Engenharia e Análise de Dados. Ele retoma Conceitos e arquitetura de Big Data e utiliza essa base para avançar. Na sequência, estudaremos Apache Spark.
O fio condutor
Ciência de Dados começa com uma pergunta e termina com uma decisão que precisa ser compreendida, avaliada e acompanhada. Entre esses dois pontos, dados são coletados, examinados e transformados; métodos são escolhidos; resultados são validados; e limitações são comunicadas. Nenhuma etapa compensa automaticamente uma falha grave ocorrida na etapa anterior.
Neste capítulo, use Apache Hadoop para acompanhar três dimensões: o problema que se deseja resolver, a evidência disponível e o critério usado para avaliar o resultado. Essa separação ajuda a evitar soluções tecnicamente sofisticadas que não respondem à necessidade real.
Separar armazenamento, recursos e processamento
Começamos por Separar armazenamento, recursos e processamento, pois essa base organiza os conceitos e exemplos que aparecerão no restante do capítulo.
HDFS é o sistema de arquivos distribuído; YARN gerencia recursos e execução de aplicações; MapReduce é um modelo e mecanismo de processamento em lote. Eles se relacionam, mas não são intercambiáveis. YARN não armazena blocos como um sistema de arquivos, e o NameNode não é o escalonador global de recursos de computação.
No YARN, o ResourceManager coordena recursos do cluster, enquanto NodeManagers acompanham os nós e a execução em contêineres de recursos. Um ApplicationMaster coordena necessidades e execução de uma aplicação. O termo contêiner YARN indica uma alocação de recursos e não implica obrigatoriamente um contêiner Docker. A separação permite que diferentes mecanismos de processamento utilizem a infraestrutura, conforme configuração e compatibilidade.
HDFS: metadados e blocos
Depois de compreender Separar armazenamento, recursos e processamento, passamos a HDFS: metadados e blocos. A nova seção acrescenta outra etapa ao mesmo raciocínio e mostra como as decisões anteriores influenciam as próximas.
O NameNode mantém o namespace e os metadados que relacionam arquivos e blocos. DataNodes armazenam e servem os blocos e enviam informações de estado ao NameNode. O cliente consulta metadados e transfere dados com os nós apropriados; não é necessário que todos os bytes dos arquivos atravessem permanentemente o NameNode. Essa distinção é central para entender capacidade e falhas.
HDFS foi desenhado para alto throughput com arquivos grandes e acesso predominantemente sequencial, e não para minimizar a latência de cada pequeno registro. Muitos arquivos pequenos pressionam metadados e acrescentam custos de abertura e agendamento. Consolidar arquivos pode ajudar; formatos colunares podem reduzir leitura em cargas analíticas, embora simplesmente trocar o formato sem reduzir a quantidade de arquivos não elimine o problema dos metadados.
Continue lendo de graça
O capítulo inteiro está liberado no plano gratuito
Criar conta leva menos de um minuto e não pede cartão. Você destrava o texto completo, o mapa mental, o PDF para estudar off-line e ainda resolve questões inéditas todo dia.
Leu o resumo? Agora pratique.
São 60 questões inéditas de Apache Hadoop, todas comentadas alternativa por alternativa.
Você volta para este capítulo depois de criar a conta.
Fontes consultadas
- Apache Hadoop: arquitetura HDFS
- Apache Hadoop: configuração de cluster
- Apache Spark: visão de cluster
- Acervo publicado de Ciência de Dados: 60 questões deste tópico; conceitos revisados e organizados nas seções.