Haddop, MapReduce e Spark
|
|
- Maria da Assunção Nobre Felgueiras
- 5 Há anos
- Visualizações:
Transcrição
1 Haddop, MapReduce e Spark Fabrício Olivetti de França Universidade Federal do ABC
2 Tópicos 1. Conceitos Básicos 2. MapReduce 3. Spark 4. Transformações Básicas 5. Ações Básicas 1
3 Conceitos Básicos
4 Hadoop Como vimos na aula inicial, muitas bases de dados de interesse prático necessitam de mais espaço do que os maiores HDs podem suportar. Uma solução inicial é dividir os dados em vários HDs. 2
5 Hadoop Exemplo: log de requisições http em um servidor de páginas de internet. Dado um computador central que fará o gerenciamento das requisições e HDs externos conectados por rede. Operacionalização: um HD é escolhido para armazenar o log atual. Ao atingir 98% da capacidade, outro HD é escolhido. 3
6 Hadoop Quantos problemas vocês conseguem enumerar? 4
7 Hadoop Quantos problemas vocês conseguem enumerar? Se um HD falha, perdemos aqueles dados para sempre. 4
8 Hadoop Quantos problemas vocês conseguem enumerar? Se um HD falha, perdemos aqueles dados para sempre. Se um HD falha, perdemos as amostras de todo um período, criando um viés estatístico. 4
9 Hadoop Quantos problemas vocês conseguem enumerar? Se um HD falha, perdemos aqueles dados para sempre. Se um HD falha, perdemos as amostras de todo um período, criando um viés estatístico. Se a comunicação com o HD atual falhar, o que fazer? 4
10 Hadoop Quantos problemas vocês conseguem enumerar? Se um HD falha, perdemos aqueles dados para sempre. Se um HD falha, perdemos as amostras de todo um período, criando um viés estatístico. Se a comunicação com o HD atual falhar, o que fazer? Se o computador central falhar? 4
11 Hadoop Distributed File System Criado para tratar essas questões de confiabilidade ao mesmo tempo que minimiza custos. Suporta arquivos muito grandes e gerencia milhares de nós ao mesmo tempo. Assume a possibilidade de lidar com hardware de baixo custo. Duplicação de arquivos para lidar com falhas. Detecção de falhas para previnir possibilidade de perdas. Computação otimizada: o processamento é feito onde os dados residem. Executa em máquinas e sistemas heterogêneos. 5
12 Arquitetura Geral Distribuído com um pouco de centralização. Nós principais: principais máquinas com poder alto de processamento e armazenamento. Nós principais gerenciam o envio e recebimento de tarefas de processamento para os outros nós (TaskTracker). Nós principais gerenciam os locais onde os dados devem residir, dados mais utilizados estão mais próximos (DataNode). Nós centrais mantém um mapa dos arquivos e diretórios do sistema distribuído (NameNode). 6
13 Arquitetura Geral Nós centrais envia as tarefas para os nós principais (JobTracker). Pensado em leituras frequentes de lotes de arquivos. Escrita de arquivo é custosa, geralmente Write-Once, Read-Many. Escrito em Java com suporte a Python. 7
14 NameNode Armazena os metadados típicos de um sistema de arquivo. Apenas um servidor armazenando o NameNode, ele deve ser o mais importante, estável e seguro. Cuida da criação de réplicas de blocos sempre que ocorre falha em um DataNode. 8
15 DataNode Armazena os dados de arquivos. Suporta qualquer sistema de arquivo (FAT, NTFS, ext, etc.). Notifica o NameNode sobre os blocks que ele possui (ao substituir um NameNode ele requisita tal informação). Arquivos são armazenados em blocos de 64MB por padrão. Envia um relatório periódico ao NameNode. Envio de dados inteligente, tem preferência pelo envio aos DataNodes mais próximos. 9
16 Estratégias de Armazenamento O NameNode réplica cada bloco de arquivo 2 vezes em um rack local e uma vez em outro rack. Réplicas adicionais podem ser distribuídos aleatoriamente para outros nós. Ao requisitar um certo bloco, esse é recuperado do nó mais próximo ao cliente. Em caso de falha (falta de relatório periódico), o NameNode escolhe outros DataNodes para replicar. Otimiza o balanceamento do armazenamento e comunicação de rede. 10
17 Estratégias de Corretude Usa CRC32 para validar os dados. Calcula checksum para cada 512 bytes de dados, DataNode armazena o crc. Cliente recebe os dados e seus respectivos checksums. Em caso de falha de verificação, cliente reporta e recebe de outra réplica. 11
18 Comandos básicos hadoop dfs -mkdir /diretorio hadoop dfs -cat /diretorio/arquivo.txt hadoop dfs -rm /diretorio/arquivo.txt Conta com interface Web: 12
19 Exercício Supondo um cluster com 4 racks e 100 nós por rack, supondo também a probabilidade de falha de um nó é de 1%. Calcule a probabilidade de perda irreparável de um bloco de dados nas configurações padrões. 13
20 Exercício Supondo um cluster com 4 racks e 100 nós por rack, supondo também a probabilidade de falha de um nó é de 1%. Calcule a probabilidade de perda irreparável de um bloco de dados nas configurações padrões. P(n i = falha ) = 0.01 ( ) 400 P(n nós falharam ) = 0.01 n 0.99 n n ( n 3) P(perda de dados nnósfalharam) = ( ( 400 P(perda de dados) = n n=3 ) ) 0.01 n 0.99 n ( n 3) ( 400 ) 3 13
21 MapReduce
22 Modelo MapReduce Modelo de programação distribuída. Dean, Jeffrey, and Sanjay Ghemawat. MapReduce: simplified data processing on large clusters. Communications of the ACM 51.1 (2008): Ideias: Unix pipeline e básico de Programação Funcional: Trabalha com stream de dados. 14
23 Modelo MapReduce Modelo de programação distribuída. Dean, Jeffrey, and Sanjay Ghemawat. MapReduce: simplified data processing on large clusters. Communications of the ACM 51.1 (2008): Ideias: Unix pipeline e básico de Programação Funcional: cat input grep sort uniq -c cat > output input > map > shuffle & sort > reduce > output Trabalha com stream de dados. 14
24 MapReduce Figura 1: Fonte: UT Dallas. 15
25 Modelo MapReduce Balanceamento de carga otimizado. Recuperação rápida de falhas. Possibilidade de reprocessar em caso de falhas. Processamento duplicado em caso de lentidão. Otimizações locais. 16
26 Word Count Mapper Entrada: linhas de texto Saída: chave = palavra, valor = 1 Reducer Entrada: chave = palavra, valor = lista de contagens Saída: chave = palavra, valor = soma 17
27 MapReduce Figura 2: Fonte: UT Dallas. 18
28 MapReduce mapper :: Token -> (Token, Integer) reducer :: [(Token, [Integer])] -> [(Token, Integer)] mapper token = (token, 1) reducer xs = map (\ (k,vs) -> (k, sum vs)) xs 19
29 Combiners Uma forma de minimizar a carga dos Reducers, gerando uma avaliação parcial em cada nó. É executado localmente, geralmente é igual ao próprio reducer. 20
30 Modelo MapReduce Funciona bem para programas pequenos e manipulações simples dos dados. Aplicações de larga escala são difíceis de serem implementadas. Problema de performance. 21
31 Exercício No exemplo de contagem de palavras, o que deve ser feito entre o mapper e o reducer feito em Haskell para que ele funcione? 22
32 Exercício No exemplo de contagem de palavras, o que deve ser feito entre o mapper e o reducer feito em Haskell para que ele funcione? DICA Considere a saída do mapper e a entrada do reducer: mapper :: Token -> (Token, Integer) reducer :: [(Token, [Integer])] -> [(Token, Integer)] 22
33 Spark
34 Spark: Além do MapReduce De tal forma a facilitar o desenvolvimento de aplicações e generalização de tarefas comuns no MapReduce, foi criada a plataforma Spark. Mais eficiente: computação distribuída + multithreading. Linguagem estendida. Compartilhamento de Dados mais rápido. Árvore de processamento. Suporte a Scala, Java, Python, R. 23
35 Resilient Distributed Dataset: RDD Abstração principal do Spark: A base de dados é um objeto. Aplica operações nesses objetos, como métodos Pode estar armazenado em Hadoop, sistema de arquivo comum ou até na memória (transparente). Transformações (paralelas) e Ações (saída de dados). Refaz operações em caso de falhas. 24
36 Operações em uma RDD Transformações f :: RDD -> RDD: Avaliação Preguiçosa. Ex.: map, reduce, filter. RDDs podem ser de listas de valores ou lista de tuplas chave-valor [(K, V)]. Ações f :: RDD -> a: Gera computação. Ex.: count, saveastextfile, collect. 25
37 Directed Acyclic Graph: DAG No MapReduce do Hadoop, cada operação Map-Reduce é independente uma da outra, mesmo quando as tarefas estão interligadas. Considere o problema de retornar a contagem de palavras ordenadas pela frequência: mapper1 :: Linha -> [(Palavra, Integer)] reducer1 :: [(Palavra, [Integer])] -> [(Palavra, Integer)] mapper2 :: (Palavra, Integer) -> [(Integer, Palavra)] reducer2 :: [(Integer, [Palavra])] -> [(Integer, [Palavra])] Qual a definição das funções mapper2 e reducer2? 26
38 Directed Acyclic Graph: DAG Primeiro, o Hadoop irá completar TODA a tarefa MapReduce1. Somente após a conclusão e escrita do arquivo de saída (escrita custa caro!), a tarefa MapReduce2 iniciará, para então gerar a resposta. 27
39 Directed Acyclic Graph: DAG No Spark, é feito um grafo direcionado e acíclico (árvore) de processamento que interliga as tarefas de MapReduce (ou outras transformações) para gerar o menor número de escritas possíveis. 28
40 Directed Acyclic Graph: DAG Uma vez que a RDD é imutável e as transformações devem ser puras, é possível fazer a composição dessas funções sem introduzir efeitos inesperados. 29
41 Transformações Básicas
42 Criando uma RDD Uma RDD pode ser criada a partir de uma coleção em memória ou um arquivo existente no sistema de arquivos (distribuídos ou não) 1. listacomidas = [ bife, alface, arroz ] comidasrdd = sc.parallelize(listacomidas, 2) textordd = sc.textfile(nomearquivo, 2) O segundo parâmetro é a quantidade de partições por nó local. O ideal é criar cerca de 2 partições por core (Porque?) 1 os comandos seguem a sintaxe Pyspark 30
43 MapReduce Similar ao map e fold do Haskell: # [Linha] -> [Int] -> [Int] -> Int textordd.map(lambda linha: length(linha)).reduce(lambda (l1, l2): l1 + l2) Nota: reduce é uma ação, e portanto força o processamento. 31
44 reducebykey Parecido com o procedimento que fizemos até então no Haskell: aplica uma função no resultado de groupbykey. sortbykey: # [Linha] -> [(Palavra, Int)] -> [(Palavra,[Int])] # -> [(Palavra, Int)] textordd.map(lambda linha: [(w,1) for w in linha.split()]).reducebykey(lambda f1,f2: f1+f2) 32
45 groupbykey Retorna o resultado de groupbykey. sortbykey após um map: # [Linha] -> [(Palavra, Int)] -> [(Palavra,[Int])] textordd.map(lambda linha: [(w,1) for w in linha.split()]).groupbykey() 33
46 filter Similar ao Haskell, remove da RDD todos os elementos que retorna falso para a função passada como parâmetro: # [Linha] -> [(Palavra, Int)] -> [(Palavra,[Int])] textordd.map(lambda linha: [(w,1) for w in linha.split()]).reducebykey(lambda f1,f2: f1+f2).filter(lambda (w, f): f > 3) 34
47 join Une a RDD de tuplas com outra RDD de tuplas dado que as chaves são do mesmo tipo: # [(Palavra, Int)] -> [(Palavra, Int)] # -> [(Palavra, (Int, Int))] freqpalavrardd.join(idfpalavrardd) 35
48 cartesian Une duas RDDs através de um produto cartesiano de seus elementos: # [(Palavra, Int)] -> [(Palavra, Int)] # -> [(Palavra, Int), (Palavra, Int)] freqpalavrardd.cartesian(freqpalavrardd) 36
49 Pipelines de processamento Conforme mencionado anteriormente, o retorno das transformações do Spark são intenções de computação, a sequência de transformações formam um pipeline de processamento a ser computado quando necessário. pipeline1 = RDD.transforma1().transforma2().transforma3() pipeline2 = pipeline1.transforma1().transforma2() pipeline3 = pipeline1.transforma1(pipeline2).transforma2() Dessa forma, o Spark consegue otimizar o processamento e evitar redundâncias. 37
50 Ações Básicas
51 Ações Básicas.collect(): retorna a RDD em memória..first(): retorna o primeiro elemento da RDD..take(n): retorna os n primeiros elementos da RDD. 38
52 Atividade 02 Complete o Laboratório Pré-processamento no Spark 39
Python + Spark = PySpark. Prof. Fabrício Olivetti de França Universidade Federal do ABC
Python + Spark = PySpark Prof. Fabrício Olivetti de França Universidade Federal do ABC Spark Plataforma para processamento de dados em larga escala. Baseado em transformações preguiçosas dos dados. Estende
Leia maisIntrodução Ferramentas Unix MapReduce Outras Ferramentas. Batch Processing. Fabiola Santore. Universidade Federal do Paraná
Fabiola Santore Universidade Federal do Paraná Sumário 1. Introdução 2. Ferramentas Unix 2.1 Análise de log 2.2 Filosofia Unix 3. MapReduce 3.1 Procedimento 3.2 Reduce: Joins e Agrupamento 3.3 Análise
Leia maisApache Spark I NTRODUÇÃO À C OMPUTAÇÃO PARALELA E D ISTRIBUÍDA
Apache Spark CARLOS EDUARDO MART INS RELVAS I NTRODUÇÃO À C OMPUTAÇÃO PARALELA E D ISTRIBUÍDA Apache Hadoop Mudou a forma de armazenamento e processamento de dados em um cluster de computadores, trazendo
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 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 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 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 maisAPLICAÇÕES DE BIG DATA COM SPARK E PYTHON
CURTA DURAÇÃO APLICAÇÕES DE BIG DATA COM SPARK E PYTHON CARGA HORÁRIA: 48 horas DURAÇÃO: 3 meses COORDENAÇÃO: Prof. Dr. Adolpho Pimazoni Canton Prof.ª Dr.ª Alessandra de Ávila Montini APRESENTAÇÃO O crescente
Leia maisCOMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações
COMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações Jaqueline Joice Brito Slides em colaboração com Lucas de Carvalho Scabora Sumário Computação em Nuvem Definição
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 maisBanco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas
Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar
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 maisSistemas de arquivos distribuídos. ECO036 - Sistemas Paralelos e Distribuídos
Sistemas de arquivos distribuídos ECO036 - Sistemas Paralelos e Distribuídos Sistemas de arquivos distribuídos - Daniel Nogueira 20938 - Felipe Castro Simões 21525 Sumário 1. Introdução 2. Sistemas de
Leia maisUm Servidor Escalável para Bases Massivas de
Um Servidor Escalável para Bases Massivas de Dados Geográficos Leandro da Silva Santos Orientador: Tiago Garcia de Senna Carneiro Co-orientador: Ricardo Augusto Rabelo Oliveira Departamento de Computação
Leia maisImplementação de Diretórios (1)
Implementação de Diretórios (1) Ao abrir um arquivo, o SO usa o caminho para localizar a entrada no diretório. A entrada no diretório fornece informações para localizar os blocos de disco. Endereço de
Leia maisCOMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações
COMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações Jaqueline Joice Brito Slides em colaboração com Lucas de Carvalho Scabora Sumário Computação em Nuvem Definição
Leia maisImplementação de Sistemas de Arquivos. Na Aula Anterior... Esquema do Sistema de Arquivos. Nesta Aula 31/10/2016. Estrutura de Baixo Nível de um Disco
GSI018 Sistemas Operacionais 31/10/2016 Implementação de Sistemas de Arquivos Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior... Memória
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 maisMineração de Dados com Big Data. Prof. Fabrício Olivetti de França Universidade Federal do ABC
Mineração de Dados com Big Data Prof. Fabrício Olivetti de França Universidade Federal do ABC Introdução Mineração de Dados Extração e descoberta de conhecimentos de bases de dados. Interdisciplinar: aprendizado
Leia maisSistema de arquivos. Adriano J. Holanda 24/5/2016
Sistema de arquivos Adriano J. Holanda 24/5/2016 Sistema de arquivos Definição Interface entre os processos e os meios de armazenamento que fornece as abstrações e operações para a manipulação de bytes.
Leia maisAVALIAÇÃO DE DESEMPENHO DE PROCESSAMENTO DISTRIBUÍDO EM LARGA ESCALA COM HADOOP
AVALIAÇÃO DE DESEMPENHO DE PROCESSAMENTO DISTRIBUÍDO EM LARGA ESCALA COM HADOOP Débora Stefani Lima de Souza dsls@cin.ufpe.br Orientador: Dr. Paulo Romero Martins Maciel INTRODUÇÃO Nem sempre os dados
Leia maisProtótipo tipo de um sistema de arquivos para ambiente distribuído
Universidade Regional de Blumenau Bacharelado em Ciências da Computação Protótipo tipo de um sistema de arquivos para ambiente distribuído do Acadêmica: Catia Silene Possamai Orientador: Antonio Carlos
Leia maisSistemas de Arquivos Distribuídos. Bruno M. Carvalho Sala: 3F2 Horário: 35M34
Sistemas de Arquivos Distribuídos Bruno M. Carvalho Sala: 3F2 Horário: 35M34 Introdução Serviço de arquivos descreve os serviços oferecidos pelo sistema de arquivos aos clientes Servidor de arquivos processo
Leia maisBIG DATA PODEMOS DIZER QUE SÃO DADOS GRANDES?
1 BIG DATA PODEMOS DIZER QUE SÃO DADOS GRANDES? Deyvirson Mendonça SUMÁRIO Definição Os Vs do Big Data Desafios Hadoop BD e Big Data PARA COMEÇAR O QUE SÃO DADOS? Informações diversas, que podem ser organizadas
Leia maisSumarizando Dados. Fabrício Olivetti de França. Universidade Federal do ABC
Sumarizando Dados Fabrício Olivetti de França Universidade Federal do ABC Sumarizando os dados Sumarização Antes de extrair informações da base de dados, é importante entender seu conteúdo. Sumarização:
Leia maisAvanços e Perspectivas do Projeto Integrade na UFMA
Avanços e Perspectivas do Projeto Integrade na UFMA Francisco José da Silva e Silva Universidade Federal do Maranhão - UFMA Departamento de Informática Laboratório de Sistemas Distribuídos - LSD Agosto
Leia maisIntrodução aos Sistemas Operacionais
1 Introdução aos Sistemas Operacionais 1.1 O que é um sistema operacional 1.2 História dos sistemas operacionais 1.3 O zoológico de sistemas operacionais 1.4 Conceitos sobre sistemas operacionais 1.5 Chamadas
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 maisORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MULTICOMPUTADORES
Leia maisOrganização de Computadores Sistema de entrada e saída (I/O) e computação paralela. Professor: Francisco Ary
Organização de Computadores Sistema de entrada e saída (I/O) e computação paralela Professor: Francisco Ary Computação Paralela Capacidade de um sistema computacional ser executado de forma simultânea,
Leia maisSistemas de arquivos
Todos os programas precisam armazenar e recuperar dados. Os processos não podem armazenar grande quantidade de dados no seu espaço de endereçamento. Quando o processo chega ao final os dados no seu espaço
Leia maisORGANIZAÇÃO DE COMPUTADORES
ORGANIZAÇÃO DE COMPUTADORES CAMPUS SANTO ANDRÉ CELSO CANDIDO SEMESTRE 2014-1 1 CONCEITOS ASSUNTOS DESTA AULA: Funcionalidades de um computador; Hardware e Software; Componentes de um computador: o CPU
Leia maisSistemas de Informação. Sistemas Operacionais
Sistemas de Informação Sistemas Operacionais SISTEMA DE ARQUIVOS SUMÁRIO 7. SISTEMA DE ARQUIVOS: 7.1 Introdução; 7.2 s; 7.3 Diretórios; 7.4 Gerência de Espaço Livre em Disco; 7.5 Gerência de Alocação de
Leia maisOrganização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional. Professor: Francisco Ary
Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional Professor: Francisco Ary Computação Paralela Capacidade de um sistema computacional executar
Leia maisAlcides Pamplona
Alcides Pamplona alcides.pamplona@gmail.com Objetivos Gerais Capacitar o aluno a compreender os paradigmas dos Bancos de Dados Distribuídos, visando sua aplicação na análise e projeto de bancos de dados
Leia maisSistemas de Arquivos. (Aula 23)
Sistemas de Arquivos (Aula 23) Funções de um SO Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção 2 Sistemas Operacionais 2008/1 Necessidade de Armazenamento
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 maisArmazenando grandes quantidades de dados
Armazenando grandes quantidades de dados Universidade Federal de Campina Grande UFCG Centro de Engenharia Elétrica e Informática CEEI Departamento de Sistemas e Computação DSC Disciplina: TECC Analise
Leia maisFramework para Deduplicação de Dados com Apache Spark
Framework para Deduplicação de Dados com Apache Spark César Magrin - magrin@inf.ufpr.br Disciplina: Metodologia Científica - CI860 Professor: Alexandre Direne Sumário 1. Qualidade de Dados 2. Deduplicação
Leia maisHaskell Paralelo (e entrada e saída de dados)
Haskell Paralelo (e entrada e saída de dados) Prof. Fabrício Olivetti de França Universidade Federal do ABC Entrada e Saída de dados Imprimindo na tela Nós já conhecemos o comando print, que imprime qualquer
Leia maisSSC0611 Arquitetura de Computadores
SSC0611 Arquitetura de Computadores 6ª Aula Entrada e Saída Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Estrutura da máquina de von Neumann Dispositivos Periféricos Interface com o mundo exterior
Leia maisPIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações
Arquitetura de Computadores Introdução ao Pipeline PIPELINE Linha de Montagem A produção é dividida em várias etapas Produtos em etapas distintas podem ser desenvolvidos separadamente Pode ser Aplicado
Leia maisEstudo de implementação de um cluster utilizando apache hadoop. Giovanni Furlanetto
Estudo de implementação de um cluster utilizando apache hadoop Giovanni Furlanetto 1470175 Sumário Introdução Metodologia de Pesquisa Revisão Bibliográfica Resultados Conclusão Referências Introdução Considerando
Leia maisInformática I. Aula 2. Ementa
Informática I Aula 2 http://www.ic.uff.br/~bianca/informatica1/ Aula 2-29/08/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e
Leia maisSistemas Distribuídos
Sistemas Distribuídos Motivação Aplicações Motivam Possibilita Engenharia Motivação! Aplicações cada vez mais complexas! Qual a técnica mais comum para redução de complexidade? " Modularização Dividir
Leia maisSistemas Operacionais
Introdução Sistemas Operacionais Implementação de arquivos Gerenciamento de espaço em disco Trabalho sob a Licença Atribuição-SemDerivações-SemDerivados 3. Brasil Creative Commons. Para visualizar uma
Leia maisOrganização de Computadores I
Organização de Computadores I Aula 2 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte2.pdf Organização de Computadores I Aula 2 1/29 Tópicos de Computação. de um Sistema de Computação..
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 maisArquitetura de Computadores. Processamento Paralelo
Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple
Leia maisIntrodução ao Python. Prof. Fabrício Olivetti de França Universidade Federal do ABC
Introdução ao Python Prof. Fabrício Olivetti de França Universidade Federal do ABC Python Linguagem interpretada criada em 1991 Objetivos: enfatizar a legibilidade do código e, encurtar o tamanho dos códigos.
Leia maiscom Big Data Fabrício Olivetti de França Universidade Federal do ABC
Mineração de Dados com Big Data Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Introdução 1 Introdução Mineração de Dados Extração e descoberta de conhecimentos de bases de dados. Interdisciplinar:
Leia maisBancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.
Bancos de Dados Distribuídos Prof. Frank Siqueira Departamento de Informática e Estatística Universidade Federal de Santa Catarina Conteúdo Introdução aos BDs Distribuídos Processamento de Consultas Distribuídas
Leia maisIntrodução à Informática
Introdução à Informática Aula 3 http://www.ic.uff.br/~bianca/introinfo/ Aula 3-12/09/2007 1 Objetivo da disciplina O objetivo dessa disciplina é dar ao aluno noções básicas de computação. Serão apresentados
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 31 de julho de 2017 1/24 Apresentação
Leia maisArquitetura de Computadores
Arquitetura de Computadores 2018.1 Computador O computador é uma máquina que realiza processamento de dados automaticamente. Ela é formada por um hardware e um software. O Engenho Analítico é o primeiro
Leia maisSistemas Operacionais. BC Sistemas Operacionais
BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento 1 Estrutura do Sistema de Arquivo Gerência de espaço em disco Roteiro Cópia de segurança do sistema
Leia maisslide Pearson Prentice Hall. Todos os direitos reservados.
Sistema de Arquivos slide 1 Sistemas de arquivos Condições essenciais para armazenamento de informações por um longo prazo: Deve ser possível armazenar uma grande quantidade de informação A informação
Leia maisMapReduce. 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 maisUso de Índices na Otimização e Processamento de Consultas. Otimização e Processamento de Consultas. Otimização e Processamento de Consultas
usuário processador de E/S gerador de respostas Uso de Índices na Otimização e Processamento de Consultas Profa. Dra. Cristina Dutra de Aguiar Ciferri analisador controle de autorização verificador de
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
Leia maisTécnico Subsequente em Redes de Computadores Introdução a Sistemas Abertos (ISA)
Técnico Subsequente em Redes de Computadores Introdução a Sistemas Abertos (ISA) Aula 03 Visão Geral do Linux Objetivos Entender de forma básica o funcionamento do sistema Linux; Aprender as principais
Leia mais- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula
Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br Sistemas de Arquivos- Parte 1 O que é um sistema de arquivos? O que é um sistema de arquivos? É a forma de organização
Leia maisCaracterização de Sistemas Distribuídos
Caracterização de Sistemas Distribuídos Roteiro Conceitos de Hardware Conceitos de Software Classificação de Flynn Classificação baseada no acesso a memória 2 Conceitos de HW Múltiplas CPUs Diferentes
Leia maisO que faz? De tudo um pouco.
Sistema de arquivos O que faz? De tudo um pouco. Principalmente faz o controle dos arquivos armazenados em disco tanto do SO como dos usuários (abertura, acesso, consistência, etc.) Mas também inclui funções
Leia maisBCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 21 de fevereiro de 2018 1/24 Apresentação
Leia mais2.1 NesC Seguem alguns dos principais desafios impostos à linguagem NesC:
2 TinyOS e NesC O framework de programação mais utilizado em redes de sensores sem fio é composto pelo sistema operacional TinyOS [11] e pela linguagem de programação NesC [12]. A linguagem NesC foi definida
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Entrada e Saída Slide 1 Entrada e Saída Dispositivos Externos E/S Programada Organização e Arquitetura de Computadores I Sumário E/S Dirigida por Interrupção
Leia maisSistemas Distribuídos Aula 10
Sistemas Distribuídos Aula 10 Aula passada Arquitetura P2P Bittorrent Distributed Hash Table (DHT) Aula de hoje Modelo computação distribuída RPC Marshalling e stubs Semântica operacional RMI Computação
Leia maisComponente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída
11 1 Introdução Recentes avanços em redes de computadores impulsionaram a busca e o desenvolvimento de meios para facilitar e acelerar o desenvolvimento de aplicações em sistemas distribuídos, tornando
Leia maisBanco de Dados. SGBDs. Professor: Charles Leite
Banco de Dados SGBDs Professor: Charles Leite Sistemas de BD Vimos que um BANCO DE DADOS representa uma coleção de dados com algumas propriedades implícitas Por exemplo, um BD constitui os dados relacionados
Leia maisEtapa III - Implementação de Operadores da Álgebra Relacional; Etapa IV - Comparação experimental de varredura sequencial x acesso aleatório
UFU/FACOM/BCC GBC053 - Gerenciamento de Banco de Dados - 2018/2 Trabalho de Implementação Prof. Ilmério Reis da Silva O trabalho semestral da disciplina em epígrafe tem como objetivo a implementação de
Leia maisEstácio-FIC Graduação em Redes de Computadores
Estácio-FIC Graduação em Redes de Computadores Disciplina Programação para Servidores Aula 6 Comandos externos Sumário Comandos básicos; Comandos para manipulação de data e hora; Comandos para processamento
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 maisAula 1: Apresentação do Curso
Aula 1: Apresentação do Curso Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Fernanda Passos (UFF) Apresentação do Curso FAC 1 / 30 Estrutura da Disciplina
Leia maisSistemas Distribuídos Aula 8
Sistemas Distribuídos Aula 8 Aula passada Limitação dos semáforos Monitores Variáveis de condição Semântica de signal Aula de hoje Arquitetura de sistemas Arquitetura de sistemas distribuídos Cliente/servidor
Leia maisArquiteturas. capítulo
Arquiteturas capítulo 2 Modelos de arquitetura de sistemas distribuídos Clientes realizam pedidos a servidores Client invocation invocation Server result Server result Client Key: Process: Computer: Modelos
Leia maisCompiladores Geração de Código
Compiladores Geração de Código Fabio Mascarenhas - 2013.2 http://www.dcc.ufrj.br/~fabiom/comp O Back-end Até agora vimos as fases do front-end do compilador: Análise Léxica Análise Sintática Análise Semântica
Leia mais6 Conclusão Contribuições da Dissertação
6 Conclusão Neste trabalho, foi apresentado um sistema colaborativo capaz de controlar as versões das edições de um vídeo no formato MPEG-2, sem que os editores estejam no mesmo local, ao mesmo tempo.
Leia maisAula 1: Apresentação do Curso
Aula 1: Apresentação do Curso Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Apresentação do Curso FAC 1 / 30 Estrutura da Disciplina Diego
Leia maisIntrodução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos
Conceitos Básicos Introdução Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional
Leia maisProcessamento de Consultas. Processamento de Consultas. Processamento de Consultas Distribuídas. Otimização de Consultas
Processamento de Processamento de Consultas Processamento de Consultas Passos na execução de consultas Consulta ao B.D. Análise e Tradução Expressão Algébrica Avaliação Plano de Execução Otimização Resultado
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 maisParadigmas de Programação
Paradigmas de Programação Fabrício Olivetti de França 21 de Junho de 2018 1 Listas 2 Listas Uma das principais estruturas em linguagens funcionais. Representa uma coleção de valores de um determinado tipo.
Leia maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Nível do Sistema Operacional (Parte
Leia maisComputação Distribuída
Aula 1 Introdução aos Sistemas Distribuídos Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento de programas Usuário ia ao computador Processamento Seqüencial Leitoras de cartões
Leia maisSistemas Operacionais
Introdução Inst tituto de Info ormátic ca - UF FRGS Sistemas Operacionais i Implementação de arquivos Gerenciamento de espaço em disco Aula 19 Arquivo é a unidade de armazenamento de informações Para implementar
Leia maisIntrodução aos Sistemas Operacionais. Subsistema de Arquivos
Introdução aos Sistemas Operacionais Subsistema de Arquivos Eleri Cardozo FEEC/Unicamp Subsistema de Arquivos O subsistema de arquivos deve prover soluções para as seguintes questões: Como a informação
Leia maisTÓPICOS EM COMPUTAÇÃO APLICADA
TÓPICOS EM COMPUTAÇÃO APLICADA Aula 6 Tecnologias para Sistemas Distribuídos Bacharelado em Ciência da Computação Professor MSc. Ariel da Silva Dias Complexo Educacional FMU Filosofia Computadores estão
Leia maisSistemas Distribuídos. Plano de Curso. Plano de Curso 04/03/12 ! EMENTA:
Sistemas Distribuídos Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com! EMENTA: Plano de Curso! Conceitos. Comunicação entre processos (IPC). Programação de aplicações cliente- servidor. Sincronização
Leia maisSistemas Operacionais Arquivos. Carlos Ferraz Jorge Cavalcanti Fonsêca
Sistemas Operacionais Arquivos Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Copyright Carlos Ferraz Cin/UFPE Armazenamento da Informação a Longo Prazo 1. Deve ser possível
Leia maisRedução de Dimensionalidade e Agrupamento de Dados
Redução de Dimensionalidade e Agrupamento de Dados Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Análise de Componentes Principais 2. Agrupamento de Dados 1 Redução de Dimensionalidade
Leia maisSistema Operacional. Escola de Ciências e Tecnologia ECT1103 INFORMÁTICA FUNDAMENTAL UFRN
Escola de Ciências e Tecnologia UFRN Sistema Operacional Prof. Aquiles Burlamaqui Nélio Cacho Luiz Eduardo Eduardo Aranha ECT1103 INFORMÁTICA FUNDAMENTAL Manter o telefone celular sempre desligado/silencioso
Leia maisAula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos
Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Email: Site: marcelosantos@outlook.com www.marcelohsantos.com.br TECNOLOGIA EM JOGOS
Leia maisEderson Luiz da Silva Ciência da Computação. Algoritmos e Programação
Ederson Luiz da Silva Ciência da Computação Algoritmos e Programação Linguagem de programação Linguagem de Programação Linguagem de máquina http://www.assemblyprogressivo.net/p/curso.html Linguagem de
Leia maisHardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização
Hardware: Componentes Básicos Arquitetura dos Computadores Dispositivos de Entrada Processamento Dispositivos de Saída Armazenamento Marco Antonio Montebello Júnior marco.antonio@aes.edu.br Sistema de
Leia maisReplicação em sistemas web
Sistemas Distribuídos abril de 2018 Servidores Web tolerância a falhas desempenho/escalabilidade desempenho: uso de servidores mais potentes (scale-up x scale-out) caching uso de servidores replicados
Leia mais