SCM Join Um Algoritmo de Junção para Memória SCM
|
|
- Patrícia Paula Amaral Cabral
- 8 Há anos
- Visualizações:
Transcrição
1 SCM Join Um Algoritmo de Junção para Memória SCM Júlio Alcântara Tavares 1, José de Aguiar Moraes Filho 1, Angelo Brayner 1 1 Programa de Pós Graduação em Informática Aplicada Universidade de Fortaleza (UNIFOR) Caixa Postal Fortaleza CE Brazil {julio,jaguiar,brayner}@unifor.br Nível: Mestrado Ano de ingresso no programa: 2011 Exame de qualificação: Mês de Novembro/2012 Época esperada de conclusão: Mês de Junho/2013 Resumo. A SCM (Storage Class Memory) é uma categoria de dispositivos de armazenamento que oferece um vasto campo de pesquisa e, devido as suas características intrínsecas, está intimamente relacionada com o redesenho dos principais componentes do SGBD. Os componentes de processamento de consultas, recuperação/logging e indexação, quando revisitados para aderir a este novo paradigma, poderiam trazer grandes benefícios relacionados a vazão e ao desempenho do sistema, elevando o a um outro nível de desempenho. Pensar em novas abordagens para os algoritmos atuais (clássicos) representa boa parte desta questão. Grandes fornecedores de servidores de armazenamento (como por exemplo, Oracle Exadata, a linha CX da EMC e a linha Dell Compellent) aderiram a esta realidade e já disponibilizam hardware especializado em SCM para armazenamento e cache de dados. Neste trabalho, pretendemos explorar as características e tradeoffs da SCM para repensar e replanejar componentes da infraestrutura dos SGBDs, especificamente na área de processamento de consultas, propondo um novo algoritmo de junção que leva em consideração o armazenamento dos dados em mídia SCM. Dessa forma, pretende se evidenciar que, com o avanço e popularização destas novas mídias, se os principais algoritmos que atualmente estão em execução nos SGBDs comerciais fossem sensíveis ao contexto e às características da mídia de armazenamento subjacente, seria possível obter ganhos que vão muito além da velocidade física da SCM. Palavras Chave: banco de dados 1, operador de junção 2, storage class memory (SCM) 3 7
2 SCM Join - Um Algoritmo de Junção para Memória SCM Júlio A. Tavares 1, José de Aguiar Moraes Filho 1, Angelo Brayner 1 1 Programa de Pós-Graduação em Informática Aplicada - Universidade de Fortaleza (UNIFOR) Fortaleza CE Brasil 1. Introdução {julio,jaguiar,brayner}@unifor.br Nas últimas décadas a velocidade dos processadores aumentou exponencialmente. Enquanto isso, o número de entradas/saídas por segundo (IOPS) proporcionadas pelos discos rígidos (HDDs) aumentou apenas ligeiramente, não acompanhando a taxa de crescimento imposta pelos processadores. Para amenizar esse problema, um conjunto de novas mídias de armazenamento, denominada Storage Class Memory (SCM), surgiu como uma solução bastante eficiente para esta questão. Exemplos de SCM incluem a memória flash, PCM (phase-change memory), SSDs (discos de estado sólido), dentre outros. Três características principais devem ser destacadas na SCM: (i) não volatilidade, (ii) baixo tempo de acesso, (iii) alta vazão (# IOPS) e (iv) assimetria no tempo de leitura/gravação. As duas primeiras têm um benefício direto para os sistemas de banco de dados. A última característica representa grandes desafios para os sistemas gerenciadores de banco de dados, podendo levar a uma proporção de 1:200 em relação aos tempos de leitura e escrita de dados na SCM [Nath and Kansal 2007]. Realizamos uma bateria de experimentos para termos indícios das características e das melhores práticas a serem seguidas no projeto de um algoritmo de junção para mídias SCM. Utilizamos um servidor Intel Quad Core 1,83 GHz usando o Windows 7 64-bits, com 4-GB de memória RAM. Executamos experimentos com bancos de dados armazenados em um disco rígido (HDD) e em um disco de estado sólido (SSD). O HDD utilizado foi um SATA II da Samsung (modelo 502HI) com 500 Gbytes, 7200 rpm e cache de 16 MB. O disco SSD utilizado foi um Corsair Force GT de 120 GB, ligado ao servidor através de interface SATA II. As bases de dados utilizadas nos experimentos foram criadas utilizando o SQL Server 2008 (64bits), utilizando o HDD e o SSD. Antes de executar cada experimento, o serviço do banco de dados foi reinicializado para diminuir a influência do gerenciador do buffer e da política de alocação de memória nos testes executados. Para cada execução, utilizamos o mesmo tamanho de buffer do SGBD. O SSD foi preenchido por completo, a cada teste, para que não existissem blocos de dados livres para a escrita (ou apenas estivessem livres a minoria necessária para a execução do experimento), pois isso poderia levar a maiores flutuações na coleta dos resultados. Essa ação também visou a simulação do pior caso, já que todos os blocos estavam escritos (alocados). Investigamos a influência de algoritmos de junção (nested-loop join, merge join e hash join) e tempos de resposta de consultas com 12 das 23 consultas utilizadas no TPC-H (consultas 2, 3, 5, 10, 11, 12, 14, 16, 17, 18, 19 e 23). O critério de seleção destas consultas foi a participação de tabelas grandes, especialmente a tabela LineItem, que mesmo tendo sido criada com fator de escala 1 possuia mais de 6.5x10 6 tuplas. Cada uma destas consultas foi executada forçando o uso de um algoritmo específico de junção. Junções que utilizaram o nested-loop join apresentaram os piores re- 8
3 sultados em SSD, em relação aos planos que utilizaram os operadores hash-join e mergejoin. Isto ocorreu porque o uso do nested-loop-join consumiu mais espaço temporário durante a sua execução, o que implica mais operações de escrita em um maior espaço de armazenamento no SSD, resultando em pior desempenho. (a) Consultas 05, 17, 18 (TPCH) (b) Consultas 02, 03, 14 (TPCH) (c) Consultas 16, 19, 23 (TPCH) (d) Consultas 10, 11, 12 (TPCH) Figure 1. Desempenho dos Algoritmos em mídia SCM Com relação ao hash join e ao merge join, é importante ressaltar que para criar os buckets (partições) durante a etapa de particionamento (hash-join) e para ordenar os dados antes de realizar a junção (merge join), também é necessário a utilização de espaço temporário. Por exemplo, na Consulta 3 o merge-join obteve melhor desempenho no HDD, sendo menos eficiente no SSD. A razão para tal comportamento é novamente o número de operações de gravação para classificar os blocos utilizados pelo resultado temporário gerado. Analisando especificamente o merge-join e o hash-join, não há nenhum vencedor evidente. Em geral, observamos a seguinte regra: quanto mais resultados temporários são gerados, maior é o tempo de resposta da consulta no SSD. Dessa forma, entendemos essa característica como sendo umas das principais questões a serem analisadas durante o projeto de um algoritmo de junção para mídia SCM, o que também reflete a importância de tratar a assimetria de E/S desta mídia. Percebemos também que, de um modo geral, os tempos de execução dos algoritmos clássicos em HDD e SSD são parecidos, embora diferentes em termos absolutos. Isso pode ser um indício de que heurísticas similares as que são utilizadas no HDDs poderiam ser aplicadas também para o SSD. Estudos mais detalhados precisam ser feitos para comprovar esta hipótese. Entretanto, houve situações onde o nested-loop join apresentou um desempenho melhor que o do hash-join e do merge-join. Por exemplo, nas consultas 3 e 19 os planos 9
4 que utilizaram o nested-loop apresentaram melhor desempenho do que os demais planos de execução, quando executados no SSD. Procuramos entender este comportamento e detalhamos a execução da consulta para averiguar as informações dos resultados obtidos. Após análise, descobrimos que esses planos utilizaram o nested-loop-join usando índices (index nested-loop-join). As consultas 3 e 19 utilizaram a tabela LineItem, uma tabela que armazenava uma quantidade relevante de tuplas. O algoritmo de junção executado nos planos que envolviam o nested-loop e que estavam relacionados com as consultas 3 e 19 utilizou um índice na tabela LineItem como operando interno da junção. Percebemos que esta situação acelerou bastante a execução do plano, o que gera indícios sobre a validade de utilizar índices mesmo quando utilizando mídias SCM. Levando em consideração os argumentos expostos anteriormente, podemos formular as seguintes hipóteses: (i) A fim de tornar as técnicas de processamento de consulta capazes de tirar proveito do uso de mídia SCM, é necessário desenvolver algoritmos que fazem uso de pipeline ou de adaptabilidade, visando diminuir a geração de resultados temporários. (ii) Além disso, é de fundamental importância a concepção de um novo modelo de custo visando adequá-lo em um novo paradigma de processamento de consultas. Neste modelo, não apenas o número de páginas transferidas deve ser avaliado, mas também deveremos avaliar o número de páginas escritas durante a execução do plano, as quais devem ter um peso maior do que o aplicado para as páginas transferidas da memória secundária (SSD) para a memória principal, levando em consideração as características de assimetria de E/S da SCM. Pretendemos realizar um estudo empírico sobre o uso da SCM em sistemas gerenciadores de banco de dados, especificamente dentro da área de processamento de consultas. Para isso, propomos um novo algoritmo de junção, denominado SCM Join, que reúne características necessárias para obter um desempenho eficaz na realização de junções em mídias do tipo SCM. 2. O Algoritmo SCM Join Como contribuições, podemos mencionar: (i) A evidenciação da necessidade de repensar a arquitetura de elementos chave dos SGBDs, como o processamento de consultas, para que estes possam usufruir das características da SCM; (ii) A realização de experimentos que geram indícios acerca das melhores práticas a serem adotadas no projeto de algoritmos e componentes arquiteturais do SGBD que levam em consideração a assimetria de E/S; (iii) A implementação de um algoritmo de junção para mídias SCM utilizando o SGBD PostgreSql; e (iv) A evidenciação de que um modelo de custo específico para mídia SCM pode trazer grandes benefícios para os SGBDs atuais. Tentamos projetar o SCM Join, que é um tipo de hash join para SCM, com as seguintes diretrizes: (i) Tratamento do transbordamento de memória levando em consideração o contexto específico da mídia SCM; (ii) Utilização de técnicas de compressão para gerar menos resultados intermediários, visando diminuir o total de escritas na mídia; e (iii) Explorar as rápidas leituras randômicas oferecidas pela SCM. Consideramos que o tamanho de um bucket (partição) tem o mesmo tamanho que o bloco físico da mídia SCM (linhas 3 4), visando evitar escritas randômicas desnecessárias na mídia. Usamos técnicas de compressão (linha 20) para armazenar mais tuplas em cada bucket. Assim, o algoritmo tende a apresentar menor frequen- 10
5 cia de situações de estouro de partição (transbordamento de memória). Estamos também analisando técnicas específicas que processam e comprimem várias tuplas adjacentes de uma só vez, reduzindo o custo de compressão (CPU e Overhead de Espaço) [Abadi et al. 2006]. Listing 2. Métodos Auxiliares. Listing 1. Algoritmo SCM Join. 1 Begin 2 BufferMap. a l o c a ( ) ; 3 p a r t i c i o n a (R) ; 4 p a r t i c i o n a ( S ) ; 5 For t u p l a R in BktR ( i ) de R loop 6 For t u p l a S in BktS ( i ) de S loop 7 if ( t u p l a R. a t r J u n c a o = 8 t u p l a S. a t r J u n c a o ) then 9 Pipe ( tuplar, t u p l a S ) ; 10 end i f ; 11 end loop ; 12 end loop ; 13 End ; 14 Procedure p a r t i c i o n a ( t a b e l a ) Begin 15 For t u p l a T in t a b e l a loop 16 p a r t i c a o := hash ( t u p l a. a t r J u n c a o ) ; 17 If o v e r f l o w ( p a r t i c a o ) then 18 d e s c a r r e g a ( p a r t i c a o ) ; 19 else 20 tuplacomp := compactar ( t u p l a ) ; 21 i n s e r e T u p l a P a r t i c a o ( tuplacomp, p a r t i c a o ) ; 22 end i f ; 23 end loop ; 24 End p a r t i c i o n a ; 25 Procedure d e s c a r r e g a ( b u c k e t ) Begin 26 BufferMap. a t u a l i z a ( b u c k e t ) ; 27 g r a v a B u c k e t ( b u c k e t ) ; 28 End d e s c a r r e g a ; Necessitamos de uma estrutura de mapeamento auxiliar no controle do estouro de buckets (linhas 25 28). Sempre que isto ocorre o bucket é então descarregado para o disco e a estrutura de mapeamento é atualizada para mapear corretamente os buckets que estão em disco e os buckets que estão em memória. A estrutura de mapeamento possui 3 campos: o endereço físico do bloco para onde foi descarregado o bucket na mídia SCM, o ID do bucket e um indicador que informa se o bucket está ou não armazenado em memória principal. Forma-se assim uma espécie de lista de buckets que sofreram transbordamento de memória. Esta estrutura pode ser perfeitamente implementada como uma tabela hash, valendo-se, naturalmente, da velocidade de acesso randômico da mídia SCM. A comparação das tuplas compactadas se faz sem a necessidade de prévia descompactação (linhas 7 8), seguindo [Graefe and Shapiro 1991]. Quanto ao modelo de custos, sugerimos ser levado em consideração o uso de compressão de dados no algoritmo e de um componente de custo para páginas escritas, adicional ao tradicional páginas transferidas do disco. Dever-se-ia ser também atribuído um peso maior para as páginas escritas (i) quando não houver pipeline, e (ii) quando for necessário a materialização de resultados intermediários. Uma forma de mitigar o problema das escritas ocasionadas pela geração dos resultados intermediários seria através da estratégia Late Materialization [Tsirogiannis et al. 2009]. Entretanto, é importante ressaltar que o uso desta abordagem pode gerar impactos na geração dos planos de execução. Analisaremos a viabilidade deste modelo, bem como realizaremos experimentos para gerar indícios necessários à comprovação destas hipóteses. A nossa escolha pelo algoritmo hash Join deveu-se a este ser um algoritmo clássico já presente na grande maioria dos SGBDs comerciais, o que poderia facilitar a sua adaptação para o contexto da mídia SCM. Ressaltamos que os demais algoritmos (p.e., nested-loop, merge) poderiam também obter benefícios quando adaptados para SCM. 3. Trabalhos Relacionados na Área Em [Graefe et al. 2010], foram idealizados dois operadores (flash scan e flash join) que operam em mídia SCM, porém além da abordagem limitar-se apenas ao uso do layout baseado em colunas, durante a execução da junção é gerado um índice temporário, 11
6 o que pode ocasionar prejuízos no desempenho devido às escritas adicionais. Esse modo de operação pode ocasionar mais escritas na mídia SCM, fazendo com que o desempenho seja degradado quanto maior for o tamanho das relações participantes na junção, não apresentando bom desempenho para predicados de baixa seletividade. Em [Tsirogiannis et al. 2009], discute-se estruturas de dados que aproveitam a baixa latência de leitura dos SSDs para acelerar as operações de seleção, projeção e junção. Estas estruturas utilizam o layout baseado em colunas aliado à menor granularidade da unidade de leitura (páginas) dos SSDs para aumentar o desempenho das consultas. Em [Do and Patel 2009], são revistas algumas das principais lições aprendidas, nas últimas três décadas, relacionadas ao projeto de algoritmos utilizados em projetos de banco de dados. Este trabalho gera indícios de que muitas técnicas já utilizadas em HDDs podem ser reaproveitadas em SSDs, mesmo que devido a motivações diferentes. Como exemplo, podemos citar a E/S baseada em blocos, muito utilizada nos HDDs, e que também se faz de fundamental importância nos dispositivos SSDs. Em [Clementsen and He 2010] existem técnicas de grande relevância para o desenvolvimento deste trabalho, voltadas para aspectos de particionamento vertical e para a otimização de técnicas de Hashing. 4. Estado Atual do Trabalho Atualmente estamos aprimorando a proposta através da realização de experimentos com outros SGBDs (Oracle e PostgreSql), visando observar o comportamento dos algoritmos de junção clássicos quando estes são executados sobre dados armazenados em SCM. Adicionalmente, estamos estudando a incorporação do SCM Join no PostgreSql de modo a realizarmos os experimentos comparativos e a avaliação dos resultados. References Abadi, D. J., Madden, S., and Ferreira, M. (2006). Integrating compression and execution in column-oriented database systems. In Chaudhuri, S., Hristidis, V., and Polyzotis, N., editors, SIGMOD Conference, pages ACM. Clementsen, D. S. and He, Z. (2010). Vertical partitioning for flash and hdd database systems. J. Syst. Softw., 83(11): Do, J. and Patel, J. M. (2009). Join processing for flash ssds: remembering past lessons. In Proceedings of the Fifth International Workshop on Data Management on New Hardware, DaMoN 09, pages 1 8, New York, NY, USA. ACM. Graefe, G., Harizopoulos, S., Kuno, H. A., Shah, M. A., Tsirogiannis, D., and Wiener, J. L. (2010). Designing database operators for flash-enabled memory hierarchies. IEEE Data Eng. Bull., 33(4): Graefe, G. and Shapiro, L. D. (1991). Data compression and database performance. In In Proc. ACM/IEEE-CS Symp. On Applied Computing, pages Nath, S. and Kansal, A. (2007). Flashdb: dynamic self-tuning database for nand flash. In Abdelzaher, T. F., Guibas, L. J., and Welsh, M., editors, IPSN, pages ACM. Tsirogiannis, D., Harizopoulos, S., Shah, M. A., Wiener, J. L., and Graefe, G. (2009). Query processing techniques for solid state drives. In Çetintemel, U., Zdonik, S. B., Kossmann, D., and Tatbul, N., editors, SIGMOD Conference, pages ACM. 12
4 Implementação e Resultados Experimentais
4 Implementação e Resultados Experimentais Com o objetivo de fazer a criação automática de visões materializadas, ou seja, prover uma solução on-the-fly para o problema de seleção de visões materializadas,
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário
Leia maisO hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware
1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador
Leia maisTRABALHO COM GRANDES MONTAGENS
Texto Técnico 005/2013 TRABALHO COM GRANDES MONTAGENS Parte 05 0 Vamos finalizar o tema Trabalho com Grandes Montagens apresentando os melhores recursos e configurações de hardware para otimizar a abertura
Leia maisA memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande
A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada
Leia maisEstruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa 10.1.4217
Estruturas de Armazenamento e Indexação Rafael Lage Moreira Barbosa 10.1.4217 Estruturas de Armazenamento Banco de Dados são armazenados fisicamente como arquivos de registro, que em geral ficam em discos
Leia maisArquitetura de Computadores. Sistemas Operacionais IV
Arquitetura de Computadores Sistemas Operacionais IV Introdução Multiprogramação implica em manter-se vários processos na memória. Memória necessita ser alocada de forma eficiente para permitir o máximo
Leia maisDisciplina: Introdução à Informática Profª Érica Barcelos
Disciplina: Introdução à Informática Profª Érica Barcelos CAPÍTULO 4 1. ARQUITETURA DO COMPUTADOR- HARDWARE Todos os componentes físicos constituídos de circuitos eletrônicos interligados são chamados
Leia maisSCM-BT 2 : Uma ferramenta para avaliação e ajuste de políticas de buffer no contexto da mídia SCM
SCM-BT 2 : Uma ferramenta para avaliação e ajuste de políticas de buffer no contexto da mídia SCM Júlio A. Tavares 1, José de Aguiar Moraes Filho 1, Angelo Brayner 1, Saulo Medeiros 1 1 Programa de Pós-Graduação
Leia maisExercícios de revisão V2. FAT: 300 GB / 2KB = 150MB X 8 bytes (64 bits / 8) = 1.2GB
Exercícios de revisão V2 1 Uma empresa que possui partições FAT em seus servidores, estava impressionada com um processo em específico na memória, onde o mesmo ocupava um espaço grande. Este servidor dedicado
Leia maisLINGUAGEM DE BANCO DE DADOS
LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados
Leia maisMemória Cache. Prof. Leonardo Barreto Campos 1
Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.
Leia maisItinerários de Ônibus Relatório Final
CENTRO UNIVERSITÁRIO SENAC Itinerários de Ônibus Relatório Final Grupo 5 Caio Roque Daniel Nunes Elise Roese José Caneiro Marcos Grignani São Paulo Junho de 2007 1 ÍNDICE 1. Introdução... 3 2. Desenvolvimento...
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Professor: João Fábio de Oliveira jfabio@amprnet.org.br (41) 9911-3030 Objetivo: Apresentar o que são os Sistemas Operacionais, seu funcionamento, o que eles fazem,
Leia maisProcessamento e Otimização de Consultas
Introdução Processamento e Banco de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM 1 Processamento
Leia maisOrganização de Computadores
Organização de Computadores Marcelo Lobosco DCC/UFJF Avaliando e Compreendendo o Desempenho Aula 09 Agenda Avaliando e Compreendendo o Desempenho Introdução Definindo Desempenho Medindo o Desempenho Desempenho
Leia maisORGANIZAÇÃO DE COMPUTADORES MÓDULO 10
ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10 Índice 1. A Organização do Computador - Continuação...3 1.1. Memória Primária - II... 3 1.1.1. Memória cache... 3 1.2. Memória Secundária... 3 1.2.1. Hierarquias de
Leia maisCapacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB
Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha
Leia mais3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:
Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de
Leia maisNotas da Aula 17 - Fundamentos de Sistemas Operacionais
Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.
Leia maisComunicação Fim-a-Fim a Alta Vede em Redes Gigabit
Outros trabalhos em: www.projetoderedes.com.br Comunicação Fim-a-Fim a Alta Vede em Redes Gigabit DaniloM.Taveira, Igor M. Moraes, Daniel de O.Cunha RafaelP.Laufer, Marco D. D. Bicudo, Miguel E. M. Campista,
Leia maisArquiteturas RISC. (Reduced Instructions Set Computers)
Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina
Leia mais1 http://www.google.com
1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou
Leia maisMemória cache. Prof. Francisco Adelton
Memória cache Prof. Francisco Adelton Memória Cache Seu uso visa obter uma velocidade de acesso à memória próxima da velocidade das memórias mais rápidas e, ao mesmo tempo, disponibilizar no sistema uma
Leia maisIntrodução a Informática. Prof.: Roberto Franciscatto
Introdução a Informática Prof.: Roberto Franciscatto 2.1 CONCEITO DE BIT O computador só pode identificar a informação através de sua elementar e restrita capacidade de distinguir entre dois estados: 0
Leia maisO que é RAID? Tipos de RAID:
O que é RAID? RAID é a sigla para Redundant Array of Independent Disks. É um conjunto de HD's que funcionam como se fosse um só, isso quer dizer que permite uma tolerância alta contra falhas, pois se um
Leia maisProf. Daniela Barreiro Claro
Prof. Daniela Barreiro Claro SQL, SQL3 e OQL são linguagens declarativas O SGBD deve processar e otimizar estas consultas antes delas serem efetivamente executadas Uma consulta possui muitas estratégias
Leia maisXDOC. Solução otimizada para armazenamento e recuperação de documentos
XDOC Solução otimizada para armazenamento e recuperação de documentos ObJetivo Principal O Que você ACHA De ter Disponível Online todos OS Documentos emitidos por SUA empresa em UMA intranet OU Mesmo NA
Leia maisMÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS
MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS Quando falamos em arquitetura, normalmente utilizamos esse termo para referenciar a forma como os aplicativos computacionais são estruturados e os hardwares
Leia maisFundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Sistema de Arquivos - II Prof. Galvez Implementação de Arquivos Arquivos são implementados através da criação, para cada arquivo no sistema, de uma estrutura de dados
Leia maisIntrodução à Computação: Sistemas de Computação
Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
Leia maisGerenciamento de Memória
Gerenciamento de Memória Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Tópicos Introdução Alocação Contígua
Leia maisAULA 5 Sistemas Operacionais
AULA 5 Sistemas Operacionais Disciplina: Introdução à Informática Professora: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Sistemas Operacionais Conteúdo: Partições Formatação Fragmentação Gerenciamento
Leia maisROM e RAM. Memórias 23/11/2015
ROM e RAM Memórias Prof. Fabrício Alessi Steinmacher. Para que o processador possa executar suas tarefas, ele busca na memória todas as informações necessárias ao processamento. Nos computadores as memórias
Leia maiswww.leitejunior.com.br 29/06/2012 14:30 Leite Júnior QUESTÕES CESPE BACKUP
QUESTÕES CESPE BACKUP QUESTÃO 01 - Analise as seguintes afirmações relativas a cópias de segurança. I. No Windows é possível fazer automaticamente um backup, em um servidor de rede, dos arquivos que estão
Leia maisCapítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho
20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam
Leia maisComparativo de desempenho do Pervasive PSQL v11
Comparativo de desempenho do Pervasive PSQL v11 Um artigo Pervasive PSQL Setembro de 2010 Conteúdo Resumo executivo... 3 O impacto das novas arquiteturas de hardware nos aplicativos... 3 O projeto do Pervasive
Leia maisBancos de Dados Paralelos. Alunos: ALLAN ROGER BELLO WILLIAN DIAS TAMAGI
Bancos de Dados Paralelos Alunos: ALLAN ROGER BELLO WILLIAN DIAS TAMAGI INTRODUÇÃO (SGBD) Sistema Gerenciador de Banco de Dados é um software que permite criar, manter e manipular bancos de dados para
Leia maisArquitetura de Banco de Dados
Arquitetura de Banco de Dados Daniela Barreiro Claro MAT A60 DCC/IM/UFBA Arquitetura de Banco de dados Final de 1972, ANSI/X3/SPARC estabeleceram o relatório final do STUDY GROUP Objetivos do Study Group
Leia maisProf. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO
Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.
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 maisPROCEDIMENTOS METODOLÓGICOS
DEFINIÇÃO DE AMBIENTE COMPUTACIONAL DE ALTO DESEMPENHO PARA MINERAÇÃO DE INFORMAÇÃO EM BANCO DE DADOS ASTRONÔMICOS Murilo Moritz Parize 1 ; Marcelo Massocco Cendron 2 INTRODUÇÃO Com grandes avanços na
Leia maisAula 26: Arquiteturas RISC vs. CISC
Aula 26: Arquiteturas RISC vs CISC Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Arquiteturas RISC vs CISC FAC 1 / 33 Revisão Diego Passos
Leia maisConteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo
Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de
Leia maisARQUITETURA DE COMPUTADORES - 1866
6.7 Operações com as Memórias: Já sabemos, conforme anteriormente citado, que é possível realizar duas operações em uma memória: Escrita (write) armazenar informações na memória; Leitura (read) recuperar
Leia maisPossui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis.
3. Tabelas de Hash As tabelas de hash são um tipo de estruturação para o armazenamento de informação, de uma forma extremamente simples, fácil de se implementar e intuitiva de se organizar grandes quantidades
Leia maisTecnologia da Informação. Prof Odilon Zappe Jr
Tecnologia da Informação Prof Odilon Zappe Jr Conceitos básicos de informática O que é informática? Informática pode ser considerada como significando informação automática, ou seja, a utilização de métodos
Leia maisIntrodução à Computação: Arquitetura von Neumann
Introdução à Computação: Arquitetura von Neumann Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
Leia maisOrganização e Arquitetura de Computadores
Organização e Arquitetura de Computadores MemóriaVirtual Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Gerência de memória convencional Divide um programa em unidades menores Partes
Leia maisSistemas Operacionais Gerência de Dispositivos
Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Gerência de Dispositivos Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução A gerência
Leia maisMemórias Prof. Galvez Gonçalves
Arquitetura e Organização de Computadores 1 s Prof. Galvez Gonçalves Objetivo: Compreender os tipos de memória e como elas são acionadas nos sistemas computacionais modernos. INTRODUÇÃO Nas aulas anteriores
Leia maisBRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:
BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma
Leia maisProf. Esp. Lucas Cruz
Prof. Esp. Lucas Cruz O hardware é qualquer tipo de equipamento eletrônico utilizado para processar dados e informações e tem como função principal receber dados de entrada, processar dados de um usuário
Leia maisO servidor de banco de dados ORACLE corporativo da empresa deve possuir a seguinte especificação mínima:
ICOL Instruções para Instalação - ORACLE 1. Introdução Esse documento contém as instruções para instalação da aplicação ICOL na estrutura de máquinas da empresa cliente. No caso, estão descritos os procedimentos
Leia mais6 Construção de Cenários
6 Construção de Cenários Neste capítulo será mostrada a metodologia utilizada para mensuração dos parâmetros estocásticos (ou incertos) e construção dos cenários com respectivas probabilidades de ocorrência.
Leia maisORGANIZAÇÃO DE COMPUTADORES MÓDULO 8
ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 Índice 1. A Organização do Computador - Continuação...3 1.1. Processadores - II... 3 1.1.1. Princípios de projeto para computadores modernos... 3 1.1.2. Paralelismo...
Leia maisSistemas Operacionais
Sistemas Operacionais SISTEMAS DE ARQUIVOS MACHADO/MAIA: CAPÍTULO 11 Prof. Pedro Luís Antonelli Anhanguera Educacional SISTEMAS DE ARQUIVOS - INTRODUÇÃO O armazenamento e a recuperação de informações é
Leia maisTecnologia de armazenamento Intel (Intel RST) RAID 0, 1, 5, 10, Matrix RAID, RAID -Pronto
Tecnologia de armazenamento Intel (Intel RST) RAID 0, 1, 5, 10, Matrix RAID, RAID -Pronto RAID 0 (striping) RAID 0 utiliza os recursos de leitura/gravação duas ou mais unidades de disco trabalhando em
Leia maisBARRAMENTO DO SISTEMA
BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade
Leia maisIntrodução a Informática. Prof.: Roberto Franciscatto
Introdução a Informática Prof.: Roberto Franciscatto 3.1 EXECUÇÃO DAS INSTRUÇÕES A UCP tem duas seções: Unidade de Controle Unidade Lógica e Aritmética Um programa se caracteriza por: uma série de instruções
Leia maisGuilherme Pina Cardim. Relatório de Sistemas Operacionais I
Guilherme Pina Cardim Relatório de Sistemas Operacionais I Presidente Prudente - SP, Brasil 30 de junho de 2010 Guilherme Pina Cardim Relatório de Sistemas Operacionais I Pesquisa para descobrir as diferenças
Leia maisSistemas Operacionais
Sistemas Operacionais Gerenciamento de Memória Norton Trevisan Roman Marcelo Morandini Jó Ueyama Apostila baseada nos trabalhos de Kalinka Castelo Branco, Antônio Carlos Sementille, Paula Prata e nas transparências
Leia maisDisciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto
Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos
Leia maisGerência de Memória. Paginação
Gerência de Memória Paginação Endereçamento Virtual (1) O programa usa endereços virtuais É necessário HW para traduzir cada endereço virtual em endereço físico MMU: Memory Management Unit Normalmente
Leia maisBanco de Dados I 2007. Módulo V: Indexação em Banco de Dados. (Aulas 1, 2 e 3) Clodis Boscarioli
Banco de Dados I 2007 Módulo V: Indexação em Banco de Dados (Aulas 1, 2 e 3) Clodis Boscarioli Agenda: Estruturas de Índices; Conceitos; Tipos de Índices: Primários; Secundários; Clustering; Multiníveis;
Leia maisSoftware. LMP Wizard. Manual do usuário MAN-PT-DE-LMPWizard-01.01_12
Software LMP Wizard LMP Wizard Manual do usuário MAN-PT-DE-LMPWizard-01.01_12 Introdução Obrigado por ter escolhido o software LMP Wizard. Para garantir o uso correto e eficiente, é imprescindível a leitura
Leia maisMódulo 15 Resumo. Módulo I Cultura da Informação
Módulo 15 Resumo Neste módulo vamos dar uma explanação geral sobre os pontos que foram trabalhados ao longo desta disciplina. Os pontos abordados nesta disciplina foram: Fundamentos teóricos de sistemas
Leia maisVisão Geral de Sistemas Operacionais
Visão Geral de Sistemas Operacionais Sumário Um sistema operacional é um intermediário entre usuários e o hardware do computador. Desta forma, o usuário pode executar programas de forma conveniente e eficiente.
Leia maisARQUITETURA DE COMPUTADORES
1 ARQUITETURA DE COMPUTADORES U C P Prof. Leandro Coelho Plano de Aula 2 Aula Passada Definição Evolução dos Computadores Histórico Modelo de Von-Neumann Básico CPU Mémoria E/S Barramentos Plano de Aula
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias
Leia maisGerência de Memória RAM em Computadores com Mais de 4GB O sistema Windows x86 (32bits) não tem capacidade de reconhecer, fisicamente, mais que 3,X GB de RAM, a não ser que seja ativado, manualmente, o
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisPROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às
Leia mais7.Conclusão e Trabalhos Futuros
7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização
Leia maisÁrvores B. Hashing. Estrutura de Dados II Jairo Francisco de Souza
Árvores B Hashing Estrutura de Dados II Jairo Francisco de Souza Hashing para arquivos extensíveis Todos os métodos anteriores previam tamanho fixo para alocação das chaves. Existem várias técnicas propostas
Leia maisHIBERNATE EM APLICAÇÃO JAVA WEB
HIBERNATE EM APLICAÇÃO JAVA WEB Raul Victtor Barbosa Claudino¹, Ricardo Ribeiro Rufino¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil victtor.claudino@gmail.com, ricardo@unipar.br Resumo: Este
Leia maisMemória Virtual. Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto
Memória Virtual Prof Dr José Luís Zem Prof Dr Renato Kraide Soffner Prof Ms Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Tópicos Introdução Espaço de Endereçamento Virtual
Leia maisAULA4: PROCESSADORES. Figura 1 Processadores Intel e AMD.
AULA4: PROCESSADORES 1. OBJETIVO Figura 1 Processadores Intel e AMD. Conhecer as funcionalidades dos processadores nos computadores trabalhando suas principais características e aplicações. 2. INTRODUÇÃO
Leia maisATIVIDADES DE LINHA E DE ASSESSORIA
1 ATIVIDADES DE LINHA E DE ASSESSORIA SUMÁRIO Introdução... 01 1. Diferenciação das Atividades de Linha e Assessoria... 02 2. Autoridade de Linha... 03 3. Autoridade de Assessoria... 04 4. A Atuação da
Leia maisConceitos e Gerenciamento de Memória
Conceitos e Gerenciamento de Memória Introdução à Ciência da Computação Professor Rodrigo Mafort O que é memória? Dispositivos que permitem armazenar dados temporariamente ou definitivamente. A unidade
Leia maisAdmistração de Redes de Computadores (ARC)
Admistração de Redes de Computadores (ARC) Instituto Federal de Educação, Ciência e Tecnologia de Santa Catarina - Campus São José Prof. Glauco Cardozo glauco.cardozo@ifsc.edu.br RAID é a sigla para Redundant
Leia maisFunções de Posicionamento para Controle de Eixos
Funções de Posicionamento para Controle de Eixos Resumo Atualmente muitos Controladores Programáveis (CPs) classificados como de pequeno porte possuem, integrados em um único invólucro, uma densidade significativa
Leia maisENGENHARIA DE SOFTWARE DESENVOLVIMENTO EM CAMADAS
ENGENHARIA DE SOFTWARE DESENVOLVIMENTO EM CAMADAS Uma estrutura para um projeto arquitetural de software pode ser elaborada usando camadas e partições. Uma camada é um subsistema que adiciona valor a subsistemas
Leia maisPROPOSTA COMERCIAL CLOUD SERVER
PROPOSTA COMERCIAL CLOUD SERVER Sobre a AbsamHost A AbsamHost atua no mercado de hosting desde 2008, fornecendo infraestrutura de data center a diversas empresas no Brasil e no mundo. Focada em servidores
Leia maisMRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior
MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de
Leia maisTais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.
Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:
Leia maisSISTEMA DE ARQUIVOS. Instrutor: Mawro Klinger
SISTEMA DE ARQUIVOS Instrutor: Mawro Klinger Estrutura dos Discos As informações digitais, quer sejam programas ou dados do usuário, são gravadas em unidades de armazenamento. O HD é uma unidade de armazenamento
Leia maisRESPOSTA AO QUESTIONAMENTO FORMULADO POR EMPRESA INTERESSADA NO CERTAME.
RESPOSTA AO QUESTIONAMENTO FORMULADO POR EMPRESA INTERESSADA NO CERTAME. Brasília, 10 de fevereiro de 2010. Pregão n 062/2009 Lote 1: Lote 2: Operação, Gerenciamento de Redes, Servidores, Storage & Archive,
Leia maisComponentes básicos de um sistema computacional. Cap. 1 (Stallings)
Componentes básicos de um sistema computacional Cap. 1 (Stallings) 1 Sistema de Operação Explora recursos de hardware de um ou mais processadores Provê um conjunto de serviços aos utilizadores Gerencia
Leia maisFerramentas unificadas de SOA alinham negócios e TI IDG Research aponta grandes ganhos potenciais a partir de uma solução integrada
Insight completo sobre IDG/Oracle Relatório de pesquisa de SOA Ferramentas unificadas de SOA alinham negócios e TI IDG Research aponta grandes ganhos potenciais a partir de uma solução integrada Alinhamento
Leia maisMódulo 4. Construindo uma solução OLAP
Módulo 4. Construindo uma solução OLAP Objetivos Diferenciar as diversas formas de armazenamento Compreender o que é e como definir a porcentagem de agregação Conhecer a possibilidade da utilização de
Leia maisInformática. Aulas: 01 e 02/12. Prof. Márcio Hollweg. www.conquistadeconcurso.com.br. Visite o Portal dos Concursos Públicos WWW.CURSOAPROVACAO.COM.
Informática Aulas: 01 e 02/12 Prof. Márcio Hollweg UMA PARCERIA Visite o Portal dos Concursos Públicos WWW.CURSOAPROVACAO.COM.BR Visite a loja virtual www.conquistadeconcurso.com.br MATERIAL DIDÁTICO EXCLUSIVO
Leia maisPrevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki
Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável
Leia maisProcesso de Controle das Reposições da loja
Processo de Controle das Reposições da loja Getway 2015 Processo de Reposição de Mercadorias Manual Processo de Reposição de Mercadorias. O processo de reposição de mercadorias para o Profit foi definido
Leia maisTabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008
Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,
Leia maisJunções e Índices em Tabelas
Junções e Índices em Tabelas Prof. Fernanda Baião fernanda.baiao@uniriotec.com.br SGBD Considerados MySQL (http://www.mysql.org) SGBD gratuito e simples, sem muitos recursos avançados Fácil de instalar
Leia maisTuning e Self-Tuning de Bancos de Dados
Tuning e Self-Tuning de Bancos de Dados Dr. José Maria Monteiro Universidade de Fortaleza (UNIFOR) monteiro@unifor.br Secretaria da Fazenda do Estado do Ceará Sefaz-CE monteiro@sefaz.ce.gov.br 1 Self-Tuning
Leia maisIntrodução a Banco de Dados Aula 03. Prof. Silvestri www.eduardosilvestri.com.br
Introdução a Banco de Dados Aula 03 Prof. Silvestri www.eduardosilvestri.com.br Arquiteturas de Banco de Dados Arquiteturas de BD - Introdução Atualmente, devem-se considerar alguns aspectos relevantes
Leia maisEstratégia de TI. Posicionamento Estratégico da TI: como atingir o alinhamento com o negócio. Conhecimento em Tecnologia da Informação
Conhecimento em Tecnologia da Informação Conhecimento em Tecnologia da Informação Estratégia de TI Posicionamento Estratégico da TI: como atingir o alinhamento com o negócio 2011 Bridge Consulting Apresentação
Leia maisO que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional
O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais Laboratório de Sistemas Operacionais Aula 1 Flávia Maristela (flavia@flaviamaristela.com) Tudo o que já vimos antes... Introdução
Leia mais