terça-feira, 7 de junho de 2016

Descomplicando, ou não, o Hadoop?

História do hadoop

Em 2003 foi feita uma proposta de uma ferramenta pelo google que deveria ter tais pontos:

- altamente escalavel
- tolerante a falhas
- GFS - google file system, sitema de arquivos distribuidos
- introdução do modelo MapReduce (Será abordado em outro post) - Base de toda a solução           proposta

MapReduce - Modelo de processamento paralelo e distribuido

Surgiu uma ferramenta da Apache - O Apache hadoop (contendo todos os requisitos citados pela google) - Citados acima - open source - Baseado em MapReduce

O projeto apache hadoop:


- Um framework composto por várias outras partes que formam um todo
- Permite o processamento distribuido (várias máquinas em um cluster) e paralelo (cada core do processador vai ficar responsável por parte do processamento)
- Hadoop common - aplicativos comuns a todos os outros módulos/parte do ambiente hadoop
- Hadoop distributed file system (HDFS)
- Sistema de arquivo próprio da ferramenta
- Sistema de arquivos otimizado do hadoop
- sistema preparado para trabalhar com grandes massas de dados de maneira paralela e                    distribuída

Ferramentas:


Hadoop Yarn
- Framework para distribuição de tarefa
- Gerenciar recurso do cluster
- Trabalha com memória disponível, tolerância a falhar de maneira automática
Hadoop MapReduce
- principal idéia da ferramenta
- Em duas funções principais
- Map
- Reduce
- Processamento distribuido, paralelo e tolerante a falhas
Ambari
- Ferramenta para Gerenciar e monitorar o uso das CPU's
- Consumo de CPU, memória e rede por máquina / a utilização total do cluster
- Consegue ver falhar e recupereções do cluster
HBase
- Banco de dados não relacional e distribuido
- Suporta armazenamento estruturado em grandes tabelas (Big Table)
Similar a um SGBD normal mas feito para um volume de dados
- Aproveita todas as vantagens do modelo MapReduce
Hive
- Estrutura para DW (otimizado para dados sumarizados)
- é possível integração das big tables (HBase) com o Hive
- Suporta consultas SQL, indexação e Grandes Conjuntos de dados
Mahout
- Biblioteca para machine learning
- Mineração de dados por meio de classificações, agrupamento e etc
- Similar com a ferramenta ECA
Spark
- Estrutura que prioriza processamento em memória
- Hadoop utiliza muito a gravação em disco x Spark em memória
- MAchine learning, grafos e streaming
Zookeeper
- coordena bloqueios, sincronização de threads e serviços
- mantém e coordena sicronização de threads. Facilita toda a parte de programação

Obrigado por toda a atenção

2 comentários: