82
Treinamento Hadoop Parte 3

Treinamento hadoop - dia3

Embed Size (px)

DESCRIPTION

Treinamento Hadoop - dia 3

Citation preview

Page 1: Treinamento hadoop - dia3

Treinamento Hadoop

Parte 3

Page 2: Treinamento hadoop - dia3

Alexandre Uehara

● Analista Desenvolvedor (E-commerce)

● Coordenador Trilha Big Data (TDC

2013)

http://www.thedevelopersconference.com.

br/tdc/2013/saopaulo/trilha-bigdata#programacao

● Geek e nerd, trabalha com Python,

Java, C, BigData, NoSQL, e outras

coisas mais que aparecem no dia a dia

Page 3: Treinamento hadoop - dia3

NossaAgenda:

Page 4: Treinamento hadoop - dia3

Dia 3!!!

Page 5: Treinamento hadoop - dia3

Dia 1:IntroduçãoConceitos Básicos Big Data→ O que é?→ 4 V's→ Por que agora?→ Onde Usar?

→ Desafio→ BI x Big Data→Profissional de Big Data→ Ferramentas→ Dicas

Page 6: Treinamento hadoop - dia3

Dia 2 e 3:Map Reduce e Hadoop→ História (Google)→ ConceitoMapReduce→ Hadoop→ Cases

Page 7: Treinamento hadoop - dia3

Dia 4Outras

Ferramentas→ Ecossistema→ Ferramentas → Distribuições Hadoop→ Hadoop na Nuvem

→ NoSQL Tipos → NoSQL Exemplos → Data Science → Machine Learning

Page 8: Treinamento hadoop - dia3

Dia 5, 6 e 7Hands-on

→ Pyhton→ Hadoop

Page 9: Treinamento hadoop - dia3

Resumo...

Page 10: Treinamento hadoop - dia3
Page 11: Treinamento hadoop - dia3
Page 12: Treinamento hadoop - dia3
Page 13: Treinamento hadoop - dia3
Page 14: Treinamento hadoop - dia3
Page 15: Treinamento hadoop - dia3

Big data

Page 16: Treinamento hadoop - dia3

Big data ferramenta

Page 17: Treinamento hadoop - dia3

Big data Hadoopferramenta

Page 18: Treinamento hadoop - dia3

Big data Hadoopferramenta

A partir dele criou-se

Page 19: Treinamento hadoop - dia3

Big data Hadoop

MapReduce

ferramenta

A partir dele criou-se

Page 20: Treinamento hadoop - dia3

Big data Hadoop

MapReduce

ferramenta

A partir dele criou-se

Criou

Page 21: Treinamento hadoop - dia3

Big data Hadoop

MapReduceGoogle

ferramenta

A partir dele criou-se

Criou

Page 22: Treinamento hadoop - dia3

Google Map Reduce

Page 23: Treinamento hadoop - dia3

Map Reduce

Google Map Reduce

Page 24: Treinamento hadoop - dia3

Map Reduce Google FileSystem

Google Map Reduce

Page 25: Treinamento hadoop - dia3

Por que utilizamos Map Reduce +

GFS?

Page 26: Treinamento hadoop - dia3

Por que utilizamos Map Reduce +

GFS?

● Escalável

● Econômico

● Eficiente

● Confiável

Page 27: Treinamento hadoop - dia3

Map Reduce

● Decompõe tudo em ???

Page 28: Treinamento hadoop - dia3

Map Reduce

● Decompõe tudo em Pares - chave :

valor

● Depois???

Page 29: Treinamento hadoop - dia3

Map Reduce

● Decompõe tudo em Pares - chave :

valor

● Depois sumariza os resultados

Page 30: Treinamento hadoop - dia3
Page 31: Treinamento hadoop - dia3

Por que um elefante amarelo?

Por que Hadoop?

Page 32: Treinamento hadoop - dia3
Page 33: Treinamento hadoop - dia3

Framework open source para escrever e

processar de forma escalável, aplicações

distribuídas com grandes volumes de

dados

Definição

Page 34: Treinamento hadoop - dia3

● Para executivos: projeto de software livre da Apache que tem como objetivo obter

valor do volume/velocidade/variedade incrível de dados sobre sua organização.

Use os dados em vez de jogar a maioria fora.

● Para gerentes técnicos: um conjunto de softwares livres que mina o BigData

estruturado e não estruturado de sua empresa. Ele integra com seu ecossistema

existente de Business Intelligence.

● Para o Jurídico: um conjunto de software livre empacotado e suportado por

diversos fornecedores

● Para a Engenharia: um ambiente de execução Mapear/Reduzir massivamente

paralelo, sem compartilhamento e baseado em Java.

O que é

Page 35: Treinamento hadoop - dia3

● Código aberto - Licença Apache

Software Foundation

● Implementado em Java

● Inspirado no GFS e MapReduce do

Google

● Projeto top-level da Fundação Apache

O que é

Page 36: Treinamento hadoop - dia3

● Máquinas comuns - hardware comodities

(de baixo custo, de baixa confiabilidade)

● Rede comum

● Tolerância a falhas automática

● Poucos administradores

● Facilidade de uso

● Poucos programadores

● Foco na regra de negócio

Vantagens

Page 37: Treinamento hadoop - dia3

http://thoughtworks.fileburst.com/assets/technology-radar-jan-2014-pt.pdf

Page 38: Treinamento hadoop - dia3

Sub-Projetos

Hadoop

Page 39: Treinamento hadoop - dia3

Map Reduce Google FileSystem

Google Map Reduce

Page 40: Treinamento hadoop - dia3

Hadoop MapReduce

HDFS

Hadoop

Page 41: Treinamento hadoop - dia3

Hadoop MapReduce

HDFS

Hadoop

Hadoop Commons

Page 42: Treinamento hadoop - dia3

● HDFS - Sistema de Armazenamento de

Dados distribuidos (Hadoop

Distributed File System)

● Map Reduce - Processamento paralelo

● Hadoop Commons - abstração

Serviços Chave

Page 43: Treinamento hadoop - dia3

Arquitetura Hadoop

Page 44: Treinamento hadoop - dia3

Nó Master

Nó Slave

Page 45: Treinamento hadoop - dia3

Nó Master

Page 46: Treinamento hadoop - dia3

Nó Master

Page 47: Treinamento hadoop - dia3

Nó Master

Nó Slave

Page 48: Treinamento hadoop - dia3

Nó Master

Nó Slave

Page 49: Treinamento hadoop - dia3

Nó Master

Page 50: Treinamento hadoop - dia3

Nó Master

● NameNode

● SecondaryNameNode

● JobTracker

Page 51: Treinamento hadoop - dia3

Nó Slave

Page 52: Treinamento hadoop - dia3

Nó Slave

● DataNode

● TaskTracker

Page 53: Treinamento hadoop - dia3

Nó Master

Nó Slave

● DataNode

● TaskTracker

● NameNode

● SecondaryNameNode

● JobTracker

Page 54: Treinamento hadoop - dia3

Nó Master

● NameNode

● Nó master (apesar de master

não armazena nada)

● Só tem metadados

● Ele é o core, o daemon vital

Page 55: Treinamento hadoop - dia3

Nó Master

● SecondaryNameNode

● Monitora o estado dos clusters (se um

cair ele sabe o que fazer)

● Cuida do log

● Um único SNN para cada cluster

● Não armazena dados

● De tempos em tempos faz o merge dos

dados

Page 56: Treinamento hadoop - dia3

Nó Master

● JobTracker

● Ligações entre as Aplicações e o

Hadoop

● Em caso de falha, ele quem sabe o que

fazer

Page 57: Treinamento hadoop - dia3

Nó Slave

● DataNode

● armazena dados

● Datanodes se reportam a

namenodes

● separa em no mínimo 3

réplicas

● se cai sistema não perde os

dados

Page 58: Treinamento hadoop - dia3

Nó Slave

● TaskTracker

● responsável pela execução

designada pelo JobTracker

Page 59: Treinamento hadoop - dia3

Nó Master

Nó Slave

● DataNode (armazena dados)

● TaskTracker (executa)

● NameNode (core)

● SecondaryNameNode (monitora)

● JobTracker (liga a aplicação/Hadoop)

Page 60: Treinamento hadoop - dia3
Page 61: Treinamento hadoop - dia3
Page 62: Treinamento hadoop - dia3

● Garante alto gerenciamento, confiabilidade,

usabilidade e desempenho

● Divide em poucos arquivos grades (padrão 64MB)

● Vai distribuindo cada parte para cada nó

● Recuperação é transparente

HDFS

Page 63: Treinamento hadoop - dia3

● Todos os arquivos no HDFS possuem múltiplas

réplicas (3 réplicas)

● Cada réplica em um nó diferente

● Ex: se tiver arquivo de 256MB, vai dividir em 4

blocos de 64MB, e cada bloco dividido em 3

máquinas diferentes para garantir redundâcia

e tolerancia a falha

HDFS

Page 64: Treinamento hadoop - dia3
Page 65: Treinamento hadoop - dia3
Page 66: Treinamento hadoop - dia3

Comunicação

Page 67: Treinamento hadoop - dia3

ComunicaçãoSSH

Page 68: Treinamento hadoop - dia3
Page 69: Treinamento hadoop - dia3

Hadoop Facts● Não é banco de dados

● Processamento background

● Tudo entra por um nó principal

(master) - um ponto de falha

● Precisa ser "Alimentado" com

dados. (como colocar 30TB onde vai

rodar o Hadoop?)

Page 70: Treinamento hadoop - dia3
Page 71: Treinamento hadoop - dia3

Cases

Page 72: Treinamento hadoop - dia3

Armazena log, como fontes de

estudos analíticos e machine

learning

Page 73: Treinamento hadoop - dia3

Armazena log, como fontes de

estudos analíticos e machine

learning

Otimização de buscas e

pesquisas

Page 74: Treinamento hadoop - dia3

Armazena log, como fontes de

estudos analíticos e machine

learning

Otimização de buscas e

pesquisas

Cálculo de gráfico,

análise de log, teste

A/B

Page 75: Treinamento hadoop - dia3

Recomendações: Quem você

pode conhecer

Page 76: Treinamento hadoop - dia3

Recomendações: Quem você

pode conhecer

Análise de logs e e

minerar dados para

sistema de recomendação

Page 77: Treinamento hadoop - dia3

Recomendações: Quem você

pode conhecer

Análise de logs e e

minerar dados para

sistema de recomendação

Gerar conteúdo e

agregar dados, fazer

análise e relatórios

Page 78: Treinamento hadoop - dia3

Armazenar e processar

tweets, arquivos de

logs, e outras coisas

mais

Page 79: Treinamento hadoop - dia3

Armazenar e processar

tweets, arquivos de

logs, e outras coisas

mais

Page 80: Treinamento hadoop - dia3

Armazenar e processar

tweets, arquivos de

logs, e outras coisas

mais

Page 81: Treinamento hadoop - dia3

Um resumo, Big Data, Map Reduce, Hadoop

Page 82: Treinamento hadoop - dia3

Alexandre Uehara

@AleUehara

linkedin.com/in/aleuehara

[email protected]

slideshare.net/aleuehara