EA960 Redundância e Confiabilidade: RAID



Documentos relacionados
RAID Redundat Arrays of Inexpensive Disks

Sistemas Operacionais

RAID. Propõe o aumento da confiabilidade e desempenho do armazenamento em disco. RAID (Redundant Array of Independent Disks )

O que é RAID? Tipos de RAID:

Admistração de Redes de Computadores (ARC)

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Memória Secundária. Prof. Valeria M. Bastos 18/06/2012 Prof. Antonio Carlos Gay Thomé

Sistemas de armazenamento

RAID 1. RAID 0 2. RAID 1

Sistemas Operacionais Gerência de Dispositivos

Tópicos Especiais em Informática

Sistemas Operacionais

Programador/a de Informática

Setores Trilhas. Espaço entre setores Espaço entre trilhas

Dispositivos de Armazenamento em massa. José Roberto B. Gimenez

Infraestrutura de Hardware. Entrada/Saída: Armazenamento

Sou o professor Danilo Augusto, do TIParaConcursos.net, e lá costumo trabalhar temas relacionados a Redes de Computadores e Sistemas Operacionais.

AVALIAÇÃO À DISTÂNCIA 1 GABARITO

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Repositório Estável. Raul Ceretta Nunes

Tecnologia de armazenamento Intel (Intel RST) RAID 0, 1, 5, 10, Matrix RAID, RAID -Pronto

Dispositivos de Memória

Auditoria e Segurança de Sistemas Aula 03 Segurança off- line. Felipe S. L. G. Duarte Felipelageduarte+fatece@gmail.com

Níveis de RAID - RAID 0

Sistemas Tolerantes a Falhas

Memórias Prof. Galvez Gonçalves

Ministério da Educação Secretaria de Educação Profissional e Tecnológica Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I: MEMÓRIA EXTERNA RAÍ ALVES TAMARINDO RAI.TAMARINDO@UNIVASF.EDU.BR

Entrada e Saída. Prof. Leonardo Barreto Campos 1

RAID. Redundant Array of Independent Drives. Conjunto Redundante de Discos Independentes

Organização e Arquitetura de Computadores I

EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS

Conceitos Básicos. Conceitos Básicos Memória

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Memória Cache. Prof. Leonardo Barreto Campos 1

Sistemas de Armazenamento

Sistemas Operacionais: Sistema de Arquivos

Documentação sobre a Tecnologia RAID

Até que Ponto Seus Dados estão Seguros? Por Kris Land, CTO, diretor de tecnologia da InoStor Corp.

ARQUITETURA DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

Arquitetura e Organização de Computadores

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária

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

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

Armazenamento de Informação. André Zúquete, João Paulo Barraca SEGURANÇA INFORMÁTICA E NAS ORGANIZAÇÕES 1

Serial ATA (SATA - Serial Advanced Technology Attachment)

Disciplina: Introdução à Engenharia da Computação

Tópicos Especiais em Informática

TRABALHO COM GRANDES MONTAGENS

Organização de Computadores 1

SISTEMAS OPERACIONAIS

3. Arquitetura Básica do Computador

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Arquitetura e Organização de Computadores I

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

Márcio Leandro Moraes Rodrigues. Frame Relay

Comunicação de dados. Introdução

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

Arquitectura de Computadores II. Interface com Periféricos

Fundamentos de Sistemas Operacionais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

Engenharia de Software II

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Sistemas Operacionais. Prof. André Y. Kusumoto

Introdução à Organização de Computadores Memória Secundária

5 Entrada e Saída de Dados:

Introdução à Organização de Computadores Memória Secundária

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACKUP 101: PLANEJAMENTOS E FERRAMENTAS

RAID. História. Vantagens. Origem: Wikipédia, a enciclopédia livre.

O RAID foi proposto em 1988 por David A. Patterson, Garth A. Gibson e Randy H. Katz na publicação "Um

Leandro Ramos RAID.

ARQUITETURA DE COMPUTADORES

Comunicação Fim-a-Fim a Alta Vede em Redes Gigabit

Introdução ao GED Simone de Abreu

Backup. Permitir a recuperação de sistemas de arquivo inteiros de uma só vez. Backup é somente uma cópia idêntica de todos os dados do computador?

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 13

Manual AGENDA DE BACKUP

R S Q Tabela 17 - Tabela verdade NOR

Figura 1 - O computador

Capítulo 5 Gerência de Dispositivos

Organização Básica do Computador

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Introdução a Organização de Computadores Aula 4

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

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

Visão geral do sistema de armazenamento e hierarquia de memória

Dispositivos de Armazenamento

Estruturas do Sistema de Computação

ARQUITETURA DE COMPUTADORES Prof. João Inácio

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Concurso Público para provimento de cargo efetivo de Docentes. Edital 20/2015 CIÊNCIA DA COMPUTAÇÃO I Campus Rio Pomba

Sistema de Memórias de Computadores

Notas da Aula 16 - Fundamentos de Sistemas Operacionais

Transcrição:

EA960 Redundância e Confiabilidade: RAID Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato 1

Motivação Revisitando a lei de Amdahl: Um programa benchmark é executado durante 100 segundos, sendo que 90 s são gastos pela CPU e 10 s referem-se a operações de entrada-saída. Considere que o número de processadores dobre a cada dois anos, mas a velocidade de cada processador e o tempo de entrada-saída não se alteram. Qual o speedup observado ao final de seis anos? 2

Motivação Revisitando a lei de Amdahl: Após n anos Tempo de CPU (s) Tempo de entrada-saída (s) Tempo total (s) % do tempo consumido com entrada-saída 0 90 10 100 10% 2 90/2 = 45 10 55 18% 4 45/2 = 23 10 33 31% 6 23/2 = 11 10 21 47% Após 6 anos, o speedup no desempenho da CPU foi igual a 90/11 = 8 Contudo, o speedup no tempo total foi de apenas 100/21 = 4,7. Isso significa que a revolução do paralelismo precisa ser acompanhada de aprimoramentos nos mecanismos de entrada-saída. Um exemplo bastante claro desta necessidade está ligada aos discos magnéticos (unidades de armazenamento massivo). 3

Motivação Acelerar as operações de entrada-saída foi a motivação original dos arranjos de discos (disk arrays). Antigamente (anos 80-90), a opção vigente era em favor do uso de um único disco maior e mais caro, projetado de modo a assegurar um menor tempo médio para falhar (mean time to failure, MTTF). Alternativa: utilizar um número maior de discos menores. Expectativa: alcançar um desempenho superior. Argumento: já que várias cabeças de leitura/gravação estariam disponíveis, isso possibilitaria a realização de acessos independentes bem como de transferências de volumes maiores de dados espalhados nos vários discos. 4

Motivação O problema é que um arranjo de discos poderia deteriorar significativamente a confiabilidade. Vejamos isto através de um exemplo simples. Único disco probabilidade de falha: 4% Quatro discos probabilidade de falha (individual): 6% Se a informação for simplesmente espalhada pelos discos, basta que um deles falhe para que o sistema de armazenamento fique comprometido. P{pelo menos 1 falha de disco} = 1 P{nenhuma falha} = 1 0,94 4 = 21,9% 5

Motivação E se houvesse uma forma de conseguir recuperar a informação gravada mesmo quando um único disco do arranjo falhar? P{pelo menos 2 falhas de disco} = 6*p 2 (1-p) 2 + 4*p 3 (1-p) 3 + p 4 = 1,9% Sendo ainda mais otimista, e se conseguíssemos lidar com a falha de dois discos? P{pelo menos 3 falhas de disco} = 4*p 3 (1-p) 3 + p 4 = 0,08% 6

Motivação Para alcançar estes níveis de confiabilidade mais que desejáveis, é preciso explorar o conceito de redundância. Em outras palavras, não somente gravamos os dados, mas também informações extras que refletem o conteúdo efetivamente armazenado. Para contemplar a redundância, será necessário utilizar um número maior de discos no arranjo. No caso do exemplo anterior, teríamos ao menos um disco extra: P{pelo menos 2 falhas} = 10*p 2 (1-p) 3 + 10*p 3 (1-p) 2 + 5*p 4 (1-p) + p 5 = 3,1% 7

Portanto, confiabilidade se tornou mais rentável por meio da construção de um arranjo de discos menores e mais baratos contendo algum mecanismo de redundância. Esta abordagem deu origem ao termo RAID (originalmente, redundant array of inexpensive disks; posteriormente, redundant array of independent disks). Ideias centrais: RAID é um conjunto de unidades de discos físicos, o qual é visto pelo sistema operacional como uma única unidade lógica de armazenamento. Os dados são distribuídos pelos discos físicos do array segundo uma técnica denominada striping. A redundância é usada para armazenar informações codificadas (e.g., de paridade), o que possibilita a recuperação dos dados no caso de uma falha de disco. 8

Resumo: 9

RAID 0: Simplesmente espalhar os dados pelos vários discos (striping) acaba por forçar o acesso a alguns ou todos eles. Vantagem: se duas solicitações de entradasaída diferentes necessitam acessar blocos de dados armazenados em discos distintos, ambas podem ser atendidas em paralelo. 10

RAID 1: Espelhamento (mirroring ou shadowing): toda vez que um dado precisa ser escrito em um disco, ele também é gravado em um disco redundante, de modo que sempre há duas cópias da informação. Assim, se um disco falhar, basta procurar em seu espelho que o dado desejado pode ser recuperado. Opção cara: número de discos é o dobro do RAID 0. 11

RAID 2: não é utilizado na prática (custo não compensa) Um código de correção de erro é computado para os bits em cada disco de dados, e os bits do código são armazenados nas respectivas posições nos vários discos de paridade. Opção: código de Hamming capaz de corrigir erros de um único bit e detectar erros em dois bits. Funcionamento: Em uma única leitura, todos os discos são acessados simultaneamente. Os dados solicitados e o código de correção de erro são entregues ao controlador do array. Se houver um erro em um único bit, ele é capaz de identificar e de corrigir instantaneamente. Em uma única gravação, todos os discos de dados e de paridade precisam ser acessados. 12

RAID 3 (Bit-Interleaved Parity): Independentemente do tamanho do array, um único disco é usado para guardar as informações redundantes. Usualmente, um único bit de paridade é calculado para o conjunto de bits individuais na mesma posição em todos os discos de dados. Diferentemente do RAID 1, muitos discos precisam ser lidos para determinar o dado faltante. A hipótese que motiva esta técnica é a de que demorar mais para recuperar-se de uma falha, gastando, contudo, menos com armazenamento redundante constitui um bom trade-off. 13

RAID 3 (Bit-Interleaved Parity): Considere um array de cinco unidades, em que X0 a X3 guardam os dados e X4 é o disco de paridade. X 4( i) X 3( i) X 2( i) X1( i) X 0( i) Como recuperar a informação se X2 falhou? Se adicionarmos o OU-exclusivo entre X4(i) que é o bit de paridade e X2(i) que é o bit que falhou, nos dois lados da equação acima, obtemos: X 2( i) X 4( i) X 3( i) X1( i) X 0( i) 14

RAID 4 (Block-Interleaved Parity): Utiliza a mesma razão de discos de dados e de checagem que o RAID 3. Uma diferença importante está na forma com que a informação redundante é atualizada por causa de uma operação de escrita. Somente atualizamos as posições que tiveram seus conteúdos alterados em relação ao dado anteriormente armazenado. RAID 3 RAID 4 15

RAID 5 (Distributed Block-Interleaved Parity): O RAID 4 possuía uma desvantagem: o disco de paridade precisava ser atualizado em todas as operações de escrita. Isto caracteriza um potencial gargalo para o desempenho do sistema. Proposta: espalhar os bits/blocos de paridade por todos os discos. Isto é, a informação redundante é armazenada nos mesmos discos que os dados. Esta organização permite que múltiplas operações de escrita ocorram simultaneamente desde que os blocos de paridade não estejam localizados no mesmo disco. 16

RAID 5 (Distributed Block-Interleaved Parity): RAID 4 RAID 5 Uma operação de escrita no bloco 8 deve acessar seu bloco de paridade em P2, usando, portanto, os discos 1 e 3. Uma segunda escrita no bloco 5 exigiria a atualização de P1, o que requer o acesso aos discos 2 e 4. 17

RAID 6 (P + Q Redundancy): Dois cálculos de paridade diferentes são executados e armazenados em blocos separados em discos diferentes. Um array baseado em RAID 6 usa N discos para armazenamento dos dados e mais dois discos extras para paridade. Vantagem: possibilidade de corrigir até dois erros. 18

Considerações Finais As estratégias de RAID são amplamente empregadas em servidores. Possíveis preocupações: O array deve ser projetado de modo a permitir que discos com falhas sejam substituídos durante a operação do sistema (hot-swapping disks). Isto, porém, impõe algumas restrições físicas e elétricas para o arranjo e para as interfaces dos discos. Nem sempre a suposição de independência dos discos no tocante às falhas é verdadeira. Múltiplas falhas podem ocorrer devido (1) ao aumento no número de discos no array e (2) ao crescimento da capacidade dos discos. 19

Créditos Figuras extraídas de D. A. Patterson e J. L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, Morgan Kauffman, 5ª edição, 2013, e de W. Stallings, Arquitetura e Organização de Computadores, Pearson, 8ª edição, 2010. http://textbooks.elsevier.com/web/product_details.aspx?isbn=9780124077263 20