Cetax

Apache Hadoop: Tudo o que você precisa saber

O que é Apache Hadoop?

Apache Hadoop, é o principal framework utilizado no processamento e armazenamento de grandes conjuntos de dados – Big Data. Inicialmente inspirado no MapReduce e no GoogleFS, o Apache Hadoop é um software Open-Source, construído em Java e mantido pela Apache Foundation. 

Uma plataforma capaz de armazenar e processar, em larga escala, grandes conjuntos de dados – Big Data, que funciona em clusters de hardware de baixo custo, tolerante a falhas.

Apache Hadoop – Benefícios

Algumas das razões para se usar Hadoop é a sua “capacidade de armazenar, gerenciar e analisar grandes quantidades de dados estruturados e não-estruturados de forma rápida, confiável, flexível e de baixo custo.

1. Escalabilidade e Desempenho 

Tratamento de dados local para cada nó em um cluster Hadoop permite armazenar, gerenciar, processar e analisar dados em escala petabyte.

2. Confiabilidade 

Clusters de computação de grande porte são propensos a falhas de nós individuais no cluster. Hadoop é fundamentalmente resistente – quando um nó falha de processamento é redirecionado para os nós restantes no cluster e os dados são automaticamente re-replicado em preparação para falhas de nó futuras.

3. Flexibilidade 

Ao contrário de sistemas de gerenciamento de banco de dados relacionais tradicionais, você não tem que esquemas estruturados criados antes de armazenar dados. Você pode armazenar dados em qualquer formato, incluindo formatos semiestruturados ou não estruturados, e em seguida, analisar e aplicar esquema para os dados quando ler.

4. Baixo custo 

Ao contrário de software proprietário, o Hadoop é open source e é executado em hardware commodity de baixo custo.

Clusters

Exemplo da Estrutura de um Cluster

Exemplo da Estrutura de um Cluster

Clusters é o nome dado ao conjunto de computadores que trabalham de forma sincronizada para funcionar como um único computador. São diversas máquinas que se comportam como uma única máquina. O cluster é útil para aumentar a capacidade no processamento e armazenamento de grande conjunto de dados (Big Data)

Clusters, por quê?

Uma única máquina/servidor não consegue processar todo esse grande volume de dados (Big Data). O volume de dados é imenso e exige mais de uma única máquina para processar. Por isso, criou-se o cluster, uma forma de gerenciar diversas máquinas que funcionam como uma única máquina.

Exemplo: Yahoo possui uma infraestrutura de Big Data com 4 mil máquinas para armazenar e processar o grande conjunto de dados (big Data).

Apache Hadoop – Estrutura básica

Interface Gráfica do Ambari – Gerenciador do Hadoop

O Hadoop possui dois componentes básicos: Hadoop HDFS e Hadoop MapReduce.

Armazenamento Distribuído (Cluster, conjunto de computadores)

Computação Distribuída (Cluster, conjunto de computadores)

HDFS – Hadoop File System

Hadoop Distributed File System (HDFS), é responsável por gerenciar o disco das máquinas que compõem o Cluster. HDFS também serve para leitura e gravação dos dados.

HDFS – Características 

MAPREDUCE

Ao contrário do HDFS, que gerencia o armazenamento, o MapReduce, é responsável por gerenciar o processamento dos dados em um ambiente Cluster (conjunto de máquinas)

MAPREDUCE – Cacterísticas 

Apache Hadoop – Ecossistema

Aplicações que compõem o Ecossistema Hadoop

Mais acima, ainda neste artigo, compreendemos que o Hadoop é composto, inicialmente, pelo HDFS e o MapReduce. No entanto, as duas ferramentas não são suficientes para se trabalhar com Big Data. Por isso, faz-se necessário outras ferramentas para suprir diferentes necessidades de negócios, aplicações e arquitetura de dados, ampliando o Hadoop com mais “aplicações”.

ZooKeeper

ZooKeeper é um serviço de coordenação distribuída para gerenciar grandes conjuntos de Clusters.

Oozie

Apache Oozie é um sistema de agendamento de WorkFlow, usado para gerenciar principalmente os Jobs de MapReduce.

Pig

Apache Pig, é uma linguagem de procedimentos de alto nível para consultar grandes conjuntos de dados semiestruturados usando Hadoop e a Plataforma MapReduce

Sqoop

Apache Sqoop, é um projeto do ecossistema Hadoop, cuja responsabilidade é importar e exportar dados do banco de dados de dados relacionais.

Spark

Apache Spark, é uma ferramenta Big Data para o processamento de grandes conjuntos de dados. Foi desenvolvido para substituir o MapReduce, pois processa 100x mais rápido que o MapReduce.

HBase

Apache Hbase, é um banco de Dados não relacionais, projetado para trabalhar com grande conjunto de dados (Big Data). É o banco de dados oficial do hadoop.

Flume

Apache Flume, é um serviço que permite enviar dados diretamente para o HDFS. É um serviço que funciona em ambiente dstribuido (em cluster) para coletar, agregar e mover grandes quantidades de dados de forma eficiente.

Mahout

Apache Mahout, é dedicado a Machine Learning – Data Science. Ele permite a utilização dos principais algoritmos de clustering, testes de regressão e modelagem estatística.

Kafka

Apache Kafka, é foi desenvolvido pelo Linkedin e liberado como projeto Open-source em 2011. O Apache Kafka é um sistema para gerenciamento de fluxo de dados em tempo real, gerados a partir de websites, aplicações e sensores.

Ambari

Apache Ambari tem como objetivo tornar o gerenciamento do Hadoop mais simples. O Ambari fornece uma interface de usuário da Web de gerenciamento do Hadoop intuitiva e fácil de usar.

Apache Hadoop – Soluções Comerciais

Principais players no mercado de Big Data

AMAZON ELASTIC MAPREDUCE – EMR

AWS Elastic MapReduce é uma distribuição Hadoop da Amazon, uma plataforma de análise de dados bem organizada e construída sobre a arquitetura HDFS.

HORTONWORKS

HortonWorks Data Plataform (HDP_ é uma suíte de funcionalidades essenciais para implementação do Hadoop, que pode ser usado para qualquer plataforma de Dados.

CLOUDERA

Cloudera, fundada por um grupo de engenheiros do Yahoo, Google e Facebook, está focada em fornecer soluções empresariais do Hadoop.

MAPR

A MapR permite utilização de aplicações baseadas em Hadoop e Spark, para at ender às necessidades críticas de negócio, que operam 24/7.

PIVOTAL

Pivotal HD, é uma distribuição comercial do Hadoop. Ele consiste em um conjunto de ferramentas que vsam acelerar projetos de análise de dados e expandir as funcionalidades do Hadoop

MICROSOFT – AZURE

Azure HD Insight é uma distribuição Apache Hadoop distribuída em Cloud. O Azure lida com quantidade de dados, de terabytes até petabytes, e permite a inclusão de nodes sob demanda.

Hadoop – Trilha de Aprendizagem

A Cetax é parceira oficial HortonWorks no Brasil

Como vimos, o Hadoop é uma ferramenta que abriga diversas aplicações que a deixa mais robusta para armazenar e processar um grande conjunto de dados – Big Data. E, para ingressar no mercado de Big Data, recomenda-se seguir uma trilha de aprendizagem.

A Cetax é representante Oficial HortonWorks no Brasil e, por isso, ministra cursos e treinamentos de Hadoop com know-how internacional.

Na trilha a seguir,  você saberá qual caminho seguir e qual papel irá desempenhar ao trabalhar com Big data.

HADOOP PARA INICIANTES

Para quem quer ingressar em Big Data, é recomendável e indispensável que o profissional conheça, na prática, o ambiente Hadoop. E, como todo bom profissional, possuir uma certificação é imprescindível.

Para quem quer iniciar, recomenda-se o curso:

HADOOP PARA DESENVOLVEDORES

HADOOP PARA DESENVOLVEDORES Após realizar o curso Hadoop Essentials, você terá uma noção de como tudo funciona e como é o ambiente Hadoop.

Se você tem um perfil de desenvolvedor/programador, o próximo passo é especializar-se nas aplicações Hadoop que integram a parte de desenvolvimento da plataforma de Big Data (hadoop).

Alguns cursos para quem deseja trabalhar com Desenvolvimento:

HADOOP PARA ADMINISTRADORES

Caso não tenha se identificado como um desenvolvedor do ambiente hadoop, você pode optar por ser um administrador da plataforma Hadoop e gerenciar os clusters e o ambiente de trabalho para os desenvolvedores e analistas de Big Data.

Para quem deseja trabalhar com administração do ambiente hadoop, é necessário realizar alguns cursos. São eles:

HADOOP PARA ANALISTAS

Bom, se até aqui você não se identificou como Desenvolvedor ou Administrador do ambiente Hadoop, talvez você seja um Analista.

Se você tem afinidade com matemática, estatística, quer aprender Machine Learning (aprendizagem de máquina, algoritmo, inteligência artificial) e analisar dados para obter insights e criar análises preditivas, você deve fazer o Hadoop Data Science.

Conclusão – Resumo

O Hadoop é um framework (um software que possibilita a implementação de diversas aplicações para deixa-lo mais robusto) utilizado em Big Data. Suas aplicações nativas são o HDFS e o MapReduce.

Além disso, o Ecossistema Hadoop é composto por diversas aplicações: Yarn, Spark, Flume, Kafka, ZooKeepper, Hbase, Hive, Pig etc.

O Hadoop possui distribuições das empresas: HortonWorks, Cloudera, Microsoft – Azure, Amazon, Pivotal, MapR etc.

Para ingressar no Big Data, o interessado precisa saber como trabalhar com o Hadoop. Dentro do Hadoop, é possível trabalhar no Desenvolvimento, na Administração do ambiente ou com Análise/Ciência de Dados.

 

Sair da versão mobile