You are on page 1of 56

UNIVERSIDADEESTADUALDESANTACRUZ(UESC)

CriadapelaLei6.344,de05.12.1991, ereorganizadapelaLei6.898,de18.08.1995e pelaLei7.176,de10.09.1997

CET091 Banco de Dados II Prof. Dr. Marcelo Ossamu Honda


Departamento de Cincias Exatas e Tecnolgicas (DCET) mohonda(at)nbcgib(.)uesc(.)br

Armazenamento e Consulta de Dados

Prof. Dr. Marcelo Ossamu Honda

2/56

Armazenamento de Dados

Sistemas de banco de dados:


Viso alto nvel dos dados; Objetivo do banco de dados simplificar e facilitar o acesso a dados;

Os precisam ser armazenados (bits) em dispositivo(s) de armazenamento;

A estrutura de dados precisa ser feita com base no uso esperado do sistema e das caractersticas fsicas da mquina especfica;
3/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Classificao dos meios de armazenamento:

Velocidade I/O; Custo; Confiabilidade; Armazenamento Primrio:


Meios de armazenamento:

Cache (hardware); Memria principal; Memria flash; Discos magnticos; ptico; Fita magnticas; Jukebox e robotizados;
4/56

Armazenamento Secundrio ou Online:


Armazenamento Tercirio ou Offline:


Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Discos Magnticos:

Principal meio de armazenamento; Tentam acompanhar a demanda de armazenamento; Caractersticas fsicas:

Placa de disco com material magntico;

Dividido logicamente em trilhas e setores;

Motor para rotao das placas de discos; Cabea de leitura-escrita;

Brao do disco fazem as cabeas se movimentarem juntas; Interface que recebe comandos de alto nvel (leitura e escrita); Controla aes do hardware (posicionamento da cabea de leitura, rotao, leitura e escrita, etc.); Verificao dos dados gravados (checksum); Mapeamento de setores defeituosos; Diagnsticos dos hardware;
5/56

Controladora de disco:

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Discos Magnticos:

Prof. Dr. Marcelo Ossamu Honda

6/56

Armazenamento de Dados

Interconexo:

IDE (Integrated Drive Eletronics); ATA (AT attachment);

PATA (Parallel ATA);

SATA (Serial ATA); SCSI (Small-Computer-System Interconnect); SAN (Storage Area Network); RAID (Redundant Arrays of Independent Disks); NAS (Network Attached Storage); 12 Portas; Sistema:

Controladora RAID:

Administrao e controle; Mensagens;

Bateria para caso de falhas;


7/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Medidas de desempenho dos discos:

Tempo de acesso de I/O;

Tempo entre a solicitao e o incio da transferncia de dados;


Tempo de busca: tempo para reposicionar o brao; Tempo de latncia rotacional: tempo gasto at que o setor desejado aparea;

Taxa de transferncia de dados;

Velocidade em que os dados podem ser lidos ou gravados no disco; Tempo mdio para a falha;
8/56

Confiabilidade;

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Otimizao de acesso ao bloco de disco:

Solicitaes de I/O de disco so geradas pelo sistema de arquivo e memria virtual; Os dados so transferidos entre o disco e memria principal em unidades de bloco; Bloco: unidade lgica, consistindo em um nmero fixo de setores contguos;

Prof. Dr. Marcelo Ossamu Honda

9/56

Armazenamento de Dados

Tcnicas para acesso aos blocos no disco:

Escalonamento: tentam ordenar os acesso as trilhas em um padro;

Escalonamento do brao do disco usando algoritmo de elevador;

Organizao de arquivo: os blocos no disco podem ser organizados de uma maneira que corresponde de perto o modo como esperamos que os dados sejam acessados;

Arquivos fragmentados;
10/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Tcnicas para acesso aos blocos no disco:

Buffers de escrita no volteis:


NVRAM (RAM + Bateria); Funcionamento:


Recebe uma solicitao de gravao de um bloco; Escreve na NVRAM; Responde com sucesso a solicitao; A controladora grava em disco, quando do buffer cheio ou no tiver outra atividade;

Disco de log: disco dedicado a escrever um log sequencial;

Sistemas de arquivo journaling;


11/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Aumento da Confiabilidade:

Redundncia:

Armazenar informaes extras, que podem ser utilizadas no caso de falhas de um disco; Espelhamento (Mirroring);

Duplicar as informaes em discos diferentes;

Prof. Dr. Marcelo Ossamu Honda

12/56

Armazenamento de Dados

Desempenho por paralelismo;

Espelhamento (Mirroring);

Duplicar as informaes em discos; Distribuir os bits de um byte em diferentes discos; Distribuir os blocos em diferentes disco; Trata array de discos como um nico disco grande;

Espalhamento em Nvel de bit:

Espalhamento em Nvel de bloco:


Objetivos:

Balancear carga; Realizar grandes acessos em paralelo;


13/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

RAID (Redundant Arrays of Independent Disks);

Espelhamento:

Alta confiabilidade,mas caro; Alta taxa de transferncia de dados; No melhora a confiabilidade; So diversos esquemas alternativos que buscam melhorar a redundncia com menor custo, combinando o espalhamento de disco com os bits de paridade; Diferentes opes de custo-desempenho;

Espalhamento:

Nveis RAID:

Prof. Dr. Marcelo Ossamu Honda

14/56

Armazenamento de Dados

Nvel 0:

Espalhamento no nvel de blocos no redundantes;

Prof. Dr. Marcelo Ossamu Honda

15/56

Armazenamento de Dados

Nvel 1:

Espelhamento de disco; Espalhamento no nvel de blocos;

Prof. Dr. Marcelo Ossamu Honda

16/56

Armazenamento de Dados

Nvel 10:

Combinao RAID 0 + RAID 1;

Prof. Dr. Marcelo Ossamu Honda

17/56

Armazenamento de Dados

Nvel 2:

Cdigo de Correo de Erro (ECC); Bits de paridade; Paridade intercalada por bit; Bit de paridade em um disco separado; Utilizam a deteco de erro do disco;

Nvel 3:

Prof. Dr. Marcelo Ossamu Honda

18/56

Armazenamento de Dados

Nvel 3:

Prof. Dr. Marcelo Ossamu Honda

19/56

Armazenamento de Dados

Nvel 4:

Paridade intercalada por bloco; Bloco de paridade em um disco separado; Paridade em um nico disco; Paridade distribuda intercalada por bloco; Particiona dados e paridade entre todos os discos; Aumento do nmero de solicitaes atendidas;

Nvel 5:

Prof. Dr. Marcelo Ossamu Honda

20/56

Armazenamento de Dados

Nvel 5:

Prof. Dr. Marcelo Ossamu Honda

21/56

Armazenamento de Dados

Nvel 6:

Semelhante ao RAID 5; Armazenas outras informaes redundantes extras; Proteger contra mltiplas falhas de disco; Utiliza cdigos de correo de erro

Prof. Dr. Marcelo Ossamu Honda

22/56

Armazenamento de Dados

Nvel 6:

Prof. Dr. Marcelo Ossamu Honda

23/56

Armazenamento de Dados

Escolha do nvel de RAID:


Custo; Requisitos de desempenho; Desempenho em relao as falhas de disco; Desempenho durante a reconstruo; RAID de software; RAID de hardware; Troca a quente (Hot swapping);
24/56

Hardware:

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Acesso ao armazenamento:

Banco de dados mapeado em uma srie de arquivos diferentes;


Cada arquivo particionado em unidade de armazenamento de tamanho fixo, os blocos; Os blocos, so as unidades de alocao de armazenamento e transferncia de dados; Um bloco pode conter vrios itens de dados;

O conjunto exato de itens de dados que um bloco contm determinado pelo formato da organizao fsica dos dados;

Prof. Dr. Marcelo Ossamu Honda

25/56

Armazenamento de Dados

Acesso ao armazenamento:

O objetivo do sistema de banco de dados minimizar o nmero de transferncias de blocos entre o disco e a memria;

Reduzindo a quantidade de acessos ao disco; Manter o mximo de blocos possveis na memria principal;

Ideal, seria manter todos os blocos na memria principal;

Gerenciador de buffer;
26/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Gerenciador de buffer:

Sistema de banco de dados fazem solicitaes ao gerenciador de buffer quando precisam de um bloco de disco;

Se o bloco j est em memria esse passa o endereo do bloco na memria principal; Se o bloco no estiver no buffer, o gerenciador de buffer aloca (se necessrio, libera) espao no buffer para o bloco. O bloco descartado (se necessrio) gravado de volta no disco. Depois feito a leitura do bloco solicitado para o buffer e retorna o endereo da memria principal ao solicitante;
27/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Gerenciador de Buffer:

Esquemas de gerenciamento de buffer:

Estratgia de substituio de buffer:


LRU (Last Recently Used); Gravado em disco e removido do buffer o bloco referenciado mais antigo em memria principal; Um bloco no pode ser gravado, enquanto uma atualizao no bloco est em andamento; Atualiza o bloco em disco, mesmo sem ser necessrio esse espao em memria principal;
28/56

Blocos presos:

Sada forada de blocos:

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Politicas de substituio de Buffer:

Objetivo de minimizar acessos a disco; Sistemas de Banco de Dados, normalmente so capazes de determinar com antecedncia quais blocos sero necessrios; LRU (Last Recently Used):

Analisando as etapas necessrias para realizar uma operao; Futuro a curto prazo; Libera espao de um bloco, assim que o Sistema de Banco de Dados terminar o processamento deste;
29/56

Lanar Imediatamente:

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Politicas de substituio de Buffer:

Lanar Imediatamente:

Libera espao de um bloco, assim que o Sistema de Banco de Dados terminar o processamento deste; Libera o bloco usado recentemente, para ser liberado do buffer; Prender bloco usado atualmente;

MRU (Most Recently Used):


Prof. Dr. Marcelo Ossamu Honda

30/56

Armazenamento de Dados

Gerenciador de Buffer:

Informaes estatsticas para determinar a probabilidade de uma solicitao;

Por exemplo, o dicionrio de dados:


Esquema lgico das relaes; Esquema fsico de armazenamento; Muito utilizado em Sistemas de Banco de Dados; Muitas vezes, mais acessados do que os prprios arquivos de dados;

Por exemplo, ndices:

Prof. Dr. Marcelo Ossamu Honda

31/56

Armazenamento de Dados

Gerenciador de Buffer:

Melhor estratgia para Sistemas de Banco de Dados:

Conhecimento das operaes do banco de dados;


Atuais; Futuras;

Estratgias isoladas, no podem lidar com todos os cenrios possveis;


Controle de concorrncia; Recuperao de falhas;


32/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Organizao de arquivo;

organizado logicamente como uma sequencia de registros; Registros, so mapeados em blocos de disco;

Registros so de tamanho variado; Blocos tem o tamanho determinado pelo sistema bsico de arquivo; Sistema de arquivo bsico;

O arquivo, respeita o sistema operacional;

Prof. Dr. Marcelo Ossamu Honda

33/56

Armazenamento de Dados

Organizao de arquivo;

Mapear o Banco de Dados:


Utilizar vrios arquivos; Armazenar registros de apenas um tamanho fixo em um arquivo determinado;

Como alternativa, estruturar arquivos para vrios tamanhos de registros; Simplicidade de implementao;

Prof. Dr. Marcelo Ossamu Honda

34/56

Armazenamento de Dados

Registros de tamanho fixo:

Problemas:

Difcil excluso de um registro;

Preenchido com algum outro registro; Marcar os registros excludos; Marcadores simples, dificultam o processo de insero;

Tamanho do bloco, deve ser mltiplo do tamanho do registro;

Prof. Dr. Marcelo Ossamu Honda

35/56

Armazenamento de Dados

Registros de tamanho fixo:

Cabealho de Arquivo:

Lista livre;

Prof. Dr. Marcelo Ossamu Honda

36/56

Armazenamento de Dados

Registros de tamanho varivel:

Usado em Sistemas de Banco de Dados:


Vrios tipos de registro em um arquivo; Permitem tamanhos variveis para diferentes campos; Permitem campos repetidos:

Arrays ou Multiconjuntos;

Mtodos:

Estrutura de pgina em slot;

Prof. Dr. Marcelo Ossamu Honda

37/56

Armazenamento de Dados

Registros de tamanho varivel:

Estrutura de pgina em slot;

Cabealho:

Nmero de entradas; O final do espao livre em bloco; Array, cujas entradas contm o local e o tamanho de cada registro; Alocados de forma contigu no bloco; Comeando do final do bloco; Espao livre entre o final do array do cabealho e o primeiro registro;
38/56

O reais registros:

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Registros de tamanho varivel:

Estrutura de pgina em slot;

Prof. Dr. Marcelo Ossamu Honda

39/56

Armazenamento de Dados

Organizao de registros em arquivos:

Heap:

Registro pode ser armazenado em qualquer local do arquivo; No existe ordenao de registros; Normalmente, existe um nico arquivo para cada relao; Registros so armazenados em ordem sequencial;

Sequencial:

Prof. Dr. Marcelo Ossamu Honda

40/56

Armazenamento de Dados

Organizao de registros em arquivos:

Hashing:

Uma funo de hash calculada sobre algum atributo de cada registro; De acordo com a funo determinado em que bloco do arquivo o registro deve ser colocado;

Prof. Dr. Marcelo Ossamu Honda

41/56

Armazenamento de Dados

Organizao sequencial de arquivos:


Processamento eficiente de registros em ordem; Necessrio uma chave de busca;


Atributo ou conjunto de atributos; Registros so encadeados por ponteiros; Registros so armazenados fisicamente (ou mais prximo possvel) da ordem da chave de busca

Prof. Dr. Marcelo Ossamu Honda

42/56

Armazenamento de Dados

Prof. Dr. Marcelo Ossamu Honda

43/56

Armazenamento de Dados

Organizao sequencial de arquivos:


Registros podem ser lidos na ordem classificada; Difcil manter a ordem fsica em relao a ordem classificada dos registros;

Gerenciamento dos registros excludos; Bloco de estouro; Desfragmentao;

Pode necessitar de reorganizao do arquivo;

Prof. Dr. Marcelo Ossamu Honda

44/56

Armazenamento de Dados

Prof. Dr. Marcelo Ossamu Honda

45/56

Armazenamento de Dados

Organizao de arquivos com agrupamento de mltiplas tabelas;

Muitos Sistemas de Banco de Dados armazenam cada relao em um arquivo separado;


Normalmente, as tuplas de uma relao podem ser representadas como registros de tamanho fixo; Assim, as relaes podem ser mapeadas para uma estrutura de arquivo simples, usando o sistema de arquivos do sistema operacional; Sistemas de baixo custo; Sistemas embarcados ou dispositivos mveis; Torna o Sistema de Banco de Dados simples;
46/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Organizao de arquivos com agrupamento de mltiplas tabelas;

O Sistema de Banco de Dados aloca um grande arquivo:


No utilizam o sistema bsico do sistema operacional para o gerenciamento de arquivos; Sistemas de Banco de Dados de grande escala; Necessitam de estrutura adicional para suprir todos os tipos de consultas;

Relaciona duas ou mais relaes em cada bloco;

Ganhos significativos de desempenho;


47/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Prof. Dr. Marcelo Ossamu Honda

48/56

Armazenamento de Dados

Prof. Dr. Marcelo Ossamu Honda

49/56

Armazenamento de Dados

Armazenamento em dicionrio de dados:


Dicionrio de Dados ou Catlogo do Sistema; Sem banco de dados:


Estruturas de dados especficas; No cdigo do sistema; Simplificao da estrutura do sistema; Desempenho;

No banco de dados:

Armazenado em uma forma no normalizada;

Necessitam de informaes para incio do processo;


50/56

Prof. Dr. Marcelo Ossamu Honda

Armazenamento de Dados

Armazenamento em dicionrio de dados:

Informaes:

Nome das relaes; Nome de atributos de cada relao; Domnio e tamanho dos atributos; Nomes e definies de vises; Restries de integridade;

Prof. Dr. Marcelo Ossamu Honda

51/56

Armazenamento de Dados

Armazenamento em dicionrio de dados:

Informaes sobre usurios:


Nome de usurios autorizados; Informaes de autorizao e estatsticas; Autenticao; Nmero de tuplas em cada relao; Mtodo de armazenamento para cada relao;

Dados estatstico e descritivo das relaes:


Prof. Dr. Marcelo Ossamu Honda

52/56

Armazenamento de Dados

Armazenamento em dicionrio de dados:

Informaes do armazenamento:

Sequencial, Hash ou Heap; Relaes; Local onde cada relao est armazenada:

Nome do arquivo, quando as relaes so armazenadas nos arquivos do sistema operacional; Blocos contendo registros de cada relao em uma estrutura de dados (lista encadeada), quando as relaes so armazenadas em um nico arquivo;

Prof. Dr. Marcelo Ossamu Honda

53/56

Armazenamento de Dados

Armazenamento em dicionrio de dados:

Informaes do armazenamento:

Sequencial, Hash ou Heap; Relaes; Local onde cada relao est armazenada:

Nome do arquivo, quando as relaes so armazenadas nos arquivos do sistema operacional; Blocos contendo registros de cada relao em uma estrutura de dados (lista encadeada), quando as relaes so armazenadas em um nico arquivo;

Prof. Dr. Marcelo Ossamu Honda

54/56

Armazenamento de Dados

Armazenamento em dicionrio de dados:

Informaes sobre ndice de cada relao:


Nome do ndice; Nome da relao indexada; Atributo(s) indexado(s); Tipo de ndice;

Prof. Dr. Marcelo Ossamu Honda

55/56

Referncias

KORTH, H. F., SILBERSCHATZ, A. Sistema de Banco de Dados, Makron Books DATE, C. J. Introduo a Sistemas de Banco de Dados. Traduo da 7. Edio Americana. Editora Campus. DATE, C.J. Bancos de Dados, Tpicos Avanados, Editora Campus GARCIA-MOLINA, H. ULLMAN, J.D., WIDOM, J. Implementao de Sistemas de Bancos de Dados. Editora Campus Manuais Tcnicos e Livros voltados para Bancos de Dados especficos.
56/56

Prof. Dr. Marcelo Ossamu Honda

You might also like