Apache Hadoop é um framework para o processamento e armazenamento de grandes quantidade de dados de forma distribuída. Hoje, o Apache Hadoop é uma das principais ferramentas de processamento e armazenamento de dados, visto que ele pode ser rodado em hardware barato, e processar grandes quantidades dados de forma rápida e confiável.
Além dessas vantagens, o Apache Hadoop é open-source, então, não há custos na aquisição do programa. Porem, é importante informar que devido a sua complexidade, é necessário um profissional adequado para configurar e realizar a gestão do cluster Hadoop.
Algumas características do Apache Hadoop
Escalabilidade | O Apache Hadoop é altamente escalável, sendo possível passar de uma simples maquina no cluster para milhares! |
Tolerante a falhas | O Apache Hadoop é altamente tolerante a falhas. Como ele foi programado para rodar em hardware barato, espera-se que haja falhas nas máquinas e o Hadoop é totalmente preparado para elas. |
Alta disponibilidade | O Apache Hadoop é altamente disponível, pois sua arquitetura de tolerância a falhas permite que o sistema continue funcionando mesmo quando há problemas em um dos nós do cluster. |
Componentes do Apache Hadoop
Como o todo framework, o Hadoop é um conjunto de programas, seus principais componentes são:
- HDFS (Hadoop Distributed File System)
- MapRecuce
HDFS
HDFS é o responsável pelo armazenamento e distribuição dos dados no cluster. Seus principais componentes são o NameNode e DataNode, que nada mais são que nós do cluster Hadoop. O primeiro, NameNode, é o nó mestre, responsável pela alocação dos blocos dos arquivos, mapeamento dos metadados e distribuição dos blocos. Ele acaba sendo um ponto único de falha, então uma boa arquitetura pede mais de um NameNode. O DataNode basicamente atende as requisições do NameNode e armazena os blocos de arquivos.
Em breve farei uma postagem com maiores detalhes do HDFS, por hora, considerem isso um overview do conteúdo.
MapReduce
MapReduce é a parte responsável pelo processamento de dados de forma distribuída, onde há o mapeamento do arquivo, depois, um agrupamento para reduzir a quantidade de dados.
Abordaremos aspectos mais avançados em postagens futuras, mas essencialmente o MapReduce é quem processa os dados dentro do Hadoop.
Essa foi uma introdução simples sobre o Apache Hadoop, em breve veremos aspectos mais avançados do framework. 🙂
Até!