O que é Hadoop? Se você é um profissional de tecnologia ou recrutador técnico certamente já ouviu este termo nas descrições das vagas de emprego. Afinal, a plataforma é muito utilizada no desenvolvimento web.
Por isso, a explicação está no Dicionário Tech da Coodesh, uma seção do blog que contextualiza os principais conceitos, ferramentas e linguagens usadas pelos desenvolvedores. Confira este conteúdo e aprofunde seus estudos em Hadoop para se destacar nos próximos processos seletivos.
Definição de Hadoop
Basicamente, Hadoop é uma plataforma de software escrita em Java. De computação distribuída e voltada para clusters, ele é usado no processamento de grandes volumes de dados.
A ferramenta é open-source e usa modelos de programação simples. Hadoop pode atender desde servidores únicos até muitas máquinas, oferecendo todo o suporte necessário. O seu diferencial é detectar e lidar com falhas no aplicativo, sem depender de hardware. Desse modo, ele oferece serviço altamente disponível no cluster.
Histórico de Hadoop
Hadoop foi inspirado no MapReduce e no GoogleFS em meados de 2003. A partir dos dois artigos, Hadoop começou a ser desenvolvido no projeto Apache Nutch, porém passou oficialmente para o projeto Hadoop no ano de 2006. Já em 2008, ele se tornou open source.
Aliás, uma curiosidade: o nome desta plataforma foi escolhido com base no elefantinho de brinquedo do filho de Doug Cutting, um dos desenvolvedores criadores da ferramenta. Junto com Doug, Mike Cafarella também se dedicou à criação do recurso.
Hoje, Hadoop é um projeto da Apache considerado de alto nível e atualizado por uma comunidade engajada. Um dos maiores contribuidores é o Yahoo!, que usa essa plataforma em seus negócios.
Módulos de Hadoop
Conheça agora os principais módulos de Hadoop:
- Common: aqui estão as bibliotecas e arquivos que são utilizados em todos os módulos de Hadoop;
- Hadoop Distributed File System (HDFS): trata-se de um sistema que armazena dados dentro do cluster conforme a demanda;
- YARN: possibilita a gestão de recursos para os processos executados no Hadoop;
- MapReduce: possui etapas para o processamento em larga escala.
De modo geral, os módulos são projetados pensando que existem falhas em hardwares e que essas falhas precisam ser tratadas por software pelo framework.
Relevância do Hadoop
Veja agora os pontos mais importantes da plataforma e porque é interessante utilizá-la:
Agilidade: A capacidade de estocar e processar vastas quantidades de variados tipos de informações de maneira ágil. À medida que os volumes e categorias de dados continuam a expandir constantemente, em grande parte devido às plataformas de mídia social e à proliferação da Internet das Coisas (IoT), isso ganha um papel de destaque.
Potência de processamento: o paradigma computacional descentralizado do Hadoop efetua o processamento de Big Data com rapidez. Quanto maior o número de unidades de processamento empregadas, maior será a capacidade de processamento obtida.
Resistência a falhas: a manipulação de dados e aplicativos está resguardada contra possíveis defeitos de hardware. No caso de uma unidade falhar, as tarefas são automaticamente redirecionadas para outras, assegurando a continuidade da computação distribuída.
Flexibilidade: diferentemente dos tradicionais bancos de dados relacionais, não é necessário realizar pré-processamento dos dados antes de arquivá-los. É possível conservar os dados em sua forma bruta e determinar sua utilização posteriormente. Isso abrange informações não estruturadas, como texto, imagens e vídeos.
Economia de custos: a estrutura de código aberto é gratuita e se utiliza de equipamentos convencionais para acomodar vastas quantidades de informações.
Capacidade de expansão: a ampliação do sistema para lidar com volumes maiores de dados é facilmente realizável ao acréscimo de unidades.
Conclusão
Como você viu, o que é Hadoop é importante para o desenvolvedor que atua com desenvolvimento web, Internet das Coisas e Big Data. Por isso, é uma hard skill necessária ao seu currículo.
Você pode continuar vendo a explicação de mais termos no Dicionário Tech e também se inscrever na nossa plataforma para ter acesso a vagas e testes práticos.