Processando dados com
|
|
- Thomaz Franca Araújo
- 5 Há anos
- Visualizações:
Transcrição
1 hadoop_ Processando dados com Hadoop é um sistema de persistência e proces- distribuído, escrito em Java e desenvol- samento É, portanto, um projeto de código aberto e de livre distribuição. Seu desenvolvimento foi idealizado e liderado por Doug Cutting, inspirado em um modelo - em uma abordagem de processamento distribuído genheiros do Google e publicado em um paper de - Twitter, que têm o Hadoop como peça crítica de sua - mais algumas ferramentas adicionais que facilitam - ção de clusters a componentes para integração com NoSQL sobre o Hadoop e até mesmo ferramentas de - Linux funcione com a sua plataforma de computação em Projetado para ser instalado em servidores cor- HDFS e o MapReduce de arquivos similar ao de um sistema operacional - tail, cat, rm, grep), onde os dados são armazenados ção entre eles. Detalhes relacionados ao gerenciamento de replicação de arquivos, divisão em blocos, / 38
2 André Luiz Forchesatto - Wellington Ramos Chevreuil Engenheiro de Computação, SCJP, SCJD, SCMAD, SCWCD, SCBCD, SCEA. Atualmente utilizando hadoop e mapreduce em projetos A popularização do uso de serviços de internet ocorrida ao longo da última década, alinhada com a evolução da capacidade de armazenamento de dados no mundo corporativo, propiciou a ascensão de empresas que enfatizaram a importância da análise de dados - - ter a qualidade da análise dos dados de uma carga crescente de - - apresentaremos neste artigo os conceitos básicos por trás de sua simulação de um cluster Hadoop em um ambiente de desenvolvi- Hadoop. toda a cargo do Hadoop, aliviando o desenvolvedor processamento distribuído dos algoritmos desenvolvidos. Para tanto, esses algoritmos devem seguir a abordagem MapReduce apresentada pelo Google, e op, o mesmo tem que implementar ou estender algu- doop, provendo uma espécie de framework java para de ser escrito em Java, o Hadoop também permite dos. Essa alternativa é chamada streamjob). - uma versão do Hadoop em modo pseudodistribuído 39 \
3 - Conceitos básicos - - essas características através de redundância e otimização do uso de recursos, e o gerenciamento dos diversos nós do cluster é feito de forma a tornar os mesmos o menos dependente possível uns dos outros. Em - rodando no nó falho), e clientes que estejam usan- do Hadoop é a capacidade de redimensionamento do cluster sem necessidade de reinicialização de sistema, ou seja, nós podem ser adicionados/removidos do cluster sem nenhuma parada de sistema. Um cluster Hadoop em funcionamento consiste cutando como Daemons, cada qual com uma respon- - - vidades). No caso da persistência, o sistema composto pelo nado namenode, e mantém um registro de onde os arquivos estão armazenados nos nós escravos. Um serão replicados nos diferentes nós do cluster. Essa escravos do HDFS são chamados de datanode, e sem- - HDFS é estratégica para o processamento paralelo. Logo, para que haja realmente ganho no paralelismo, os arquivos a serem salvos no HDFS devem ser gran- blocos, os quais, então, poderão ser consumidos ao mesmo tempo. também segue a abordagem de mestre e escravos. No caso do mestre, o daemon é chamado de jobtracker, processamento, escalonando as tarefas entre os nós tasktrackers Cliente Cluster Hadoop Namemode JobTracker DataNode DataNode DataNode TaskTracker TaskTracker TaskTracker Figura 1. Componentes de um Cluster Hadoop. / 40
4 mesmo nó do cluster), porém eles rodam em uma tasktracker estão juntos, nem dois datanodes estão juntos também). Distribuídos dessa maneira, uma subtarefa de um programa mapreduce processando dados do HDFS - -blocos de dados sendo analisados por essa tarefa es- quina do tasktracker, evitando o consumo de rede. Na e seus relacionamentos. Hadoop na prática - contendo apenas artefatos do próprio Hadoop. No poníveis para download podem ser encontradas no seguinte link: releases.html#download Instalação e funcionamento possam rodar o Hadoop. che, descompacte o mesmo para uma pasta qualquer vel JAVA_HOME no arquivo hadoop-env.sh, disponível no diretório conf HADO- OP_HOME). - - Listagem 1. <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> gurar o nível de replicação dos arquivos para apenas - hdfs-site. xml Listagem 2. bloco de arquivo inserido no cluster. <property> <name>dfs.replication</name> <value>1</value> </property> - -Reduce, conhecido como JobTracker. Essa proprie- dades, nesse caso, o mapred-site.xml Listagem 3. duce (JobTracker). <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> teja devidamente instalado. É importante ressaltar que o Hadoop não usa SSH para a comunicação interna dos seus componentes. feita via RPC SSH apenas padrão do cluster em modo pseudodistribuído, conectando os respectivos daemons. Como trabalhamos em uma 41 \
5 Listagem 4. $ sudo su - # ssh-keygen -t dsa -P -f ~/.ssh/id_dsa # cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys minal como root, deve-se formatar o sistema de ar- rio Hadoop administrativos. Um desses comandos é o format do sistema de arquivos limpo e pronto para usar. Figura 2. Interface Web do NameNode. Listagem 5. Formatando HDFS. <value>hdfs://localhost:9000</value> # HADOOP_HOME/bin/hadoop namenode -format instalação em modo pseudodistribuído, a inicializa- - do Hadoop. Figura 3. Listagem 6. Comando para iniciar o Hadoop. # HADOOP_HOME/bin/start-all.sh lizados corretamente, pode-se usar o comando jps, daemons namenode, secondarynamenode, datanode, jobtracker, tasktracker. para monitoramento do cluster, e uma vez inicializa- navegador de internet, através das seguintes URLs, JobTracker e do HDFS, respectivamente: faces web. cipal atribuição do Hadoop é o processamento de a partir de dezenas ou centenas de Gigabyets, Petabytes ou mesmo Terabytes de dados) disponível no - - veis entrevistados em diferentes pesquisas, gerando como resultado a média salarial por região, em cada da suposta entrevista, dados de idade, a residência e - - / 42
6 Listagem 7. Formato da base de dados-exemplo, usando # como separador de colunas. 1980#31#Sul#Santa Catarina#Xanxerê# #33#Sul#Santa Catarina#Xanxerê# #28#Sul#Santa Catarina#Xanxerê# #19#Sul#Santa Catarina#Xanxerê# #19#Sul#Santa Catarina#Xanxerê# #19#Sul#Santa Catarina#Xanxerê# #39#Suldeste#São Paulo#Campinas# Para visualizar o conteúdo do arquivo direto no de comando usando o comando cat, conforme Lis- Listagem 11. Comando de visualização de arquivo no HDFS. #HADOOP_HOME/bin/./hadoop dfs cat /mundoj/ censo/censo.data Uma vez que o arquivo de entrada foi criado, o mesmo deve ser enviado para o HDFS. Conforme feito para formatar o HDFS, qualquer interação via conso- Hadoop mato do comando sempre segue o seguinte padrão: Hadoop [tipo do comando] [comando] [possíveis parâmetros]. Para prepararmos a entrada dos dados dados do censo, bem como enviar o arquivo para o HDFS. Primeiramente, criaremos a estrutura de dire- dfs, que indica que iremos interagir com o HDFS, o mkdir / mundoj/censo, para criarmos essa estrutura de pas- Listagem 8. Comando de criação de diretórios no HDFS. #HADOOP_HOME/bin/./hadoop dfs mkdir /mundoj/ censo HDFS mostrada anteriormente, ou diretamente pela linha de comando usando o comando ls, conforme Listagem 9. Comando de listagem de arquivos e diretórios no HDFS. #HADOOP_HOME/bin/./hadoop dfs ls / Com a estrutura de diretórios criada, agora basta enviar o arquivo com os dados do censo, conforme put Listagem 10. Comando para envio de arquivos ao HDFS. #HADOOP_HOME/bin/./hadoop dfs put /home/user/ Documents/censo.data /mundoj/censo Figura 4. Terminal bash com exemplo de comando do Hadoop. Implementando um MapReduce classes que facilitam a implementação de processos que consumam dados do HDFS. Para a implementa- ponibiliza a classe Mapper níveis no HDFS) em linhas no formato de chave/valor. Cada linha de um arquivo de entrada representa um registro para o Map. Na versão atual, chaves são geradas automaticamente pelo hadoop como objetos quivo. É possível mudar esse formato usando a classe gistro seja formada por elementos da própria linha do arquivo, onde todos os caracteres que estiverem parâmetros do método map da classe Mapper, onde deve ser implementada a lógica de processamento Hadoop permite que esse comportamento seja con- provê a classe Reducer, cujo método reduce deve ser usado para se implementar a lógica de combinar os resultados dos processamentos gerados pelos dife- sultado do processo em si, e é gerado um arquivo de saída no HDFS contendo esses dados processados. CensoMapper 43 \
7 - - representam os tipos dos dados de entrada e os dois método map(text key, Text value, Context con- text) - map possui três parâmetros: key, va- resultado do processamento de cada linha. como uma interação de um loop de leitura dos arquivos de entrada. Dessa forma, cada linha lida de arquivo de entrada é processada em uma chamada do map. da do método map o algoritmo interpreta uma linha - recebido como parâmetro value. Como o objetivo do MapReduce é calcular a média salarial de cada região mesmo ano e região devem ser agrupados em uma mesma estrutura para se obter a média posterior- - - lue é então convertida em String e associada à vari- junto de elementos String armazenados em um array nomeando valores, usando o método split da própria gião e concatena-se a mesma com o ano para formar a chave de saída do mapper, e salvamos essa chave Listagem 12. Classe CensoMapper para dados censo. public class CensoMapper extends Mapper <Text, Text, Text, public void map(text key, Text value, Context context) throws IOException, InterruptedException { // a linha é formada por todos os caracters apos o // separador da chave, // neste exemplo: chave=>1980, valor=> // 31#Sul#Santa Catarina#Xanxere# String linha = value.tostring(); String[] valores = linha.split( # ); Text chavesaidamapper = new Text(); // monta a chave resultante como [ano]-[região] ex: // 1980-Sul chavesaidamapper.set(key.tostring() valores[1]); //grava um valor de salário para essa chave context.write(new Text(chaveSaidaMapper), new DoubleWritable(new Double(valores[4]))); CensoReducer recebe o resultado do mapper - dia é implementado de forma simples no método reduce(text key, Iterable<DoubleWritable> values, Context context), onde a chave de saída do mapper estão disponíveis no parâmetro values. Com esses da- values - presente na coleção values. Listagem 13. Classe CensoReducer para dados censo. public class CensoReducer extends Reducer <Text, Text, Text, Text> { public void reduce(text key, Iterable<Text> values, Context context) throws IOException, InterruptedException{ double soma = 0, total=0; for(text salario: values){ soma+=salario.get(); total++; if(soma > 0 && total>0){ double media = soma/total; context.write(key, new DoubleWritable(media)); do pelo Hadoop. Essa classe é comumente denominada Driver, e é ela que deve ser informada no coman- o framework do Hadoop, um Driver deve estender a / 44
8 classe e implementar a interface Tool, - início do programa. CensoDriver main cução, o qual delega o processamento para o método run- Tool. Esse método mação dos caminhos de entrada e saída dos arquivos no HDFS. Listagem 14. Driver de execução do MapReduce. public class CensoDriver extends implements Tool public int run(string[] args) throws Exception { if (args == null args.length < 2) { System.err.println( Modo de uso: CensoDriver <input-path> + <output-path> ); return -1; getconf(); conf.set( key.value.separator.in.input.line, # );
9 Job job = new Job(conf); job. (CensoDriver.class); job.setjobname( Censo ); job.setmapperclass(censomapper.class); job.setreducerclass(censoreducer.class); job. (Text.class); job. (DoubleWritable.class); job.setinputformatclass( KeyValueTextInputFormat.class); job. (TextOutputFormat.class); FileInputFormat.setInputPaths(job, new Path(args[0])); FileOutputFormat. (job, new Path(args[1])); boolean success = job.waitforcompletion(true); sendo passado como primeiro parâmetro o jar con- anteriormente). Como último parâmetro, o caminho do arquivo de saída contendo os resultados do Map- o arquivo de saída como parâmetro, ou navegar pela alth.jsp, mostrado anteriormente. return (success? 0 : 1); public static void main(string[] args){ { int ret = ToolRunner.run(new CensoDriver(), args); System.exit(ret); catch (Exception ex) { ex.printstacktrace(); criar um arquivo jar contendo a classe Mapper, a clas- anteriormente para interação com o HDFS), mostra- Listagem 15. Executando o primeiro programa. #HADOOP_HOME/bin/./hadoop jar /home/user/ mundoj-censo-mr.jar mundoj.censo.mr.censodriver / mundoj/censo/censo.data /mundoj/output/output-01 Figura 5. / 46
10 cientes para que o leitor possa instalar um cluster Hadoop em modo pseudodistribuído, interagir com o Java do Hadoop para escrever seus primeiros programas MapReduce. Porém, muitos detalhes arquiteturais do Hadoop importantes para o planejamento e instalação de um cluster realmente distribuído não abordagem pode ser aplicada como solução, e mos- deste artigo introdutório, ferramentas úteis para integração do Hadoop com outros sistemas, bem como toramento de clusters Hadoop foram apenas citados na introdução deste artigo. É evidente, portanto, que rem cobertos por artigos futuros. /referências > > com/ > > > > > >
MapReduce. Capítulo 2. Renato Gomes Borges Júnior
MapReduce Capítulo 2 Renato Gomes Borges Júnior Sumário Introdução Exemplo: um conjunto de dados climáticos Analisando os dados Map and Reduce Java MapReduce Fluxo de dados Executando MapReduce distribuído
Leia maisApache Hadoop É hoje que vai instalar o seu primeiro cluster?
Apache Hadoop É hoje que vai instalar o seu primeiro cluster? Date : 16 de Março de 2016 Como processar grandes quantidades de dados de forma rápida e a baixo custo? A resposta é Hadoop! Esta framework
Leia maisFuncionamento e Recursos
hadoop_ MapReduce Detalhado MapReduce Detalhado Funcionamento e Recursos Na edição anterior da MundoJ, foi apresentado um artigo introdutório sobre o Hadoop, explicando de forma básica os seus principais
Leia maisPrIntCloud. Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13
PrIntCloud Disciplina: Procedência de Dados e Data Warehousing. Aluna: Shermila Guerra Santa Cruz. 16/04/13 Roteiro 1. Fundamentação Teórica A.- Cloud Computing B.- Hadoop C.- MapReduce D.- NoSql 2. Proposta
Leia maisProgramação em Sistemas Distribuídos MEI-MI-MSI 2015/16. MapReduce: Hadoop. Prof. António Casimiro. MapReduce
Programação em Sistemas Distribuídos MEI-MI-MSI 2015/16 MapReduce: Hadoop Prof. António Casimiro MapReduce MapReduce.2 Tópicos Analise e Armazenamento de Grandes Quantidades de Dados Google pioneira Processamento:
Leia maisQUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ;
QUESTIONÁRIO SOBRE HADOOP LEITURA DO MATERIAL FORNECIDO ALUNO/GRUPO ; LEIA O MATERIAL ANTES DE FAZER O EXEMPLO DIDÁTICO. AS QUESTÕES ABAIXO PODEM SER RESPONDIDAS, USANDO, PREFERENCIALMENTE, SUA PRÓPRIAS
Leia maisBruno Antunes da Silva UFSCar - Sorocaba
Bruno Antunes da Silva UFSCar - Sorocaba Introdução HDFS Arquitetura Leitura e escrita Distribuição de nós Controle de réplicas Balancer MapReduce Conclusão Aplicações web com grandes quantidades de dados
Leia maisTutorial Hadoop - HBase
Tutorial Hadoop - HBase O que é o Hadoop? O Hadoop é uma plataforma utilizada para realização de projetos distribuídos, que tratam de grandes quantidades de dados. É uma plataforma voltada para cluster
Leia maisAprenda a criar um "supercomputador" com vários Raspberry PI
Aprenda a criar um "supercomputador" com vários Raspberry PI Date : 6 de Abril de 2016 O Apache Hadoop é uma Framework/Plataforma desenvolvida em Java, para computação distribuída, usada para processamento
Leia maisPLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE
PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO Nº 006/2016 CONTRATO DE GESTÃO IGAM Nº 002/IGAM/2012 09/2017 1 PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO
Leia maisEstes passos foram testados no Linux Ubuntu (parece que a versão não importa)
Instalando o Hadoop Estes passos foram testados no Linux Ubuntu (parece que a versão não importa) Instalação da rede Todas as máquinas do cluster devem estar na mesma rede e serem mutuamente acessíveis.
Leia maisHaddop, MapReduce e Spark
Haddop, MapReduce e Spark Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Conceitos Básicos 2. MapReduce 3. Spark 4. Transformações Básicas 5. Ações Básicas 1 Conceitos Básicos Hadoop
Leia maisRESPOSTA: import java.util.arraylist; import java.util.list; class CarrinhoDeCompras2 { List<Produto> produtos;
Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP2 2 semestre de 2016. Nome Assinatura Observações:
Leia mais5 Modelo de Programação
38 5 Modelo de Programação 5.1 Visão Geral O modelo de programação do McCloud foi inspirado no Map/Reduce, originalmente proposto em 2004 por Jeff Dean e Sanjay Ghemawat [16], para suportar o processamento
Leia maisAgilizando o processo de redeploy de aplicações Java
classghost_ ClassGhost Agilizando o processo de redeploy de aplicações Java Conheça a funcionalidade deste framework que contribui para a agilidade e produtividade no processo processo de redeploy de aplicações
Leia maisThreads. O que é uma Thread? Paralelismo
Threads em Java 1 O que é uma Thread? Paralelismo Threads Multi- threading é o mecanismo de concorrência suportado explicitamente pela linguagem Java. Os mecanismos de gerenciamento e sincronização de
Leia maisInformática Parte 10 Prof. Márcio Hunecke
Escriturário Informática Parte 10 Prof. Márcio Hunecke Informática CONCEITOS DE MAPREDUCE E HDFS/HADOOP/YARN 2.7.4 Big Data O termo Big Data refere-se a um grande conjunto de dados armazenados e baseia-se
Leia maisAlgoritmos de Junção Estrela em MapReduce
Algoritmos de Junção Estrela em MapReduce Jaqueline Joice Brito 09 de junho de 2015 1 Modelo Relacional Dados armazenados em um conjunto de tabelas Amplamente utilizado Junção Recuperação de dados de duas
Leia maisPasso-a-passo para desenvolver um Programa usando a Linguagem Python
Cursos: Engenharia de Produção / Tecnólogo em Gestão da Qualidade Disciplina: Informática Professora: Flávia Pereira de Carvalho Passo-a-passo para desenvolver um Programa usando a Linguagem Python 1)
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Aula 1 REST em Java JAX-RS (Jersey) Material de suporte às aulas de Sistemas Distribuídos Copyright DI FCT/ UNL / 1 REST : REPRESENTATIONAL STATE TRANSFER Padrão arquitetural para
Leia maisVamos transformar os seus Raspberry PI num cluster (Parte 2)
Vamos transformar os seus Raspberry PI num cluster (Parte 2) Date : 31 de Março de 2016 O Apache Hadoop é uma Framework/Plataforma desenvolvida em Java, para computação distribuída, usada para processamento
Leia maisObjetivos. Responder o que é Java; Mostrar as vantagens e desvantagens do Java; Compilar e executar um programa simples.
O que é Java Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/ 1 Objetivos Responder o
Leia maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa
Leia maisSistemas Distribuídos
Sistemas Distribuídos RPC Remote Procedure Call 1 Fonte: Alcides Calsavara e Thais V. Batista Chamada de Procedimentos Remotos (RPC) Motivação: comunicação baseada em operações de entrada/saída Ideal:
Leia maisSistemas Operacionais
Sistemas Operacionais Threads em Java Paulo Ricardo Lisboa de Almeida 1 Temos várias interfaces e classes que podem facilitar nossa vida Runnable Callable Thread... 2 Para a aula de sistemas operacionais,
Leia maisInformática Parte 11 Prof. Márcio Hunecke
Escriturário Informática Parte 11 Prof. Márcio Hunecke Informática FERRAMENTAS DE INGESTÃO DE DADOS (SQOOP 1.4.6, FLUME 1.7.0, NIFI 1.3.0 E KAFKA 0.11.0) Visão geral sobre os quatro componentes Fazem
Leia maisPontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação
Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 14 Prof. ISVega Maio de 2004 Mecanismo de Exceções em Java CONTEÚDO 14.1Erros,
Leia maisApache. Conceitos teóricos e práticos, evolução e novas possibilidades
Apache Conceitos teóricos e práticos, Prof. Dr. Alfredo Goldman Prof. MS. Ivanilton Polato By Alfredo Goldman, Fabio Kon, Francisco Pereira Junior, Ivanilton Polato e Rosângela de Fátima Pereira. These
Leia maisCETEC Centro Paula Souza
Atualização da Competição Maratona de Programação 2018 2º Semestre Finalidade Este documento tem por finalidade informar aos professores responsáveis pelos times das unidades participantes da Maratona
Leia maisTratamento de Exceções em Java
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Tratamento de Exceções em Java Professor: César Melo Slides baseados em materiais preparados pela Profa.
Leia maisDesenvolvimento de Software no Contexto Big Data
Universidade de Brasília - UnB Faculdade UnB Gama - FGA Engenharia de Software Desenvolvimento de Software no Contexto Big Data Autor: Guilherme de Lima Bernardes Orientador: Prof. Dr. Fernando William
Leia maisUNIDADE V UM EXEMPLO DIDÁTICO DE APLICAÇÃO HADOOP
INE5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA UNIDADE V UM EXEMPLO DIDÁTICO DE APLICAÇÃO HADOOP 3.1 INTRODUÇÃO O grande avanço na última década, do aumento na quantidade e complexidade dos serviços oferecidos
Leia maisAndroid e Bancos de Dados
(Usando o SQLite) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do
Leia maisQuando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção.
6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável - O controlo da execução do programa
Leia maisBUSINESS INTELLIGENCE E DATA WAREHOUSE. Big Data Conceitos, Técnicas, Ferramentas e Arquitetura. tutorpro.com.br cetax.com.br
BUSINESS INTELLIGENCE E DATA WAREHOUSE Big Data Conceitos, Técnicas, Ferramentas e Arquitetura tutorpro.com.br cetax.com.br Quem somos 2 3 Objetivos do Curso de Big Data 4 Alinhamento das expectativas
Leia maisIO.println(a+" * "+b+" = "+produto); } }
Departamento de Ciência da Computação Universidade de Brasília Computação Básica. Professor Jorge H. C. Fernandes Lista de Exercícios Programação Básica em Java Resolva os exercícios abaixo usando a Linguagem
Leia maisTratamento de Exceções
Tratamento de Exceções Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução Exceções São eventos que
Leia maisSimulado de Linguagem de Programação Java
Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as
Leia maisDesenvolvendo aplicações Java
José Roberto Madureira Junior Adaní Cusin Sacilotti Adriana Rodrigues Reginaldo Sacilotti Desenvolvendo aplicações Java Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO JAVA... 1 1.1 A PLATAFORMA
Leia maisBenjamin Bengfort Jenny Kim
Benjamin Bengfort Jenny Kim Novatec Authorized Portuguese translation of the English edition of Data Analytics with Hadoop, ISBN 9781491913703 2016 Benjamin Bengfort, Jenny Kim. This translation is published
Leia maisJUnit. Alexandre Menezes Silva Eduardo Manuel de Freitas Jorge
JUnit Alexandre Menezes Silva alexandre_crvg@hotmail.com Eduardo Manuel de Freitas Jorge emjorge1974@gmail.com 0 Sumário O que é?... 2 Pra que serve?... 2 Arquitetura... 2 Método de comparação assertequals...
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa é transferido
Leia maisOrganizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS.
page objects_ PAGE OBJECTS Organizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS. Testes são parte fundamental do processo de desenvolvimento
Leia maisLÓGICA DE PROGRAMAÇÃO (JAVA) VARIÁVEIS. Professor Carlos Muniz
LÓGICA DE PROGRAMAÇÃO (JAVA) String String é uma classe contida no pacote java.lang e que descende da classe java.lang.object. De forma conceitual podemos dizer que é uma sequência de caracteres usada
Leia maisJAVA. Professor: Bruno Toledo
JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código
Leia maisExceções. Criando suas exceções
Exceções Criando suas exceções Tratamento de Exceções O tratamento de exceções em Java permite o gerenciamento de erros em tempo de execução. Uma exceção em Java é um objeto que descreve uma condição de
Leia maisPreparação do ambiente para desenvolvimento em Java
Buscar comentários post favorito (1) Preparação do ambiente para desenvolvimento em Java Veja neste artigo a preparação do ambiente para desenvolvimento de aplicações com a linguagem Java, vendo desde
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos
Tratamento de Exceções, Multithreads e arquivos (em Java) Programação Orientada a Objetos Nesta unidade vamos ver os últimos assuntos de interesse em java. O primeiro deles, bem simples, é o tratamento
Leia maisProf. A. G. Silva. 13 de novembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de / 1
INE5603 Introdução à POO Prof. A. G. Silva 13 de novembro de 2017 Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de 2017 1 / 1 Introdução à manipulação de arquivos Prof. A. G. Silva INE5603
Leia maisProgramação de Computadores II TCC /Turma A 1
Programação de Computadores II TCC 00.174/Turma A 1 Professor Leandro A. F. Fernandes http://www.ic.uff.br/~laffernandes Conteúdo: Tratamento de exceções Material elaborado pelos profs. Anselmo Montenegro
Leia maisApostila - Desenvolvimento web com PHP
José Roberto Madureira Junior Adaní Cusin Sacilotti Reginaldo Sacilotti Apostila - Desenvolvimento web com PHP Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO PHP... 1 1.1 PREPARAÇÃO DO AMBIENTE
Leia maisach 2147 desenvolvimento de sistemas de informação distribuídos
ach 2147 desenvolvimento de sistemas de informação distribuídos mapreduce Daniel Cordeiro 30 de maio e 1º de junho de 2017 Escola de Artes, Ciências e Humanidades EACH USP definição do inst. nacional de
Leia maisProcessamento de INDUSTRIA 4.0. Big Data. Aula #10 - Processamento distribuído de dados FONTE: DELIRIUM CAFE EDUARDO CUNHA DE ALMEIDA
INDUSTIA 4.0 Processamento de Big Data FONTE: DELIIU CAFE Aula #10 - Processamento distribuído de dados EDUADO CUNHA DE ALEIDA Agenda - Divisão do problema - apeduce - Hadoop - SQL-on-Hadoop: Hive 2 Divisão
Leia maisp Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos fonte de Java.
Pacotes e Jar 1 Pacotes p Usamos pacotes em java para organizar as classes semelhantes. p Pacotes, a grosso modo, são apenas pastas ou diretórios do sistema operacional onde ficam armazenados os arquivos
Leia maisUsando o Eclipse - Fundamentos. Professor Vicente Paulo de Camargo
Usando o Eclipse - Fundamentos Professor Vicente Paulo de Camargo O Eclipse é um ambiente de desenvolvimento integrado (IDE) É a ferramenta mais utilizada pelas empresas, visto que pode ser configurada
Leia maisBig Data Open Source com Hadoop
Big Data Open Source com Hadoop Palestrante: Marcio Junior Vieira marcio@ambientelivre.com.br Realização: Marcio Junior Vieira 14 anos de experiência em informática, vivência em desenvolvimento e análise
Leia maisTratamento de Exceções
Tratamento de Exceções Carlos Bazilio Isabel Rosseti Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense Motivação prever na implementação do sistema situações
Leia maisInterfaces e Classes Internas
e Classes Internas SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade
Leia maisNoSQL como suporte à análise de dados nãonormalizados. volume
NoSQL como suporte à análise de dados nãonormalizados e de grande volume Joel Alexandre Orientador: Professor Luís Cavique Motivação Grande quantidade de registos Tudo é registado Internet of things tudo
Leia maisMapReduce Mapeando e reduzindo
MapReduce Mapeando e reduzindo Prof. Fabrício Olivetti de França Universidade Federal do ABC Motivação Vimos até então que nosso maior problema é a quantidade de dados. O processamento não pode ser distribuído
Leia maisProgramação Estruturada e Orientada a Objetos
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Tipos Parametrizados ou Genéricos Os tipos parametrizados ou genéricos são a solução para esse problema
Leia maisUbiratam Carvalho de Paula Junior Rafaelli de Carvalho Coutinho
Universidade Federal Fluminense Pólo Universitário de Rio das Ostras Faculdade Federal de Rio das Ostras Bacharelado em Ciência da Computação Ubiratam Carvalho de Paula Junior Rafaelli de Carvalho Coutinho
Leia maisUma introdução ao Apache Hama
Uma introdução ao Apache Hama O modelo BSP nas nuvens Thiago Kenji Okada 1 1 Departamento de Ciências da Computação (DCC) Instituto de Matemática e Estatística (IME) Universidade de São Paulo (USP) MAC5742
Leia maisExecuta em qualquer plataforma que possua o Java (JDK) da Oracle
Recurso Benefícios Multiplataforma Executa em qualquer plataforma que possua o Java (JDK) da Oracle Utiliza base de dados Oracle, Microsoft SQL ou MySql Utiliza os principais bancos de dados de mercado
Leia maisManipulação de arquivos. João Paulo Q. dos Santos
Manipulação de arquivos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Introdução Uma das principais facilidades em Java, comparando com outras linguagem de programação, é a facilidade na leitura e
Leia maisInterfaces POO. Prof. Marcio Delamaro
Interfaces POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/41 O que é interface É um template de classe Outras classes podem seguir esse template Chamamos isso
Leia maisJava RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação
Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar
Leia maisConexão do Banco de Dados localhost
Conexão do Banco de Dados localhost Ligar Xampp e Instalar Workbench Observe que o MySQL direciona para a porta 3306, pois estamos trabalhando no computador local. É necessário ligar o MySQL no XAMPP.
Leia maisUNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio
UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação Processamento Paralelo Threads Aluno: Wagner Palacio Turma: 3º período Professor: Giordano Cabral Recife, 29 de maio de 2012
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa
Leia maisProgramação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos
Programação Concorrente com Thread Java Luiz Affonso Guedes Sistemas Distribuidos Definições Básicas Threads são sub-procesos no sistema operacional. É menos custoso gerenciar threads do que processos.
Leia maisAlgoritmos I Aula 13 Linguagem de Programação Java
Algoritmos I Aula 13 Linguagem de Programação Java Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação IDE Eclipse IDE (Integrated development environment) Criar um projeto
Leia maisLista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos
Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos 1. Para a construção de uma aplicação gráfica se faz necessário conceber a interface de aplicação, identificando-se
Leia maisRecapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }
Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação
Leia maisManual de Integração Prestashop TrayCheckout
Manual de Integração Prestashop TrayCheckout Versão 1.0 CONTEÚDO 1. MÓDULO INTEGRAÇÃO PRESTASHOP E TRAYCHECKOUT... 1 1.1. Instalação do Método de pagamento TrayCheckout (com pacote )... 1 1.2. Configurar
Leia maisHadoop - HDFS. Universidade Federal de Goiás Ciência da Computação
Hadoop - HDFS Universidade Federal de Goiás Ciência da Computação O que é Hadoop? Um framework para lidar com aplicações distribuídas que fazem uso massivo de dados Originalmente construído para a distribuição
Leia maisProgramação de Computadores II
Programação de Computadores II TCC- 00.174 Profs.: Leandro A. F. Fernandes (A1) & Marcos Lage (B1) & Isabel RosseJ (C1) (Turma A1) www.ic.uff.br/~laffernandes (Turma B1) www.ic.uff.br/~mlage (Turma C1)
Leia maisVetores Unimensionais
Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Acessar elementos de um
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisVetores Unimensionais
Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um
Leia maisAgenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão
Agenda Instalação e configuração Driver JDBC Criação da classe de conexão Processamento de comandos SQL com JDBC Gerenciamento de conexões Execução simples de consultas Tratamento de exceções Instalação
Leia maisTratamento de Exceção. Programação Orientada a Objetos Java (Rone Ilídio)
Tratamento de Exceção Programação Orientada a Objetos Java (Rone Ilídio) Tratamento de exceção Exceção é uma contração de Evento de Exceção Evento de exceção impede a execução normal de um programa Quando
Leia maisFundamentos de programação
Fundamentos de programação Métodos Modularização de código Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno O que é um método? Um método é um trecho de código identificado Possuem um
Leia maisDesenvolvimento de Software no Contexto Big Data
Universidade de Brasília - UnB Faculdade UnB Gama - FGA Engenharia de Software Desenvolvimento de Software no Contexto Big Data Autor: Guilherme de Lima Bernardes Orientador: Prof. Dr. Fernando William
Leia maisInstalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG
Instalação JDK Joyce França Professora de Ciência da Computação - IFNMG Máquina Virtual Java utiliza-se do conceito de máquina virtual, onde existe uma camada extra entre o sistema operacional e a aplicação,
Leia maisRESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:
RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO
Leia maisInstrução de Trabalho: Instalar Client
Instrução de Trabalho Instrução de Trabalho: Instalar Client 1. Objetivos Estabelecer procedimento para a atividade Instalar client. 2. Definições 3. Aplicação Aplicável á todos os envolvidos na Implantação
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisFabiano Moreira.
Fabiano Moreira professor@fabianomoreira.com.br Um pouco de história Java 1.02 (250 classes, lenta) Java 1.1 (500 classes, um pouco mais rápida) Java 2, versões 1.2-1.4 (2300 classes, muito mais rápida)
Leia maisParadigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura
Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação
Leia maisAPIs Java: Tratamento de exceções e Coleções
APIs Java: Tratamento de exceções e Coleções POO29004 Engenharia de Telecomunicações Prof. Emerson Ribeiro de Mello http://docente.ifsc.edu.br/mello/poo 16 DE ABRIL DE 2019 Tratamento de Exceções Um simples
Leia maisClasses e Objetos. Prof. Fernando V. Paulovich 9 de agosto de 2010
Classes e Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade
Leia maisTRATAMENTO DE EXCEÇÕES
Uma exceção em Java é um sinal que alguma condição excepcional aconteceu; Algo de errado aconteceu! Exemplos: solicitação de abertura de um arquivo não encontrado; índice de um array fora de faixa; uma
Leia maisInstalação JDK 10/03/2017
1 Instalação JDK 10/03/2017 Máquina Virtual Java utiliza-se do conceito de máquina virtual, onde existe uma camada extra entre o sistema operacional e a aplicação, responsável por traduzir o que sua aplicação
Leia mais