Você está na página 1de 42

RAID

REDUNDANT ARRAY OF INDEPENDENT DISC

85778002530 - Ricardo Souza Ribeiro


PARALELIZANDO O ACESSO DE DISCO (RAID)

• Redundant Arrays of Inexpensive


(Independent) Disks
– Confiabilidade
– Desempenho
• RAID – Níveis 0 a 6 ou Nested RAID
• Objetivo: nivelar as diferentes taxas
de melhoria de desempenho do
disco contra as da memória e dos
microprocessadores.
Prof. Thiago Cavalcanti
85778002530 - Ricardo Souza Ribeiro
REDUNDANT ARRAYS OF INEXPENSIVE DISKS
(RAID)
• Um grande array de
pequenos discos
independentes, que atuam
como um único disco lógico
maior.
• Striping de dados –
emprega o paralelismo
para melhorar o
desempenho.

85778002530 - Ricardo Souza Ribeiro


CONFIABILIDADE E DESEMPENHO

• Confiabilidade
– Espelhamento ou sombreamento Redundância
• Duplica a informação
– Código de Hamming (bits de paridade)

• Desempenho
– Distribuir a informação por meio de striping
Paralelismo
– Em diferentes níveis de granularidade
• De bit a bit até nível de bloco (mais usado)

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
RAID 0
• Conhecido como striping de disco
– Técnica que divide um arquivo e
distribui os dados em todas as
unidades de disco em um grupo
RAID.
– Não existe nenhum espelhamento
ou controle de paridade.
– Todos os discos funcionam como
apenas um, multiplicando a
performance
• O objetivo de aumentar o
desempenho.

85778002530 - Ricardo Souza Ribeiro


RAID 1

• Conhecido como discos


espelhados.
• É utilizado quando a
confiabilidade dos dados
gravados é a maior preocupação
• Utiliza no mínimo dois discos
– Copia os dados de um em outro.
– Possui uma performance geral
menor em comparação a um disco
comum e não utiliza paridade.

85778002530 - Ricardo Souza Ribeiro


RAID 2

• Solução de armazenamento que


surgiu no final dos anos 1980.
– Os HDs não tinham o mesmo padrão
de confiabilidade que têm hoje.
• Conta com um mecanismo de
detecção de falhas do tipo ECC
(Error Correcting Code).
– Hoje, este nível quase não é mais
utilizado, uma vez que praticamente
todos os HDs já possuem o referido
recurso implementado
internamente.
85778002530 - Ricardo Souza Ribeiro
RAID 3
• Reserva uma unidade de armazenamento
apenas para guardar as informações de
paridade, razão pela qual são necessários
pelo menos três discos para montar o
sistema.
• A paridade é intercalada por bit.
• Este nível também pode apresentar maior
complexidade de implementação pelo fato
das operações de escrita e leitura de dados
considerarem todos os discos em vez de
tratá-los individualmente.

85778002530 - Ricardo Souza Ribeiro


RAID 4
• Também utiliza o esquema de paridade com
o diferencial de dividir os dados em blocos
maiores e de oferecer acesso individual a
cada disco do sistema.
• Neste caso a paridade é intercalada por
bloco de disco.
• Este nível pode apresentar algum
comprometimento de desempenho, pois
toda e qualquer operação de gravação exige
atualização na unidade de paridade.
– Por este motivo, seu uso é mais indicado em
sistemas que priorizam a leitura de dados, ou
seja, que realizam muito mais consultas do que
gravação.

85778002530 - Ricardo Souza Ribeiro


RAID 5

• Utiliza paridade para a verificação de


dados em todos os discos utilizados,
sendo muito parecido com o RAID 0,
mas com tolerância a falhas devido à
utilização de um ECC (Error
Correcting Code).
• É umas das opções mais vantajosas,
mas tem uma implementação difícil.
• Veja a distribuição da paridade entre
os diferentes discos na figura abaixo.

85778002530 - Ricardo Souza Ribeiro


RAID 6
• Se aplica ao chamado esquema de
redundância P + Q
– Usando código de Reed-Soloman
para proteger contra até duas
falhas de discos simultâneas.
– Trata-se de uma especificação
mais recente e parecida com o
RAID 5, mas com uma importante
diferença: trabalha com dois bits
de paridade.
• Observem a figura a seguir com
uma abstração da implementação
de RAID 6.
85778002530 - Ricardo Souza Ribeiro
RESUMINDO: RAID DE 1 A 6
C C
Discos espelhados

P P P
Códigos de correção de erro no estilo da memória
P
Paridade intercalada por bit

P
Paridade intercalada por bloco

P P P
Paridade distribuída intercalada por bloco

P P P

Redundância P + Q
85778002530 - Ricardo Souza Ribeiro
NESTED RAID

85778002530 - Ricardo Souza Ribeiro


COMPARANDO RAID

85778002530 - Ricardo Souza Ribeiro


ESTRUTURAS DE INDEXAÇÃO
PARA ARQUIVOS

85778002530 - Ricardo Souza Ribeiro


ÍNDICES

• Mecanismo utilizado para melhorar a velocidade de


acesso aos dados
• Chave - atributo ou conjunto de atributos usado para
procurar registros em um arquivo
• Arquivo de índice - consiste em um conjunto de
registros com o seguinte formato:

Chave Ponteiro
(Search-key) (Pointer)

85778002530 - Ricardo Souza Ribeiro


TÉCNICAS PARA CRIAR ESTRUTURAS DE DADOS
AUXILIARES
• Índices
– Agilizam a busca e a recuperação de
registros
– Envolvem armazenamento de dados
auxiliares
• Arquivos de índices
• Como avaliar um índice?
– Tempo: acesso, inserção, deleção
– Overhead de espaço em disco
– Tipos de acesso suportados

85778002530 - Ricardo Souza Ribeiro


ARQUIVOS DE ÍNDICES

• São tipicamente muito menores que


os arquivos originais.
• Dois tipos de índices
– Índices ordenados
• As chaves de busca são armazenadas de
forma ordenada
– Índices hash
• As chaves são distribuídas
uniformemente através de “bucktes”
– usando um função hash

85778002530 - Ricardo Souza Ribeiro


TIPOS DE ÍNDICES ORDENADOS DE ÚNICO NÍVEL

• Índice remissivo
• Arquivo
– Campo de índice ou atributo de indexação
• Classificação para índices
– Primário – usa a chave de ordenação do
arquivo
– Clustering – campo diferente da chave
(arquivo agrupado)
– Secundário – sobre campos não chave do
arquivo

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
ÍNDICE DENSOS OU ESPARSOS

• Denso
– Uma entrada de índice para cada valor de chave de
pesquisa e portanto para cada registro no arquivo
• Ex: índice secundário
• Esparso
– Entrada de índices apenas para alguns valores de
pesquisa.
• Ex: índice primário, índice clustering
Prof. Thiago Cavalcanti
85778002530 - Ricardo Souza Ribeiro
ÍNDICES PRIMÁRIOS

• Uma entrada de índice ou registro de índice no arquivo de


índice para cada bloco no arquivo de dados.
• Cada entrada de índice tem:
– um valor do campo da chave primária para o primeiro registro
em um bloco e
– um ponteiro para esse bloco.
• Ordem sequencial do arquivo
• Ocupa menos espaço (memória)
• Problema da inserção e remoção

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
ÍNDICES PRIMÁRIOS

85778002530 - Ricardo Souza Ribeiro


ÍNDICES CLUSTERING

• Agiliza a recuperação de todos os registros que tem o


mesmo valor para o campo de agrupamento
• Uma entrada para cada valor distinto do campo de
agrupamento
– Contêm o ponteiro para o primeiro bloco no arquivo com
o valor
• Problema da inserção e remoção
– Solução é reservar espaço para expansão

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
ÍNDICES CLUSTERING

85778002530 - Ricardo Souza Ribeiro


ÍNDICES SECUNDÁRIOS

• Pode ser criado em campos que são chaves candidatas


ou não
• Novamente é um arquivo ordenado com dois campos
<campo índice, ponteiro para o bloco ou registro>
• Não usamos âncoras de bloco (não ordenado)
– Todos os valores possível de busca devem estar no índice
– Maior espaço de armazenamento que o primário
• Ordenação lógica
Prof. Thiago Cavalcanti
85778002530 - Ricardo Souza Ribeiro
ÍNDICES SECUNDÁRIOS

85778002530 - Ricardo Souza Ribeiro


ÍNDICES SECUNDÁRIOS

85778002530 - Ricardo Souza Ribeiro


RESUMO
Tipo de Índice Número de entradas de índice Denso ou não Ancoragem de bloco no
denso arquivo de dados
Primário Número de blocos no arquivo Não denso Sim
de dados
Clustering Número de valores de campo Não denso Sim/não
de índice distintos

Secundário (chave) Número de registros no Denso Não


arquivo de dados
Secundário (não chave) Número de registros ou Denso ou não Não
número de valores do campo denso
de índices distintos

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
QUESTÃO.

• CESPE - Professor de Educação Básica


(SEDF)/Informática/2017
• Julgue o item a seguir, a respeito de banco de dados,
organização de arquivos, métodos de acesso e banco
de dados textuais.
• Na organização sequencial de arquivos, o método de
acesso sequencial indexado utiliza um índice dos
campos chave para localizar registros individuais.

85778002530 - Ricardo Souza Ribeiro


ÍNDICES MULTINÍVEIS

85778002530 - Ricardo Souza Ribeiro


ÍNDICES MULTINÍVEIS

• Reduzir a parte do
índice que continuamos
a pesquisar por bfri, o
fator de bloco para o
índice.
– bfri, é chamado de fan-
out do índice multinível.

85778002530 - Ricardo Souza Ribeiro


ÍNDICES MULTINÍVEIS

85778002530 - Ricardo Souza Ribeiro


ÍNDICES MULTINÍVEIS DINÂMICOS (B-TREES E B+-
TREES)
✓ B-trees oferecem uma estrutura de acesso multinível
que é uma estrutura de árvore balanceada em que
cada nó está cheio pelo menos até a metade.
✓ Cada nó em um B-tree de ordem p pode ter no máximo
p – 1 valores de pesquisa

85778002530 - Ricardo Souza Ribeiro


B+-TREE

• Os ponteiros de dados são armazenados


apenas nos nós folha da árvore
• A estrutura dos nós folhas difere da estrutura
dos nós internos.

85778002530 - Ricardo Souza Ribeiro


B-TREE

85778002530 - Ricardo Souza Ribeiro


ÍNDICES EM MÚLTIPLAS CHAVES

• Em muitas solicitações de recuperação e atualização,


vários atributos são envolvidos.
• Se certa combinação de atributos for usada com
frequência, é vantajoso configurar uma estrutura de
acesso para oferecer acesso eficaz por um valor de
chave que é uma combinação desses atributos
– Índices ordenados em múltiplos atributos
– Hashing particionado
– Arquivos de grade (grid)

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
OUTROS TIPOS DE ÍNDICES

• Índice de hash
• Índice de bitmap
• Indexação baseada em função

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
ÍNDICE DE HASH

85778002530 - Ricardo Souza Ribeiro


ÍNDICE DE BITMAP

O índice bitmap é outra estrutura de dados


popular que facilita a consulta em múltiplas
chaves.

A indexação bitmap é usada para relações que


contêm um grande número de linhas.

Ela cria um índice para uma ou mais colunas, e


cada valor ou intervalo de valores nessas
colunas é indexado

85778002530 - Ricardo Souza Ribeiro


INDEXAÇÃO BASEADA EM FUNÇÃO

Prof. Thiago Cavalcanti


85778002530 - Ricardo Souza Ribeiro
QUESTÕES GERAIS REFERENTES À INDEXAÇÃO

• Índices lógicos x
físicos
• Armazenamento
de relações
baseado em
coluna (colunar)
Prof. Thiago Cavalcanti
85778002530 - Ricardo Souza Ribeiro
ARQUIVOS INVERTIDOS COM CONTADORES DE
POSIÇÃO
• Busca por frases em bancos de dados textuais
• Existem dois métodos principais de busca por frases em bancos de
dados textuais utilizando indexação de textos, um é arquivo
invertidos com contadores de posição e o outro é índice para a
próxima palavra.
• Um arquivo invertido possui duas partes principais:
– Uma estrutura de busca, chamada de vocabulário, contendo todos os
termos distintos existentes nos textos indexados e, para cada termo,
uma lista invertida que armazena os identificadores dos registros
contendo o termo.
– Consultas são feitas tomando-se a lista invertida correspondente ao
termo procurado.
– As consultas booleanas são feitas obtendo-se a conjunção ou disjunção
entre as listas relativas aos termos presentes na consulta.
• Os índices para a próxima palavra apresentam uma abordagem
mais eficiente do que o uso de arquivos invertidos com contadores
de posição.
– Nessa abordagem, para cada palavra existente no vocabulário é criado
uma lista com as palavras que ocorrem em uma posição subsequente no
texto, justamente com apontadores de posição para essas ocorrências

85778002530 - Ricardo Souza Ribeiro

Você também pode gostar