Perguntas e Respostas sobre Processamento Distribuído com Hadoop – Parte 2

Artigo escrito por: Ademir Aparecido Monteiro – Cientista e Engenheiro de Dados

Para quem não leu ainda a parte 1, sugiro que leia, pois desta forma esse artigo será muito mais produtivo.

Continuando as dúvidas, no artigo anterior paramos na dúvida 9. Vamos prosseguir com a próxima.

Neste artigo falaremos somente sobre os outros softwares que fazem parte do “Ecossistema Hadoop”.

Dúvida 10:

O que é Hadoop MapReduce?

Mais uma sigla (ou sopa de letrinhas?). MapReduce (também conhecido como mapeamento e redução) é parte integrante do sistema de arquivos Hadoop. É um modelo de programação, que lida com grandes volumes de dados (Big Data). O seu poder de processamento está na capacidade de realizar processamento paralelo utilizando vários computadores que fazem parte do cluster. O MapReduce tem flexibilidade elástica para dimensionar rapidamente a quantidade de computadores com o objetivo de diminuir o tempo de execução.

 

Dúvida 11:

O que é Spark MapReduce?

O Apache Spark, ou simplesmente Spark, é um mecanismo de código aberto para computação distribuída.

Sua principal característica é o de processamento de dados em grande escala (Big Data). E para realizar o processamento, o Spark utiliza o Hadoop HDFS como local de armazenamento dos dados. Porém pode ser processado em outras plataformas, por exemplo, seu computador local, na nuvem, etc.

O Spark dispõe de outros módulos para auxiliar nas atividades, tais como, instruções SQL, streaming de dados, machine learning e processamento de gráficos.

Foi desenvolvido no AMPLab da Universidade da Califórnia e posteriormente repassado para a Apache Software Foundation que o mantém desde então.

Quer saber mais? Acessa o link oficial do Spark: https://spark.apache.org/

 

Dúvida 12:

Qual a diferença entre Hadoop MapReduce e Spark?

 

A principal diferença entre eles está na forma de realizar o processamento: o Spark pode fazer isso na memória, enquanto o Hadoop MapReduce precisa ler e gravar em um disco. Como resultado, a velocidade de processamento do Spark é muito maior.

Então quer dizer que devemos sempre usar o Spark? Depende da quantidade de dados que precisam ser processados. Neste caso é necessário verificar se tem memória suficiente para processar os dados. Se não tiver, terá que utilizar o Hadoop MapReduce.

Dúvida 13:

O Hadoop é um banco de dados?

Essa é uma confusão muito comum relacionado ao Hadoop. O Hadoop NÃO é um banco de dados. É somente um armazenador de arquivos semelhando a forma de armazenar arquivos que tem no seu próprio computador.

 

Dúvida 14:

O que é o Hive?

Mais uma animal da natureza para o ecossistema do Hadoop. Bom, é um animal meio elefante, meio abelha… rss.

O Hive é um sistema de data warehouse para o Apache Hadoop, projetado para trabalhar com grandes conjuntos de dados.

É permitido realizadas diversas consultas e análise de dados através da linguagem HiveQL, ou simplesmente HQL.

Quer se aprofundar no assunto? Segue o link da página oficial do Hive: https://hive.apache.org/

 

Dúvida 15:

O Hive é um banco de dados?

Essa é outra confusão com relação aos componentes do Hadoop. O Hive não é um banco de dados. O que o Hive consegue realizar uma abstração dos arquivos do Hadoop (HDFS) simulando um Data Warehouse com grande poder de processamento utilizando o MapReduce. O Hive tem uma linguagem conhecida com HiveQL (ou HQL) muito semelhante ao SQL.

 

Dúvida 14:

O que é HBase?

Mais uma animal para o ecossistema do Hadoop… rss

HBase é um banco de dados distribuído open-source orientado a coluna. Foi modelado e construído a partir do BigTable do Google, e escrito em Java. O Hbase tem fácil integração com o Hadoop. Sendo assim, pode utilizar o MapReduce para distribuir o processamento dos dados, podendo processar facilmente vários terabytes de dados.

É excelente para armazenar dados multi-estruturados.

Quer saber mais sobre o HBase? Segue o link para a página oficial: https://hbase.apache.org/

 

Dúvida 15:

O que é Apache Pig?

É exatamente esse o logo do Apache Pig. O nosso zoológico está aumentando.

Antes de responder o que é Apache Pig, vamos voltar ao MapReduce. Lembra? Se não lembra volte para a dúvida 10.

Utilizar o MapReduce não é trivial. É necessário escrever programas extremamente complexos. Pensando nisso, o Apache Pig veio para facilitar essa tarefa. Agora vamos responder o que é Apache Pig.

Apache Pig é uma ferramenta usada para processar grandes conjuntos de dados. Através da linguagem de alto nível de script, “Pig Latin”, é possível desenvolver programas para a análise de dados utilizando o poder de processamento do MapReduce.

Quer saber mais sobre o Apache Pig? Então dê uma olhada no link https://pig.apache.org/

 

Dúvida 16:

O que é e o Apache Giraph?

Apesar de ter nome de animal (girafa) o logotipo não é do animal. Não importa, mais um animal para o zoológico. rss

Apache Giraph é um framework de processamento grafo iterativo, construído em cima do Apache Hadoop utilizando o poder de processamento do MapReduce. Muito utilizado em redes sociais (por exemplo, Facebook) para verificar a ligação entre as pessoas. Algo semelhante à imagem abaixo:

 

Dúvida 17:

O que é Apache Storm?

Precisa processar grande quantidade de dados tempo real e em alta velocidade? O Apache Storm é a ferramenta adequada para essa tarefa gigante.

Apache Storm é um sistema de computação em tempo real distribuído de código aberto. Facilita o processamento de fluxos de dados ilimitados com confiabilidade. O Apache Storm é simples e pode ser usado com qualquer linguagem de programação. E aproveita todas as particularidades do Hadoop HDFS.

O Apache Storm tem muitas utilidades: análise em tempo real, aprendizado de máquina online, computação contínua, RPC distribuído, ETL e muito mais.

Ficou interessado no Apache Storm? Então saiba mais em https://storm.apache.org/

 

Dúvida 18:

O que é Apache Flink?

Ahh não!!! Mais um animal para o nosso zoológico. rss

O Apache Flink é uma estrutura e mecanismo de processamento distribuído para cálculos de dados ilimitados. Pode ser executado em todos os ambientes de cluster comuns. O Hadoop é um desses clusters. Realiza todos os cálculos em grandes volumes de dados na memória.

Ficou interessado no Apache Flink? Segue a página oficial: https://flink.apache.org/

 

Dúvida 19:

O que é Apache Cassandra?

 

O Apache Cassandra é um banco de dados distribuído NoSQL de código aberto confiável. Tem alta escalabilidade e alta disponibilidade sem comprometer o desempenho. A escalabilidade linear e a tolerância à falhas comprovada em hardware comum ou infraestrutura em nuvem o tornam a plataforma perfeita para dados de missão crítica.

A construção do Cassandra tem como base a arquitetura do DynamoDB, da Amazon Web Services. Seu modelo de dados é baseado no BigTable, do Google.

 

Dúvida 19:

O que é MongoDB?

 

MongoDB é um programa de banco de dados NoSQL e que permite armazenar documentos semelhantes ao formato JSON.

O seu código é aberto e roda em multiplataforma e foi escrito na linguagem C++. Foi projetado para armazenar grandes quantidades de dados. Além de permitir trabalhar eficientemente com grandes volumes de dados.

Quer usar o MongoDB para armazenar documentos. Então veja mais detalhes no link https://www.mongodb.com/

 

Dúvida 20:

O que é e o que faz o zookeeper no Hadoop?

Finalmente encontramos o personagem que vai cuidar do zoológico do Ecossistema Hadoop. Em tradução livre, é algo parecido como “funcionário do zoológico”

O Zookeper é uma ferramenta para gerenciar grandes clusters de computadores de forma centralizada. Entre os serviços realizados pelo ZooKeeper estão configurações dos computadores do cluster, nomear, sincronização distribuída e outros serviços de grupo.

Então se você tem um clusters de computadores que tal pensar no Zookeeper?

Quer saber mais? Segue o link oficial: https://zookeeper.apache.org/

Essas são as dúvidas mais recorrentes para quem se aventura no ecossistema hadoop. Sei que algumas pessoas terão outras dúvidas que não estão aqui. Porém é inviável falar sobre todas as dúvidas pertinentes ao Hadoop e a tudo que envolve esse ecossistema.

Poderíamos falar sobre tantas outras ferramentas que compõem o ecossistema hadoop tais como, Kafka, sqoop, Mahout, Impala, etc.

Deixo para você o desafio de acrescentar mais respostas às dúvidas que considerarem mais importantes.

 

plugins premium WordPress