Apresentação dos autores



Documentos relacionados
Laboratório do Framework Hadoop em Plataformas de Cloud e. Cluster Computing

Framework Hadoop em Plataformas de Cloud e Cluster Computing

BIG DATA: UTILIZANDO A INTERNET PARA TOMADA DE DECISÕES

Uma Proposta de Framework de Comparação de Provedores de Computação em Nuvem

1

Hadoop - HDFS. Universidade Federal de Goiás Ciência da Computação

The Eucalyptus Open-source Cloud-computing System

Análise de Big Data Streams

Computação Intensiva em Dados

OpenStack. Cloud Software

Cloud Computing. Edy Hayashida

Cloud Computing. Andrêza Leite.

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

Sistemas Operacionais. Conceitos de um Sistema Operacional

Estratégia para dentificação dos fatores de maior impacto de aplicações Mapreduce

HadoopDB. Edson Ie Serviço Federal de Processamento de Dados - SERPRO

Classificação::Modelo de implantação

Nuvem UFRGS: IaaS como ferramenta de apoio à pesquisa

A.S.P. Servidores Windows

AN IN-DEPTH STUDY OF MAP REDUCE IN CLOUD ENVIRONMENT. Sistemas Distribuídos e Tolerância a Falhas Nuno Garcia m6284, Tiago Carvalho m6294

SISTEMAS DISTRIBUÍDOS

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Alex D. Camargo, Érico M. H. Amaral, Leonardo B. Pinho

João Víctor Rocon Maia Engenharia de Computação - UFES

Minicurso Computação em Nuvem Prática: Openstack

Tópicos Especiais em Redes de Telecomunicações

Quarta-feira, 09 de janeiro de 2008

EUCALYPTUS: UMA PLATAFORMA CLOUD COMPUTING PARA

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Sistemas Distribuídos

CLOUD COMPUTING. Andrêza Leite.

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Sistemas Operacionais

Impactos do Envelhecimento de Software no Desempenho dos Sistemas. Jean Carlos Teixeira de Araujo

COORDENAÇÃO DE TECNOLOGIA (COTEC) ABRIL/2011

SISTEMAS OPERACIONAIS

Avaliação de dependabilidade em infraestruturas Eucalyptus geograficamente distribuídas

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

FundamentosemInformática

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 1)

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

Virtualização de Sistemas Operacionais

OCEL001 Comércio Eletrônico Módulo 9_3: OpenShift

Patrício Domingues Dep. Eng. Informática ESTG Instituto Politécnico de Leiria Leiria, Maio

Treinamento em Apache Spark com Scala - Fundamental

1 Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Administração Central Unidade de Ensino Médio e Técnico - CETEC. Plano de Trabalho Docente Ensino Técnico

Fernando Seabra Chirigati. Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte

Introdução a Informática - 1º semestre AULA 02 Prof. André Moraes

Segurança da Informação

FTIN Formação Técnica em Informática Módulo Sistema Proprietário Windows AULA 01. Prof. André Lucio

Pré-Requisitos do Software Themis Pré-Requisitos do Software Themis

SISTEMAS DE ARQUIVOS Sistemas operacionais

UFG - Instituto de Informática

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

FTIN Formação Técnica em Informática. Sistema Operacional Proprietário Windows Prof. Walter Travassos

Agenda CLOUD COMPUTING I

Figura 01 Kernel de um Sistema Operacional

MBA Analytics em Big Data

Arquitetura e Sistema de Monitoramento para

Tipos de Sistemas Distribuídos (Cluster e Grid)

Introdução a Computação nas Nuvens

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

O que é Grid Computing

IW10. Rev.: 02. Especificações Técnicas

ESTUDO DE CASO WINDOWS VISTA

Soluções IBM SmartCloud IBM Corporation

SISTEMA DE ARMAZENAMENTO (STORAGE)

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Samuel Henrique Bucke Brito

Roteiro 2 Conceitos Gerais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais

Introdução ao Active Directory AD

AULA 5 Sistemas Operacionais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Windows 2008 Server. Windows 2008 Server IFSP Boituva Prof. Sérgio Augusto Godoy.

Roteiro 3: Sistemas Linux arquivos e diretórios

GERENCIAMENTO DE DISPOSITIVOS

Aranda INVENTORY. Benefícios Estratégicos para sua Organização. (Standard & Plus Edition) Beneficios. Características V

Planejamento Estratégico de TI. Felipe Pontes

Online Help StruxureWare Data Center Expert

Google App Engine. André Gustavo Duarte de Almeida. Computação Ubíqua e Nuvens. Natal, 24 de maio de 2012 andregustavoo@gmail.com

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.


Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Bases Tecnológicas. Habilidade. Cronograma / Dia e Mês. Procedimentos Didáticos. 24/01 a 11/06. Aulas teóricas e prática em laboratório.

Estudo Qualitativo e Quantitativo de Linguagens Paralelas para Arquiteturas Multicore

Ontologia Aplicada ao Desenvolvimento de Sistemas de Informação sob o Paradigma da Computação em Nuvem

PERFORMANCE EVALUATION OF A MONGODB AND HADOOP PLATFORM FOR SCIENTIFIC DATA ANALYSIS M.Govindaraju and L. Ramakrishnan

The Eucalyptus Open- source Cloud-computing System. Janaina Siqueira Lara Wilpert Marcelo Scheidt Renata Silva

Windows NT 4.0. Centro de Computação

Introdução à Linguagem Java

Senado Federal Questões 2012

O que é Cloud Computing?

Transcrição:

Laboratório do Framework Laboratório do Framework Hadoop Hadoop em Plataformas de em Plataformas de Cloud e Cluster Cloud e Cluster Computing Computing Eng. André Luiz Tibola. Eng. André Luís Tibola. Prof. Dr. Cláudio Fernando Resin Geyer. Prof. Dr. Cláudio Fernando Resin Geyer. Mst. Julio César Santos dos Anjos. Mst. Julio César Santos dos Anjos. Junior Figueiredo Barros. Junior Figueiredo Barros. Mst. Raffael Bottoli Schemmer. Mst. Raffael Bottoli Schemmer.

Apresentação dos autores GPPD Grupo de Processamento Paralelo e Distribuído. http://www.inf.ufrgs.br/gppd. Principais linhas de pesquisa do GPPD/SLD: BigData analytics. Computação pervasiva e distribuída (Ubicomp). 2

Apresentação dos autores Eng. André Luis Tibola Mestrando em Ciência da Computação PPGC/UFRGS. Prof. Dr. Cláudio Fernando Resin Geyer Professor Associado do Instituto de Informática UFRGS. Junior Figueiredo Barros Cursa engenharia da computação INF/UFRGS. Pesquisador IC do GPPD. 3

Apresentação dos autores Prof. Mst. Julio César Santos dos Anjos Doutorando em Ciência da Computação PPGC/UFRGS. Mst. Raffael Bottoli Schemmer Mestre em Ciência da Computação PUC/RS. Aluno especial PPGC/UFRGS. 4

Apresentação dos autores XII WSPPD 2014 (INF/UFRGS) Organizado pelo GPPD 5

Objetivo Apresentar o modelo de programação MapReduce e a utilização do framework Hadoop em ambientes de cluster e cloud computing. 6

Sumário Introdução ao BigData. Estudo dirigido com ênfase ao Hadoop. Introdução ao Hadoop. Modelo de programação MapReduce. Arquitetura do Hadoop. Contextualização da infraestrutura: O cluster GPPD GradeP. A cloud Microsoft Azure. Instalação e configuração do Hadoop. Laboratório prático de programação. 7

Introdução ao BigData Os 5Vs (Desafios) do BigData. Marr (2015). 8

Introdução ao BigData Desafios de uma aplicação real. Hp (2015). 9

Introdução ao BigData Visão do mercado sobre BigData na curva de hype. Gartner (2014) 10

Introdução ao BigData Soluções de BigData oferecidas pelo mercado. Cognos (2013). 11

Introdução ao BigData Mundo real (SQL) Vs. Mundo desejado (UQL). Imex (2014 12

Introdução ao BigData Alternativa para o BigData: Apache Hadoop Framework. Ênfase deste minicurso. Razões para uso do Hadoop: Uma das soluções mais aceitas/adotadas. Open Source (Não comercial). Suporte a inúmeras APIs (Integração). Multiplataforma (Java). Framework modular (Extensível). Suporte a várias linguagens de programação (Wrappers). Escalabilidade de recursos: Volume de dados Vs Adição de novos recursos. 13

Introdução ao Hadoop/MapReduce Criado no ano de 2005 (Nutch Project): Modelo MapReduce (2004). Sistema de arquivos HDFS (2007). Projeto Apache (2008) - http://hadoop.apache.org. Primeira release 1.0.0 (2011). Hadoop 2.0 (2013) - Última versão 2.7.0 (2015). Arquitetura inicial 1.X Vs. Arquitetura atual 2.X 14

Introdução ao Hadoop/MapReduce Versões de terceiros (MapReduce Comercial): HortonWorks. MapR. Cloudera. Microsoft HDInsight (HortonWorks). Empresas que utilizam (Hadoop Modificado): Facebook. Yahoo. Amazon Elastic MapReduce (AWS EMR). Pelo menos outras 50 empresas. 15

Introdução ao Hadoop Hadoop 1.2.1 (Hadoop 1.0) será trabalhado. HDFS e MapReduce serão estudados em detalhes. Demais componentes: Pig: Suporte a primitivas para dados não estruturados. Hive: Suporte a primitivas para dados estruturados (HiveQL). Others (Scoop): Conversor de bases SQL. Arquitetura do Hadoop utilizada Apache (2013c). 16

Sistema de arquivos distribuído (HDFS) Hadoop Distributed File System (HDFS): Armazenamento de dados de forma distribuída. Projetado para equipamentos de propósito geral. Executa sob sistema de arquivo local. Tolerante a falhas: Técnica implementada através da replicação de blocos. Arquivos são fragmentados em pedaços (chunks). Implementação dirigida a leitura e escrita de altos volumes de informação (Largura de banda): Write Once Read Many. HDFS é o padrão e o mais usado pela industria: Hadoop suporta outros sistemas de arquivos. 17

Sistema de arquivos distribuído (HDFS) O HDFS é implementado em uma arquitetura mestre/escravo: (1) Namenode: Administra os dados. (N) Datanode: Armazena os dados. Sistema de arquivos baseado em diretórios. Operações suportadas pelo HDFS: Open, close, read, write. Implementadas pelo Namenode. Namenode é responsável pela replicação dos dados: Utiliza Heartbeat para controle. Realiza balanceamento quando necessário. Datanode serve requisições. 18

Sistema de arquivos distribuído (HDFS) Arquitetura do sistema de arquivos distribuído (HDFS) White, T. (2012). 19

Modelo de programação (MR) Proposto em 2004 pela Google. Modelo de programação abstrato. Aplicado no processamento de dados distribuídos. Funcionamento do MapReduce: Map: Processa todos os dados da entrada. Reduce: Processa os resultados do Map. Dados são transmitidos em tuplas <chave, valor> Processos MapReduce operam de forma independente. O framework trata questões inerentes de sistemas distribuídos como escalonamento e falhas. 20

Modelo de programação (MR) Modelo de programação MapReduce (WordCount) Dean, J. and Ghemawat, S. (2004). 21

Modelo de programação (MR) O MR é implementado em uma arquitetura mestre/escravo: (1) JobTracker: Administra os processos MR. (N) TaskTracker: Executa as operações MR. MapReduce segue a abordagem de que: A computação deve ser dirigida aos dados. Na visão do programador (usuário): Aplicação deverá ser descrita como um código MapReduce. HDFS deverá armazenar os dados da aplicação. Componente coordenador do MR (JobTracker): Define o número de processos do tipo Map e Reduce: Conforme o número de recursos. Define o local onde os processos serão executados: Conforme a localidade dos dados. 22

Modelo de programação (MR) Arquitetura de componentes do Hadoop Apache (2013a). 23

Recursos Execução especulativa Reescalonamento em caso de falhas nos workers Map Reduce Explora localidade dos dados Local Rack-Local Remoto Pode evitar nós lentos 24

Resumo de conceitos Tecnologias como HDFS e MR são peças chave do Hadoop. Demais APIs são construídas sob estas fundações. Processos MR executam funções e rotinas destas APIs. HDFS framework responde pelas questões quanto: Ao particionamento dos dados. A saúde da informação (Replicação). MR framework responde pela questões quanto: Ao mapeamento dos processos. Ao escalonamento frente a mudança dos dados (Falhas). 25

Linhas de pesquisa em BigData do GPPD/SLD Aplicações de domínio específico. Capacity Planning. Garantia de nível de serviço. Green Computing. Infraestruturas heterogêneas. Infraestruturas híbridas. MR em ambientes voluntários. Simulação. Stream Processing. Tolerância a falhas. 26

Publicações Recentes MRA++: Scheduling and data placement on MapReduce for heterogeneous environments. ACM Future Generation Computer Systems. MRSG : A MapReduce simulator over SimGrid. Elsevier Parallel Computing. Genetic Mapping of Diseases through Big Data Techniques. ICEIS 2015 A Toolkit for Simulating MapReduce in Hybrid Infrastructures, WS Big Data SBAC-PAD - Oct 2014 27

MRSG : A MapReduce simulator over SimGrid. Motivações para utilização de simulação: Acesso escasso a plataformas de larga escala Execução global é muito difícil de ser controlada Facilidade para prototipar e avaliar alterações no modelo MapReduce MRSG: Desenvolvido pelo GPPD/SLD Contempla os aspectos gerais do MapReduce Capacidade de simulação de sistemas grandes 28

Dúvidas? 29

15:30 (Segunda parte) Laboratório prático e experimental do Hadoop 30

Ambientes distribuídos Revisão conceitual: Hadoop é projetado para em ambientes distribuídos. Resiliente a falhas (Replicação de componentes). Ambientes distribuídos e suas características (atualidade): Clouds: Máquinas compartilhadas. Virtualização de recursos. Clusters: Máquinas dedicadas. Uso agendado de recursos. 31

O cluster GPPD GradeP GradeP: gradep.inf.ufrgs.br. Cluster formado por computadores de propósito geral: Recursos heterogêneos (tecnologias). Rede ethernet de propósito geral. GradeP (201): Execução do Hadoop em modo agendado. 12 nós (computadores dedicados): 1x Vostro 270s Hadoop Master: I5 3470s 8GB RAM 1TB HDD 11x Optiplex GX270 Hadoop Slaves: P4 2.8GHz HT 2.5GB RAM 1TB HDD Rede ethernet gigabit dedicada. GPPD GradeP (2015). 32

Instalação do Hadoop (GPPD GradeP) Conjunto de etapas necessárias (9): [1] Acessar nó principal (gradep.inf.ufrgs.br). Linux e Java já instalados. Acesso SSH garantido entre todas as máquinas. [2] Acessar nó Hadoop mestre (compute-0-0). Download e extração Apache Hadoop 1.2.1. [3] Configuração de arquivos (hadoop/conf). [3.1] core-site.xml Configurações do namenode. [3.2] hadoop-env.sh Java path. [3.3] hdfs-site.xml Número de réplicas do HDFS. [3.4] mapred-site.xml - Configurações do jobtracker. [3.5] Arquivos master e slaves. 33

Instalação do Hadoop (GPPD GradeP) [4] Diretório HDFS e permissões. [5] Configuração bashrc (.bashrc). [6] Permissões de diretório do Hadoop. [7] Cópia do Hadoop. [8] Formatação inicial do HDFS. [9] Inicialização do Hadoop. 34

Laboratório Experimental (DFSAdmin) Dados deverão ser transferidos para o computador mestre (compute-0-0). Este trabalho irá criar volumes de dados no mestre. Os arquivos deverão ser escritos no HDFS. O HDFS é acessível através do DFSAdmin. API de acesso do usuário administrador do Hadoop. Principais comandos de manipulação do HDFS (DFSAdmin): hadoop hadoop hadoop hadoop hadoop dfs dfs dfs dfs dfs ls: Lista um diretório mkdir: Cria um diretório copyfromlocal: Escreve em um HDFS. copytolocal: Lê de um diretório no HDFS. cat: Lê de um arquivo no HDFS. 35

Contador de palavras (WordCount) Funcionamento da aplicação de contagem de palavras em etapas (WordCount). 36

Objetivo do contador de palavras Geração de Trending Topics sob volumes de palavras. Timoe (2014) 37

Laboratório Experimental (Word Count) Procedimentos a serem executados na GradeP: [1] Estudo do código Java (WordCount) [2] Escrita dos dados da aplicação no HDFS. [3] Compilação e execução do código para 5 computadores. [4] Análise dos resultados da execução. [5] Demonstração da escalabilidade do Hadoop. [6] Demonstração da resiliência (Tolerância a Falhas). 38

A cloud Microsoft Azure Microsoft Azure: azure.com Conjunto (finito) de recursos virtualizados: Hyper-V (VMM): Gerencia a alocação dos recursos. Cada VM possui uma quantidade de recursos quanto: Cores (1core a 32 cores). RAM (1.75Gbytes a 448Gbytes) Disco (10Gbytes a 6144Gbytes de SSD). Rede (1Gbps Ethernet ou 10Gbps Infiniband). Azure trabalha com 3 níveis de recursos (serviços): IaaS: Infraestrutura como um serviço (VM). PaaS: Plataforma como um serviço (VM + SDK). SaaS: Software como um serviço (VM + SDK + App). 39

A cloud Microsoft Azure 3 tipos de VMs (Máquinas/HW): A (1-10): Propósito geral. D (1-14): Alto desempenho. G (1-5): Computação em dados. Este trabalho irá utilizar a Azure no nível de IaaS. Com máquinas do tipo D1. HDDs devem ser definidos separadamente: VMs podem suportar N instancias de discos. Cada disco poderá ter até 1TByte de tamanho. Discos são conectados diretamente as VMs (SANs). 40

Instalação do Hadoop (Microsoft Azure) Conjunto de etapas necessárias (10): [1] Criação da cloud e das VMs + discos. [2] Acessar nó principal (erad2015hadoop.cloudapp.net). Instalação do Java nas VMs. Instalação e acesso SSH entre as máquinas. [3] Acessar nó Hadoop mestre (compute-0-0). Download e extração Apache Hadoop 1.2.1. [4] Configuração de arquivos (hadoop/conf). [4.1] core-site.xml Configurações do namenode. [4.2] hadoop-env.sh Java path. [4.3] hdfs-site.xml Número de réplicas do HDFS. 41

Instalação do Hadoop (Microsoft Azure) [5] Diretório HDFS e permissões. [6] Configuração bashrc (.bashrc). [7] Permissões de diretório do Hadoop. [8] Cópia do Hadoop configurado para os slaves. [9] Formatação inicial do HDFS. [10] Inicialização do Hadoop. 42

Laboratório Experimental (Word Count) Procedimentos a serem executados na Azure: [1] Escrita dos dados da aplicação no HDFS. [2] Execução do código para 5 computadores. [3] Análise dos resultados da execução. [4] Demonstração da escalabilidade do Hadoop. [5] Demonstração da resiliência (Tolerância a Falhas). [6] Comparação dos resultados GradeP Vs. Azure. 43

Fechamento do minicurso Vimos nesta aula que: BigData: Conjunto de desafios da atualidade. Mercado apresenta inúmeras soluções. Hadoop é considerado como uma das soluções. Estudamos o Hadoop em nível conceitual (fundações): HDFS e suas arquitetura de serviços. O modelo de programação MapReduce. Funcionamento do HDFS e do MapReduce. 44

Fechamento do minicurso Foi demonstrado na prática: [1] Mecanismos básicos de operação do cluster e da cloud. [2] Instalação e configuração do Hadoop. [3] API DFSAdmin para administração do HDFS. [4] Um código Java do tipo MapReduce (WordCount). [5] Execução e visualização de resultados (WordCount). [6] Escalabilidade do Hadoop. 45

Agradecimentos INF/UFRGS GPPD: Disponibilização do cluster GPPD GradeP. Possibilitar a escrita e preparação do minicurso. XV ERAD 2015: Viabilizar e fomentar o minicurso. Microsoft Research for Azure: Disponibilização de acesso a Azure (IaaS). Público presente pela participação no minicurso. 46

Referências Bernard Mar. Big Data: Using Smart Big Data, Analytics and Metrics to Make Better Decisions and Improve Performance. Hp (2015) A BIG brother for your BIG data environment. Acessado em Abril de 2015. Disponível em: http://h30499.www3.hp.com/t5/business-service-managemen t-bac/a-big-brother-for-your-big-data-environment/ba-p/ 6284087. Gartner (2014). Gartner Hyper Cycle. Disponível em : http://www.gartner.com/technology/research/hype-cycles/ Cognos (2013). Big Data: Revolution or Hype?. Disponível em: http://www.cognossource.com/big-data-revolution-or-hype/ Imex (2014). Big Data Industry Report 2014. Disponível em: http://www.imexresearch.com/newsletters/bigdataecosyste m.html 47

Referências Apache (2013b). MapReduce (WordCount v1.0). Apache. Tutorial - Apache (2013c). Overview of Apache Hadoop. Apache. Dean, J. and Ghemawat, S. (2004). MapReduce: Simplified Data Processing on Large Clusters. Commun. ACM, 51(1):107 113. Filho, B. (2013). Aplicação do MapReduce na Análise de Mutações Genéticas de Pacientes. 48

Referências GPPD (2015). Especificação e Documentação da GradeP. Grupo de Processamento Paralelo e Distribuído - GPPD/UFRGS. Ion-Life (2015). Ion Personal Genome Machine (PGM) System. Life Technologies. White, T. (2012). Hadoop - The Definitive Guide, volume 1. OReilly Media, Inc., 3rd edition. Timoe (2014). Word Cloud of Big Data. Disponível em: http://timoelliott.com/blog/wp-content/uploads/20 14/01/ big-data-speech-bubble.jpg. 49

Laboratório do Framework Hadoop em Plataformas de Cloud e Cluster Computing Perguntas? Eng. André Luiz Tibola. Prof. Dr. Cláudio Fernando Resin Geyer. Mst. Julio César Santos dos Anjos. Junior Figueiredo Barros. raffael.schemmer@inf.ufrgs.br Mst. Raffael Bottoli Schemmer. INF/GPPD UFRGS