A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Banco de Dados II Prof: Márcio Soussa Curso de Sistemas de Informação Faculdades Jorge Amado.

Apresentações semelhantes


Apresentação em tema: "Banco de Dados II Prof: Márcio Soussa Curso de Sistemas de Informação Faculdades Jorge Amado."— Transcrição da apresentação:

1 Banco de Dados II Prof: Márcio Soussa Curso de Sistemas de Informação Faculdades Jorge Amado

2 Referências Bibliográficas Sistemas de Banco de Dados Elmasri, Navathe Implementação de Sistemas de Bancos de Dados, Garcia-Molina Introdução a Sistemas de Bancos de Dados, C.J. Date, Ed. Campus. Sistema de Banco de Dados, A Silberschatz, H.F. Korth, Ed. Makron Books

3 Arquitetura de um SGBD Referência Catálogo do Sistema Compilador Otimizador Comandos da Aplicação /usuário/ DBA Respostas Gerente de Transações Gerente de bloqueios Gerente de logs Gerente de acesso a dados Gerente de buffers LOGBD

4 Instância e Banco de Dados Oracle

5 Estruturas de Armazenamento Banco de Dados Oracle

6 Unidades Lógicas Blocos de Disco Blocos de disco: Também chamados de páginas de disco Representam a unidade básica de I/O Local onde os registros de dados, índices, blobs ficam armazenados. Configurável via o SGBD Tamanho ideal ? (OLTP, OLAP) A maioria dos SGBDs não permite compartilhamento de blocos de disco Permitem compartilhamento das extensões (extents)

7 Unidades Lógicas Tipos de Dados Tipos de Dados Inteiro (2 e 4 bytes) Float (4 e 8 bytes) Char(n) - Varchar(n) (Qual a diferença ?) Date String de caracter de tamanho fixo ( 10 caracteres) – AAAA- MM-DD Time String de caracter de tamanho fixo ( 8 caracteres) – HH:MM:SS Bit(n) Blobs (Binary large Objects)

8 Unidades Lógicas Extensões Extensões (Extents): Quantidade de blocos contíguos Configurável (Depende do SGBD) Extensão inicial, Extensão incremental Número máximo de extensões e espaço Geralmente os SBGDs separam extensões distintas para tipos de dados distintos Dados (Data Page) Índices (Índex Page) Blobs (Blobs Page) Auxilia na desfragmentação dos blocos melhorando assim a performance

9 Unidades Lógicas Extensões e Páginas (Blocos) 4k 64 k Extensões Blocos de disco

10 Unidades Lógicas Segmentos Segmentos (Segments): Divisões de uma tablespace Há diferentes tipos de segmentos: Segmento de dados (Data segment): Cada tabela possui um único segmento de dados para manter todos os seus dados Segmento de índice (Index segments): Cada índice em um banco de dados Oracle possui um único segmento de índice. Segmentos temporários (Temporary segments): Área de trabalho temporária (TEMP) Segmentos de Rollback: Utilizados para desfazer transações

11 Tablespaces: Divisão do banco de dados em uma ou mais unidades lógicas de armazenamento Permite a distribuição dos objetos (Tabelas, índices, etc) do esquema em dispositivos distintos Diminui a concorrência de acesso aos dados Cada tablespace relaciona-se com um ou mais arquivos de dados físicos (datafiles ) Relação tablespace e schema é de MxN Algumas tablespaces são criadas automaticamente Users e System Evitar criar objetos do esquema na tablespace SYSTEM para evitar concorrência com o catálogo (dicionário de dados) do Oracle. Unidades Lógicas Tablespaces

12 CREATE TABLESPACE tablespace DATAFILE datafile_clause] [, datafile_clause] {extent_management_clause} [ MINIMUM EXTENT integer[K|M]] [ LOGGING | NOLOGGING] [ DEFAULT STORAGE storage_clause ] [ ONLINE | OFFLINE] [ PERMANENT | TEMPORARY]

13 Arquivos de Dados (Data Files) Objetos dos bancos de dados Arquivos de Redo Log Recupera o bd após falha física ou de sistema Arquivos de controle Configurações do banco de dados Nome, data da criação, Nome das tablespaces, localização dos arquivos de log, etc. Informações de checkpoint Unidades Físicas Arquivos

14 Estruturas de Armazenamento Manipulação de Registros Problemas com manipulação de registros Gargalo de um SGBD é o acesso ao disco Ordenação física dos registros (cluster) Inserção: Deslizamento entre blocos ou Blocos de estouro Deleção: Deslizamentos de blocos Atualização: Mesmos problemas dos anteriores Solução: Manutenção de espaço livre nos blocos de disco. Evita “page splits” SQL Server: FillFactor Oracle: PCTFree, PCTUsed

15 Estruturas de Armazenamento Preenchimento de blocos (Oracle) CABEÇALHO ESPAÇO LIVRE DADOS PCTFREE PCTUSED

16 Arquitetura Oracle Tabela CREATE TABLE [schema.]tabela (column datatype [, column datatype]... ) [ TABLESPACE tablespace] [ PCTUSED integer] [ PCTFREE integer] [ INITRANS integer] [ MAXTRANS integer] [ STORAGE storage_clause] [ LOGGING | NOLOGGING] [CACHE | NOCACHE ]

17 Estruturas de Armazenamento Exemplo do Metadados PCT_ Free Initial_ Extent Num_ Rows BlocksEmpty_ Blocks Avg_Row Length 01024010.000 ? ?58 User_Tables (Aluno) Supondo o bloco de disco configurado para 8k, quantos blocos de disco a tabela aluno ocuparia ? Cada bloco de disco possui 90 bytes de controle


Carregar ppt "Banco de Dados II Prof: Márcio Soussa Curso de Sistemas de Informação Faculdades Jorge Amado."

Apresentações semelhantes


Anúncios Google