Quinta-feira, 01 de setembro de 2005 às 13h05

Arquitetura de Armazenamento Lógico

Faltam -1 dias! Inscreva-se agora! O maior encontro de profissionais web da américa latina.

Olá pessoa! Tudo bem? Hoje iremos relatar como funciona a arquitetura de armazenamento lógico do banco de dados Oracle.

Para começarmos a falar sobre este assunto, precisamos de um pequeno resumo sobre os quatro grandes componentes que compõe essa arquitetura, que são as tablespaces, segmentos, extensões e bloco de dados.

Este é um dos principais fundamentos para administração de banco de dados Oracle, saber seu funcionamento e conceito é uma grande vantagem na construção de modelo físico de banco de dados.

Primeiramente, devemos saber classificar cada um desses componentes, a fim de entender o funcionamento do armazenamento lógico do Oracle. A arquitetura lógica, como dita, é composta por quatro componentes, são eles:

Bloco de Dados (Data Block)

O bloco de dados corresponde a um número especifico de bytes do banco de dados para armazenado em disco. Sendo que esse valor é especificado durante a criação do banco de dados, pelo parâmetro db_block_size.

Então, o Oracle gerencia todo o espaço de armazenamento nos arquivos de dados (datafiles) através dessas pequenas unidades chamado blocos de dados, que carregam informações importantes como cabeçalho, diretório da tabela, diretório de linha, dados de tabelas ou índices e espaço livre para inserções ou atualizações de dados.

Extensões(Extent)

As extensões são unidades lógicas de armazenamento composta por um conjunto de blocos de dados, um ou mais extensões formam um segmento.

As extensões são muito utilizadas para definir a característica de armazenamento de algum objeto, como um tabela ou índice. Eles podem influenciar muito na fragmentação de espaço ou ajudar a definir um bom plano de crescimento da base de dados.

Segmentos (Segment)

Os segmentos é um conjunto de extensões que possui todos os dados necessários para uma estrutura de armazenamento lógico, como as tablespaces.

Para cada tabela criada, o Oracle aloca um ou mais extensões para formar um segmento de dados, assim, também podemos dizer que o Oracle aloca um ou mais extensões para formar um segmento de índice.

Na arquitetura do Oracle, podemos encontrar quatro tipos de segmentos:

SEGMENTO 

Português 

Inglês

Relacionados

Dados

Data

Tabelas

Índices

Index

Índices

Desfazer

Rollback

Rollbacks Segments e UNO

Temporarários

Temporary

Consultados de Agrupamentos, Sumarização, Ordenação e etc.

Espaços de tabela (Tablespace)

Os espaços de tabelas, ou mais conhecidas como Tablespaces, é dividido através de unidades lógicas de armazenamento chamadas segmentos. Uma tablespace pode conter um ou mais segmentos, segmentos do tipo de dados, índices, desfazer ou temporário.

A tablespace é a camada lógica do Oracle, ficando anexada a uma camada física, que são os arquivos de dados (datafiles), onde se origina o armazenamento físico dos dados.

Podemos perceber que existe uma relação entre os quatro componentes citados, analise o raciocínio: Sem o bloco de dados não temos extensões, sem extensões não temos segmentos, e sem segmentos não temos tablespaces e sem tablespaces não temos banco de dados Oracle.

Todos eles são responsáveis pela arquitetura lógica do banco de dados. Por isso que é fundamental o DBA ter esses conhecimentos. Abaixo podemos ver uma demonstração gráfica de como funciona o armazenamento lógico com e suas camadas:

Na figura acima, observamos que nosso bloco de dados em destaque é de 8KB, então concluímos que no momento da criação do banco de dados, o parâmetro db_block_size é de 8192 bytes (8Kb), esse parâmetro é estático não podendo ser alterado.

Percebemos também que a Extensão possui 24 blocos de dados, fazendo uma matemática simples, 24 (blocos de dados) x 8192 (bytes) temos o tamanho da extensão, que possui 196608 bytes (192Kb). Seguindo o mesmo exemplo, nosso segmento possui duas extensões, determinando que o tamanho do segmento seja de 384 Kb.

Assim podemos imaginar que se o segmento acima fosse um Segmento de Dados (Tabela), a nossa tabela teria um tamanho de 284Kb. Isso sem levar em consideração a configuração de storage desse segmento, que envolve os parâmetros de INITIAL, NEXT, MINEXTENTS, MAXEXTENTS e PCTINCREASE, que já é outro assunto mais detalhado.

O tamanho da tablespace não tem vinculo nenhum com os componentes citados, pois seu tamanho é especificado no momento de sua criação.Foi um breve resumo sobre sua arquitetura, espero que tenham gostado do assunto e que acrescente mais informações para os futuros Dbas.

Existem muitas particularidades sobre cada componente que não foi dito, porém, deixamos para outro momento. A principal conclusão é de como funciona toda a arquitetura de armazenamento lógico, um dos principais fundamentos do banco de dados Oracle.

Abraços,

2 comentários

 Eliane Viana Meijomil
19/09/2005 10h40

Aonde encontrar material para Oracle?

Olá Rodrigo,
tenho acompanhado a sua coluna a pouco tempo, mas gostei das matérias publicadas.
Sou usuário iniciante em Oracle e gostaria de saber aonde encontro material, como apostilas, ou até livros sobre o Oracle, pois estou fazendo meu estágio e preciso aprender a utilizar essa ferramenta.
Desde já agradeço,
Erick.

 Glauber Matos
24/10/2005 12h37

G.P.O

Entra aqui Rapaz! www.profissionaloracle.com.br terá muitos tutoriais e artigos do seu interesse. Abraços,

Cancelar resposta

Qual a sua opinião?

Faça login abaixo ou cadastre-se rapidamente.


2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.