Introdução
Apache Hadoop
Anne Kelly
Diógenes Peçanha
Glauco Vinicius
16 de Novembro de 2010
Tópicos
Modos de representar dados
O que é NoSQL?
O que é Hadoop?
O modelo de Map/Reduce
Hive
Dúvidas
Modos de representar dados
Hierárquico: 60's ~ 70's
Grafo Orientado: 70's
Relacional: 70's ~ começo 80's
Entidade-Relacionamento: 70's
Relacional Extendido: 80's
Semântico: final de 70's ~ 80's
Orientado a Objetos: final 80's ~ começo
90's
Objeto-Relacional: final 80's ~ começo 90's
Semi-estruturado (XML): final 90's ~ final
00's
???
O que é NoSQL?
Not Only SQL
Bancos de dados não-relacionais
Pressão rumo a escalabilidade horizontal
O que é Hadoop?
Apache Hadoop é uma plataforma de
computação distribuída de código aberto,
voltado para clusters e grandes massas de
dados através de computadores 'commodity'.
Dois principais componentes
HDFS Map/Reduce
Tolerância a falhas
Processamento distribuído
Auto-recuperação
Alto consumo de banda
Armazenamento em cluster
O que torna o Hadoop especial?
Máquinas são confiáveis
Máquinas possuem identidades
Sua análise permanece em
apenas uma máquina
Como isso é possível?
Componentes
NameNode (Servidor de metadados e banco
de dados)
SecondaryNameNode (Assistente do
NameNode)
JobTracker (Agendador)
DataNodes (Blocos de armazenamento)
TaskTrackers (Executores de tarefas)
HDFS
O Modelo de Map/Reduce
Você especifica sua função de map()
Você especifica sua função de reduce()
O framework cuida do restante
Hands on
O que é Hive?
Infraestrutura para data warehouse
Permite consultas adhoc utilizando Hive QL
Permite a criação de maps e reduces
próprios
Ótimo para processamento em lote de
dados imutáveis
O que Hive não é?
Não é um sistema de baixa latência
Não pode ser comparado ao Oracle ou SQL
Server pelo tempo de resposta de datasets
pequenos
Não foi desenhado para OLTP ou real-time
Hive
Tipos de dados suportados: Inteiros,
Booleanos, Ponto Flutuante, Strings, Structs.
Suporte a DDL
Criação de 'Index' (Partitions)
Joins
Agregação
Union
Operações em Arrays
Map/Reduce Scripts Customizados
Hands on
Dúvidas?
Referências
Apache Hadoop: http://hadoop.apache.org/
Cloudera: http://www.cloudera.com/
Obrigado!

Apache Hadoop - Introdução

  • 1.
    Introdução Apache Hadoop Anne Kelly DiógenesPeçanha Glauco Vinicius 16 de Novembro de 2010
  • 2.
    Tópicos Modos de representardados O que é NoSQL? O que é Hadoop? O modelo de Map/Reduce Hive Dúvidas
  • 3.
    Modos de representardados Hierárquico: 60's ~ 70's Grafo Orientado: 70's Relacional: 70's ~ começo 80's Entidade-Relacionamento: 70's Relacional Extendido: 80's Semântico: final de 70's ~ 80's Orientado a Objetos: final 80's ~ começo 90's Objeto-Relacional: final 80's ~ começo 90's Semi-estruturado (XML): final 90's ~ final 00's ???
  • 4.
    O que éNoSQL? Not Only SQL Bancos de dados não-relacionais Pressão rumo a escalabilidade horizontal
  • 5.
    O que éHadoop? Apache Hadoop é uma plataforma de computação distribuída de código aberto, voltado para clusters e grandes massas de dados através de computadores 'commodity'.
  • 6.
    Dois principais componentes HDFSMap/Reduce Tolerância a falhas Processamento distribuído Auto-recuperação Alto consumo de banda Armazenamento em cluster
  • 7.
    O que tornao Hadoop especial?
  • 8.
  • 9.
  • 10.
    Sua análise permaneceem apenas uma máquina
  • 11.
    Como isso épossível?
  • 12.
    Componentes NameNode (Servidor demetadados e banco de dados) SecondaryNameNode (Assistente do NameNode) JobTracker (Agendador) DataNodes (Blocos de armazenamento) TaskTrackers (Executores de tarefas)
  • 13.
  • 14.
    O Modelo deMap/Reduce Você especifica sua função de map() Você especifica sua função de reduce() O framework cuida do restante
  • 15.
  • 16.
    O que éHive? Infraestrutura para data warehouse Permite consultas adhoc utilizando Hive QL Permite a criação de maps e reduces próprios Ótimo para processamento em lote de dados imutáveis
  • 17.
    O que Hivenão é? Não é um sistema de baixa latência Não pode ser comparado ao Oracle ou SQL Server pelo tempo de resposta de datasets pequenos Não foi desenhado para OLTP ou real-time
  • 18.
    Hive Tipos de dadossuportados: Inteiros, Booleanos, Ponto Flutuante, Strings, Structs. Suporte a DDL Criação de 'Index' (Partitions) Joins Agregação Union Operações em Arrays Map/Reduce Scripts Customizados
  • 19.
  • 20.
  • 21.
  • 22.