Post on 25-Jan-2015
description
Big Data Open Source com Hadoop
Palestrante: Marcio Junior Vieiramarcio@ambientelivre.com.br
Realização:
Marcio Junior Vieira
● 14 anos de experiência em informática, vivência em desenvolvimento e análise de sistemas de Gestão empresarial.
● Trabalhando com Software Livre desde 2000 com serviços de consultoria e treinamento.
● Graduado em Tecnologia em Informática(2004) e pós-graduado em Software Livre(2005) ambos pela UFPR.
● Palestrante em diversos Congressos relacionados a Software Livre tais como: CONISLI, SOLISC, FISL, LATINOWARE, SFD, JDBR, Campus Party, Pentaho Day.
● Fundador da Ambiente Livre.
Ecosistema Ambiente Livre
Colaborações
Big Data - Muito se fala...
Big Data
● É um novo conceito se consolidando.● Grande armazenamento de dados e maior
velocidade
Os 4 V's
● Velocidade , Volume , Variedade e Valor
Volume
● Modelos de Persistência da ordem de Petabytes, zetabytes ou yottabyte(YB).
● Geralmente dados não estruturados.
● Um Zettabyte corresponde a 1.000.000.000.000.000.000.000 (10²¹) ou 1180591620717411303424 (2 elevado a 70) Bytes.
Velocidade
● Processamento de Dados● Armazenamento ● Analise de Dados
Variedade
● Dados semi-estruturados● Dados não estruturados● Diferentes fontes● Diferentes formatos
Valor
● Tomada de Decisão● Benefícios● Objetivo
do Negócio.
O momento é agora
Onde podemos utilizar Big Data ?
?
Sistema de Recomendação
● WWW em geral
Redes Sociais
Analise de Risco
● Crédito● Seguros● Mercado Financeiro
Dados Espaciais
● Clima● Imagens● Trafego● Monitoramento
Big Data X BI
● Big Data e uma evolução do BI, devem caminhar juntos
● Data Warehouses são necessários para armazenar dados estruturados
Previsão:● BI – Casos específicos● Big Data – Analise geral
Profissionais
Novo profissional: Cientista de Dados
Competências do Cientista de dados
● Fonte http://www.datascientist.com.br/Artigo.aspx?ID=Competencia_de_um_cientista_de_dados_um_breve_exemplo_de_uma_analise_de_redes
De onde ?
Ferramentas de Big Data
Hadoop
● O Apache Hadoop é um projeto de software open-source escrito em Java. Escalável, confiável e com processamento distribuído.
● Filesystem Distribuido.● Inspirado Originalmente pelo GFS e MapReduce da Google
( Modelo de programação MapReduce)● Utiliza-se de Hardware Comum ( Commodity cluster
computing )● Framework para computação distribuída● infraestrutura confiável capaz de lidar com falhas ( hardware,
software, rede )
Motivações Atuais
● Grande quantidade ( massiva ) de dados● Dados não cabem em uma máquina● Demoram muito para processar de forma serial● Máquinas individuais falham● Computação nas nuvens● Escalabilidade de aplicações● Computação sob demanda
A origem do Nome
● Segundo Doug Cutting, criador do Hadoop
“O nome que meu filho deu a um elefante amarelo de pelúcia. Curto, relativamente fácil de soletrar e pronunciar, sem sentido, e não usado em outro lugar: esses são os meus critérios de nomeação”
Ecosistema
O que é HDFS
● Hadoop Filesystem
● Um sistema de arquivos distribuído que funciona em grandes aglomerados de máquinas de commodities.
Características do HDFS
● Inspirado em GFS● Projetado para trabalhar com arquivos muito
grandes e grandes volumes● Executado em hardware comum● Streaming de acesso a dados● Replicação e localidade
HDFS
● Projetado para escalar a petabytes de armazenamento, e correr em cima dos sistemas de arquivos do sistema operacional subjacente.
Fonte: http://hadoop.apache.org/docs/r1.2.1/hdfs_design.html
HDFS - Replicação
● Dados de entrada é copiado para HDFS é dividido em blocos e cada blocos de dados é replicado para várias máquinas
MapReduce
● É um modelo de programação desenhado para processar grandes volumes de dados em paralelo, dividindo o trabalho em um conjunto de tarefas independentes
Programação Distribuída
MapReduce
Você especifica o map (...) e reduce (...)
funções● map = (lista (k, v) -> lista (k, v))● reduce = (k, lista (v) -> k, v)
O Framework faz o resto● Dividir os dados● Execute vários mappers sobre as divisões● Embaralhar os dados para os redutores● Execute vários redutores● Guarde os resultados finais
MapReduceMap Reduce
Modos de Operação
● Standalone ( Local )● Pseudo-distributed● Fully-distributed
Outros componentes
● PIG - linguagem de fluxo de dados e ambiente de execução para explorar grandes conjuntos de dados.Executado no HDFS e grupos MapReduce.
● Hive - Armazém de dados (datawarehouse) distribuídos. Gerencia os dados armazenados no HDFS e fornece uma linguagem de consultabaseada em SQL para consultar os dados.
● Hbase – Banco de dados orientada por colunas distribuída. HBase usa o HDFS por sua subjacente de armazenamento e suporta os cálculos de estilo lote usando MapReduce e ponto consultas (leituras aleatórias).
Outros componentes
● ZooKeeper – Serviço de coordenação altamente disponível e distribuído. Fornece funções de bloqueios distribuídos que podem ser usados para a construção de aplicações distribuídas.
● Sqoop – Ferramenta para a movimentação eficiente de dados entre bancos de dados relacionais e HDFS.
● Mahout - Aprendizagem de máquina escalável, de fácil uso comercial para a construção de aplicativos inteligentes
Distribuições Hadoop
● Open Source Apache
● Comercial Open Source- Cloudera- HortoWorks- MapR- AWS MapReduce- Microsoft HDInsight (beta)
Possibilidades de Uso
● DataWareHouse● Business Intelligence● Aplicações analíticas● Mídias Sociais● Sugestão de Compras● Analise preditiva● Compras Coletivas● Recomendações
Modelo tradicional de Uso
Empresa Usando Hadoop
● Amazon● Facebook● Google● IBM● Yahoo● Linkedin
● Joost● Last.fm● New York Times● PowerSet● Veoh● Twitter● Ebay
Hadoop no Brasil
Contatos
● e-mail: ● marcio @ ambientelivre.com.br ● http://twitter.com/ambientelivre● @ambientelivre● @marciojvieira● Blog
blogs.ambientelivre.com.br/marcio● Facebook/ambientelivre
Convite
● Pentaho Day 17 de Maio – SP
● FTSL - 18 e 19 de Setembro ● Software Freedom Day
20 de Setembro.