Upload
carlos
View
2.246
Download
0
Embed Size (px)
DESCRIPTION
Trabalho sobre Estrutura de Armazenamento em massa, abordando apenas parte desse conteúdo. Feito por alunos da Universidade Federal de Goiás(UFG) do curso de Engenharia de Software.
Citation preview
Grupo CytherianBruno César Ribeiro e Silva
Bruno Pereira MaiaCarlos Alberto de Oliveira Júnior
Ciro Anacleto Dias JúniorDanilo Guimarães Justino Lemes
Gustavo Santana Leite
Estrutura de Armazenamento em Massa
Parte II
Roteiro
Estrutura RAID Conceitos Melhoria de Confiabilidade via Redundância Melhoria de Desempenho via Paralelismo Níveis Problemas com RAID Armazenamento estável Armazenamento terciário Dispositivos de armazenamento Suporte por parte do SO Aspectos de desempenho
RAID - Redundant Arrays of Inexpensive Disks
Melhoria no DesempenhoAmplia a taxa em que os dados podem ser lidos/escritos se os discos forem operados em paralelo.
Melhoria na ConfiabilidadeAmplia a confiabilidade do armazenamento de dados, já que podemos armazenar informações redundantes em vários discos
RAID - Redundant Arrays of Inexpensive Disks
RAID - Redundant Arrays of Independent Disks
redução no preço de discos mais robustos
RAID - EstruturaDiscos conectados diretamente aos seus barramentos
RAID implementado pelo sistema operacional ou software do sistema
Controlador de host inteligenteControlador de host controla vários discos e implementa o RAID
Array de Armazenamento (Array RAID)Unidade isolada, com seu próprio controlador, cache e discos. É conectado ao host por meio de um ou mais controladores SCSI ATA padrão ou FC. Permite que qualquer sistema operacional e software tenham discos protegidos por RAID.
Melhorias
Melhoria de Confiabilidade - via redundância
Melhoria de Desempenho - via paralelismo
ConfiabilidadeA chance de algum disco falhar dentre um conjunto de N discos é muito maior do que a chance de um único disco falhar.
Supondo: mttf1 = 100.000 horas
Array de 100 discos:
mttf1 = 100.000 horas / 100 = 1.000 horas = 41,66 dias
mttf = mean time to failure
RedundânciaArmazenar informações extras que podem ser usadas no caso de falha de algum disco para reconstruir informações perdidas.
Espelhamento (Mirroring)
1 Disco Lógico = 2 Discos Físicoscada escrita é executada nos dois discos.
Considerando a mesma situação anterior:
Array 100 discos com redundância mttf1 = 57.000 anos
ParalelismoCom o espelhamento de disco, as requisições de leitura podem ser enviadas a qualquer disco. Logo, a quantidade de leituras por unidade de tempo dobra.
Espalhamento em nível de bitdistribui os bits de cada byte por vários discos
Espalhamento em nível de blocoos blocos de um arquivo são espalhados por vários discos
RAID Nível 0: implementa um conjunto de discos independentes (striping), os dados são quebrados em blocos e cada bloco é escrito em um disco separado. A escrita e a leitura possuem alto desepenho por utilizarem vários canais e discos. Por outro lado não há segurança, pois se parte da informação armazenada em um disco corromper-se, a informação é perdida por completa.Não há calculo de paridade. Implementação fácil.
RAID Nível 1: refere-se ao espelhamento do disco com redundancia (mirror). Tudo que é gravado no disco, é regravado nos demais discos do conjunto. É utilizado como forma de backup.A desvantagem se dá ao tempo de escrita, que fica maior.
Estrutura RAID - Níveis
RAID Nível 2: refere-se ao uso do sistema de detecção de erros ECC. Porém o RAID 2 tornou-se obsoleto pelas novas tecnologias de disco já possuírem este tipo de correção internamente. RAID Nível 3: refere-se a um modelo melhorado do RAID nível 2, uma vez que usa menos discos para bits de correção de erros. Uma desvantagem é que o nivel 3 torna as escritas mais lentras, e uma vantagem, principalmente sobre o nível 1 é que, pois o armazenamento adicional é reduzido visto que um disco de paridade é necessário para vários discos normais, enquanto no nivel 1 é necessário um disco espelhado para cada disco normal.
Estrutura RAID - Níveis
RAID Nível 4: refere-se ao modelo com organização com paridade intercalada por blocos, utiliza o espalhamento no nível de bloco, como no RAID 0, e também mantém um bloco de paridade em um disco separado. Se um disco falhar, o bloco de paridade pode ser usado com os blocos correspondentes a partir dos outros discos para restaurar do disco que falhou.
Estrutura RAID - Níveis
Estrutura RAID - Níveis RAID Nível 5: refere-se ao modelo com paridade distribuida intercalada por blocos. Difere do nível 4 por espalhar os dados e a paridade entre todos os N+1 discos, em vez de armazenar dados em N discos e paridade em um disco.
RAID Nível 6: refere-se ao esquema de redundância P+Q, que é muito semelhante ao nível 5. A diferença é que este armazena informações reduntantes extras para proteger contra múltiplas falhas no disco. Ao invés de usar a paridade, são usados códigos mais sofisticados de correção de erro, como os códigos Reed-Solomon.
Estrutura RAID - Níveis
RAID 0 + 1: refere-se a uma combinação de níveis RAID 0 e 1. O RAID 0 provê desempenho, e o RAID 1 provê confiabilidade. Um conjunto de discos é espalhado, e em seguida, tudo isso é espelhado para um outro conjunto de discos equivalentes. Esse modelo é muito semelhante ao...
RAID 1 + 0: refere-se a uma combinação de níveis RAID 0 e 1, porém, os discos são primeiro espelhado em pares, e depois os pares de espelhos são espalhados.
Escolha de um nível RAID
Na escolha de um nível de RAID deve -se analisar as vantagens e desvantagens de cada nível de modo a determinar qual nível melhor se adapta à necessidade do usuário do sistema.As soluções RAID eleitas são geralmente o RAID de nível 1 e RAID de nível 5.
Escolha de um nível de RAID
A escolha de uma solução RAID está ligada a três critérios :A segurança : RAID 1 e 5 oferecem ambos um nível de segurança elevado, contudo o método de reconstrução dos discos varia entre as duas soluções. No caso de avaria do sistema, RAID 5 reconstrói o disco que falta a partir das informações armazenadas nos outros discos, enquanto RAID 1 opera com uma cópia disco a disco.Os desempenhos : RAID 1 oferece melhores desempenhos que RAID 5 em leitura, mas sofre no que diz respeito às operações de escrita.
Escolha de um nível de RAID
O custo: o custo está diretamente ligado à capacidade de armazenamento que se deseja para obter uma certa capacidade efetiva.A solução RAID 5 oferece um volume útil que representa 80 a 90% do volume atribuído (o resto serve evidentemente para o controle de erro). A solução RAID 1 oferece em contrapartida apenas um volume disponível, que representa 50% do volume total (já que as informações são duplicadas).
Escolha de um nível de RAID
Estrutura RAID - ProblemasNão impede que os discos falhem.
Altos custos.
Protege contra erros físicos da mídia, mas não outros erros de hardware ou software.
RAID implementado via software não apresenta um rendimento razoável.
RAID implementado via hardware é econômico, porém não é flexível.
Armazenamento estável
- Por definição: informações nunca são perdidas.- Implementação: replicar informações necessárias em diversos dispositivos de armazenamento, discos, com modos de falha independentes.- coordenar a escrita das atualizações para que uma falha não danifique todas as cópias e que, quando estiver se recuperando de uma falha, poderá forçar todas as cópias para um valor coerente e correto mesmo se houver outra falha durante a recuperação.
Armazenamento estável
Escrita em disco:
- Término bem-sucedido: dados foram escritos corretamente no disco. - Falha parcial: falha na mídia de trasferencia, somente alguns dos setores foram escritos com os novos dados, e o setor sendo escrito durante a falha pode ter sido adulterado. - Falha total: falha ocorre antes da escrita em disco ser iniciada, de modo que os dados anteriores no disco permanecessem intactos.
Armazenamento estável
- Sistema precisa manter dois blocos lógicos para que sempre que ocorrer uma falha durante a escrita de um bloco, o sistema possa detectar essa falha e chamar um procedimento de recuperação para restaurar o bloco a um estado coerente, da seguinte maneira: - escrevendo as informações no primeiro bloco físico. - quando a primeira escrita terminar com sucesso, escrever essa mesma informação no segundo bloco físico. - Após segunda escrita ser completada com sucesso, declara a operação completa.
Armazenamento estável
- Para que a escrita no armazenamento estável tenha sucesso completo ou resulte em nenhuma mudança é necessário um procedimento de recuperação. Durante a recuperação de uma falha, cada par de de blocos físicos são examinados e se ambos forem iguais e se detectar erro nenhuma outra ação será necessária, caso tenha erro substitui-se seu conteúdo pelo valor do outro bloco. Se o bloco não houver erro mas os blocos diferirem em conteúdo, substitui o conteúdo do primeiro bloco pelo valor do segundo.
- Os dados do armazenamento estável têm garantia de segurança, a menos que uma falha destrua todas as cópias.
Armazenamento estável
- Como a espera até que as escritas em disco se completem são demoradas, muitos arrays de armazenamento acrescentam uma NVRAM (tipo de memória que não perde seus dados mesmo sem a alimentação de energia) como cache.
- Como a memória não é volátil, pode-se confiar que ela armazenará os dados em rotina ao seu modo nos discos, assim ela é considerada parte do armazenamento estável.
Armazenamento terciário (estrutura)Baixo custo é a definição para armazenamento terciário. Exemplos são as mídias removíveis, CD's, DVD's, disquetes e discos.
Armazenamento terciário Discos removíveis:
É o tipo mais amplo de dispositivo de armazenamento terciário. Disquetes são exemplos, compostos de um fino disco flexível, coberto por um material magnético e envolvido em uma capa protetora. Não ultrapassam 1,5 megabytes de armazenamento.
O disco óptico-magnético é um tipo semelhante aos disquetes, mas se difere na forma de gravação dos dados. A agulha de gravação "voa" mais longe da superfície de gravação e o material magnético é envolto com plástico ou vidro, garantindo maior resistência física contra colisões.
Armazenamento terciário Discos removíveis: O disco óptico não usa magnetismo, mas sim um material que pode ter seu estado alterado com uma luz laser. Um exemplo de tecnologia que usa disco óptico é o disco de mudança de fase, que é coberto com um material que pode ter seu estado alterado, de cristalino para amorgo. O estado cristalino é mais transparente e um feixe de luz claro passa pelo material e atinge a camada relfexiva. A unidade de mudança de fase utiliza 3 potencias diferentes de laser, sendo a mais baixa pra ler os dados, a mediana para apagar o disco fundindo e congelando a mídia de gravação novamente para o estado cristalino e a potência mais alta para fundir a mídia para o estado amorfo, a fim de escrever no disco. Exemplos comuns são os discos CD-Rw e DVD-Rw.
Armazenamento terciário Discos removíveis: Os tipos de discos descritos anteriormente, podem ser utilizados indefinidamente (porém, há um limite, imposto por cada fabricante). Diferentemente, os discos WORM (Write once, read many times) podem ser escritos apenas uma vez.
Discos somente leitura, como CD-ROM e DVD-ROM, vêm de fábrica com os dados já gravados, como aúdio, programas e jogos. A maioria dos discos removíveis é mais lenta do que os não-removíveis. O processo de escrita é mais lento, assim como o de rotação, e as vezes, o tempo de busca também.
Armazenamento terciário Fitas: A fita magnética é outro tipo de mídia removível. A fita mantém mais dados do que um disco óptico. Possuem taxas de transferência similares, no entanto, o acesso aleatório à fita é muito mais lento do que uma busca em disco.Embora a unidade de fita seja mais cara do que um drive de CD/DVD, por exemplo, um cartucho de fita é mais barato do que vários discos, equivalentes em capacidade. Com isso, a fita é um meio mais economico para armazenar dados que nao exigem acesso aleatorio e constante. Atividades como o back-up e o armazenamento massivo de dados utilizados em pesquisas cientificas e por grandes empresas comerciais são exemplos de boa utilização das fitas magnéticas.
Armazenamento terciário Suporte por parte do SO:
"Vimos" que, para os discos rígidos, o sistema operacional provê duas abstrações. Uma é o dispositivo bruto e a outra é o sistema de arquivos. Para um sistema de arquivos, o sistema operacaional enfileira e escalona as requisições intercaladas vindas de várias aplicações. E como o sistema operacional trabalha quando a mídia é removível?
Armazenamento terciário Suporte por parte do SO - Interface da aplicação:
Na maioria dos SO's, quando um disco removível vazio é inserido, ele precisa ser formatado, e depois um sistema de arquivos (semelhante ao dos discos rígidos) é gerado no disco.As fitas são tratadas de forma diferente: o SO enxerga a fita como um mídia de armazenamento bruta. Uma aplicação nunca abre um arquivo na fita, e sim a unidade de fita inteira. Com isso, o SO não provê serviços de sistema de arquivos e a fita não deve ser acessada por mais de uma aplicação, pois um único acesso pode durar segundos, quem dirá vários acessos vindo de muitos programas...
Armazenamento terciário Suporte por parte do SO - Nomes de arquivos:
Outro problema para o SO é o de tratar com nomes de arquivos em dispositivos removíveis. Para um disco rígido com Windows, o nome do arquivo é iniciado com a letra da unidade + caminho + nome do arquivo + extensão. No UNIX, o arquivo não contém letra da unidade, mas a tabela de montagem permite o SO descobrir em que unidade física o arquivo está contido. Já para discos removíveis, em especial as fitas, reconhecer uma unidade que continha um cartucho em algum momento do passado não significa saber como encontrar o arquivo (a unidade é a mesma, mas o cartucho foi trocado). Se cada cartucho tivesse um número de série, seriam necéssarios no mínimo 12 dígitos. Que empresa decoraria 12 dígitos para cada cartucho de fita?
Armazenamento terciário Suporte do SO: Gerenciamento de Armazenamento Hierárquico
Encontrado em instalações que possuem enormes volumes de dados que são acessados raramente;
Armazenamento terciário Aspectos de Desempenho: Velocidade
Aspectos: latência e largura de banda;Com o uso de JukeBox, o que causa o gargalo são os cartuchos;Devido a velocidade menor, é mais bem dedicada a dados acessados com pouca frequência;Em todos os casos, sistemas utilizando fitas são mais lentos;
Armazenamento terciárioAspectos de Desempenho: Confiabilidade
Bom desempenho não é necessariamente grande velocidade;Discos magnéticos removíveis (fita, disquete) são menos confiáveis;Discos ópticos são mais confiáveis;A confiabialidade das fitas depende do tipo de unidade;Mesmo assim, por a cabeça "esfregar" na fita, seu desgaste ainda é grande;Unidade de disco fixo será mais confiável do que as móveis;
Armazenamento terciárioAspectos de Desempenho: Custos
Fita é o mais barato, largamente utilizado para BKPs;Os preços, como para qualquer outro produto na economia, varia de acordo com a saturação do mercado, como também por avanço tecnológico;
Armazenamento terciárioAspectos de Desempenho: CustosPreço por megabyte da DRAM, de 1981 a 2004
Armazenamento terciário Aspectos de Desempenho: CustosPreço por megabyte do disco rígico magnético, de 1981 a 2004
Armazenamento terciárioAspectos de Desempenho: CustosPreço por megabyte de uma unidade de fita, de 1984 a 2004
Dúvidas?