treinamento hadoop - dia3
DESCRIPTION
Treinamento Hadoop - dia 3TRANSCRIPT
Treinamento Hadoop
Parte 3
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
NossaAgenda:
Dia 3!!!
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
Dia 2 e 3:Map Reduce e Hadoop→ História (Google)→ ConceitoMapReduce→ Hadoop→ Cases
Dia 4Outras
Ferramentas→ Ecossistema→ Ferramentas → Distribuições Hadoop→ Hadoop na Nuvem
→ NoSQL Tipos → NoSQL Exemplos → Data Science → Machine Learning
Dia 5, 6 e 7Hands-on
→ Pyhton→ Hadoop
Resumo...
Big data
Big data ferramenta
Big data Hadoopferramenta
Big data Hadoopferramenta
A partir dele criou-se
Big data Hadoop
MapReduce
ferramenta
A partir dele criou-se
Big data Hadoop
MapReduce
ferramenta
A partir dele criou-se
Criou
Big data Hadoop
MapReduceGoogle
ferramenta
A partir dele criou-se
Criou
Google Map Reduce
Map Reduce
Google Map Reduce
Map Reduce Google FileSystem
Google Map Reduce
Por que utilizamos Map Reduce +
GFS?
Por que utilizamos Map Reduce +
GFS?
● Escalável
● Econômico
● Eficiente
● Confiável
Map Reduce
● Decompõe tudo em ???
Map Reduce
● Decompõe tudo em Pares - chave :
valor
● Depois???
Map Reduce
● Decompõe tudo em Pares - chave :
valor
● Depois sumariza os resultados
Por que um elefante amarelo?
Por que Hadoop?
Framework open source para escrever e
processar de forma escalável, aplicações
distribuídas com grandes volumes de
dados
Definição
● 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 é
● Código aberto - Licença Apache
Software Foundation
● Implementado em Java
● Inspirado no GFS e MapReduce do
● Projeto top-level da Fundação Apache
O que é
● 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
http://thoughtworks.fileburst.com/assets/technology-radar-jan-2014-pt.pdf
Sub-Projetos
Hadoop
Map Reduce Google FileSystem
Google Map Reduce
Hadoop MapReduce
HDFS
Hadoop
Hadoop MapReduce
HDFS
Hadoop
Hadoop Commons
● HDFS - Sistema de Armazenamento de
Dados distribuidos (Hadoop
Distributed File System)
● Map Reduce - Processamento paralelo
● Hadoop Commons - abstração
Serviços Chave
Arquitetura Hadoop
Nó Master
Nó Slave
Nó Master
Nó Master
Nó Master
Nó Slave
Nó Master
Nó Slave
Nó Master
Nó Master
● NameNode
● SecondaryNameNode
● JobTracker
Nó Slave
Nó Slave
● DataNode
● TaskTracker
Nó Master
Nó Slave
● DataNode
● TaskTracker
● NameNode
● SecondaryNameNode
● JobTracker
Nó Master
● NameNode
● Nó master (apesar de master
não armazena nada)
● Só tem metadados
● Ele é o core, o daemon vital
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
Nó Master
● JobTracker
● Ligações entre as Aplicações e o
Hadoop
● Em caso de falha, ele quem sabe o que
fazer
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
Nó Slave
● TaskTracker
● responsável pela execução
designada pelo JobTracker
Nó Master
Nó Slave
● DataNode (armazena dados)
● TaskTracker (executa)
● NameNode (core)
● SecondaryNameNode (monitora)
● JobTracker (liga a aplicação/Hadoop)
● 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
● 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
Comunicação
ComunicaçãoSSH
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?)
Cases
Armazena log, como fontes de
estudos analíticos e machine
learning
Armazena log, como fontes de
estudos analíticos e machine
learning
Otimização de buscas e
pesquisas
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
Recomendações: Quem você
pode conhecer
Recomendações: Quem você
pode conhecer
Análise de logs e e
minerar dados para
sistema de recomendação
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
Armazenar e processar
tweets, arquivos de
logs, e outras coisas
mais
Armazenar e processar
tweets, arquivos de
logs, e outras coisas
mais
Armazenar e processar
tweets, arquivos de
logs, e outras coisas
mais
Um resumo, Big Data, Map Reduce, Hadoop
Alexandre Uehara
@AleUehara
linkedin.com/in/aleuehara
slideshare.net/aleuehara