You are on page 1of 3

Oracle arquitetura e seus componentes

Publicado em: 14/12/2004

Em primeiro lugar queria agradecer ao Marcio por ter dado um voto a mim e por mais uma vez eu poder mostrar o que eu sei sobre Oracle e passar para os leitores. Um banco de dados moderno, complexo e muito bem estruturado apesar de poucos terem acesso a ele. Nesta coluna de estria voltada a banco de dados Oracle, vou descrever apenas uma parte (do que vem ai mais pra frente) sobre a estrutura lgica e fsica, espero que todos gostem. ORACLE ARCHITECTURE COMPONENTS

O Servidor oracle composto pela instncia oracle e por um banco de dados oracle. O servidor oracle consiste num espao de memria na SGA (System Global rea). Toda instncia tem sua prpria sga. Quando uma instncia iniciada, alocado um espao de memria na sga e compartilhada. Sga no pode ter swapped e nem pode ser paginado. A finalidade da sga armazenar dados na memria para acesso rpido. A sga consiste em um grupo de estrutura de memria. So eles: Redo Log Buffer, Shared Pool e Database buffer cach. Voc pode exibir atravs do comando: show sga. O Pool Compartilhado (Shared Pool) utilizado pra armazenar informaes como as instrues sql executadas mais recentemente. O cache de buffer de banco de dados (Database Buffer Cach) armazena os dados do usurio utilizados mais recentemente. Este cach contm a lista de gravao (dados modificados, mas no gravados no disco) e a lista de gravao lru (least recently used). Lru - buffer sujos, retidos (atualmente em uso), buffers livres. O Buffer de redo log (Redo log buffer) utilzado paa registrar alteraes feitas no banco de dados. Nas verses anteriores a oracle 9, o sga era esttico configurado nos valores baseados no arquivo de parmetro init.opra. No oracle 9 a sga pode ser expandida ou compactada enquanto est sendo executada. A sga dinmica permite que os tamanhos das estruturas de memria sejam alterados sem

desativar a instncia. A infra-estrutura dinmica permite definir os limites sobre a memria fsica sobre a sga, voc pode definir o tamanho at a qual a sga pode crescer utilizando o parmetro SGA_MAX_SIZE. Neste tpico voc conheceu as estruturas de memria da sga, com elas a sga armazena dados e controla as informaes de um banco de dados oracle. Uma instncia oracle consiste na sga e um conjunto de processo de segundo plano. Quando uma instncia iniciada, o banco de dados cria um processo de segundo plano necessrio para atender as solicitaes de usurio concorrentes. Processos de segundo plano

Os processos de segundo plano so processos do sistema operacional. Toda instncia oracle pode utilizar mais de um processo de segundo plano com base na configurao de um servidor oracle. Cinco desses processos so obrigatrios para cada instncia so eles: DBWn ( Data base write ), LGWR (Log Write), SMON (System Monitor) , PMON (Process Monitor), CKPT (Checkpoint). DBWn (Database Writer) - O processo servidor registra alteraes em blocos de undo e de dados no cach de buffer do banco de dados. Grava os buffers sujos do cach de buffer do banco de dados nos arquivos de dados. Essa estratgia garante que um nmero suficiente de buffers livres esteja disponvel no cach de buffer do banco de dados. O DBWN grava quando ocorre um checkpoint, os buffers sujos atingem o limite, na h buffers livres, ocorre um timeout, tablespace offline e read only, tablespace begin backup. LGWR (Log Writer) - Executa gravaes seqencial do buffer de redo log no arquivo de redo log on-line quando: uma transao submetida a commit, quando um-tero do buffer submetida

a commit, quando h mais de 1mb de alteraes registrado no buffer de redo log. Como o redo necessrio para a recuperao, o LGWR confirma a operao de commit somente aps a gravao do redo em disco. SMON (System Monitor) - Quando ocorre uma falha na instncia Oracle, as informaes contidas na Sga que no foram gravadas em disco sero perdidas. Por exemplo, uma falha no sistema operacional provoca uma falha na instncia. Aps a perda da instncia, o processo de segundo plano smon recupera automaticamente a instncia quando o banco reaberto. A recuperao de uma instncia consiste em rollforward os dados no foram gravados no disco devido a perda da sga, o smon l o arquivo de redo log on-line e aplica as alteraes registradas nos arquivos aos blocos de dados. Abertura do banco de dados para que os user possam efetuar logon Rollback de transao no submetidas a commit. Essas transaes so efetuadas pelo smon ou pelos processos individual do servidor medida que eles acessam dados. PMON (Process Monitor) - O Pmon faz uma limpeza aps ocorrerem falhas em processos ele executa as sequintes aes : Faz roolback da transao atual do user. Listas bloqueios de tabela ou linha Reinicializa dispatchers inativos CKPT (Checkpoint) - Responsvel por sinalizar o dbwn em checkpoints, atualizar as informaes de checkpoint nos cabealhos dos arquivos de dados, atualizar as informaes de checkpoint nos arquivos de controle. A cada trs segundos, o processo ckpt armazena dados no arquivo de controle para identificar o local (checkpoint) no arquivo de redo log on-line em que a recuparao deve comear . Existem alguns processo de segundo plano opcional como por exemplo o ARCn (Archiver) processo de segundo plano que armazena os redo logs on-line quando modo ARCHIVELOG definido Embora seja essencial para recuperar um banco de dados aps a perda de um disco. medida que os arquivos de redo log on-line so preenchidos, o servidor oracle comea a gravar no prximo arquivo de redo log on-line. A este processo de troca de arquivo podemos denominar uma alternncia de log. OBS.: UMA DAS DECISES IMPORTANTE QUE UM DBA DEVE TOMAR SOBRE CONFIGURAR O BANCO DE DADOS PARA OPERAO NO MODO ARCHIVELOG OU NOARCHIVELOG. No modo noarchivelog, os arquivos de redo log on-line so sobregravados sempre que ocorre uma alternncia de log. Dessa forma possvel recuperar os dados submetidos a commit. Se ouver uma falha de instncia, somente a sga ser perdida. No modo archivelog, os grupos inativos de arquivos de redo log on-line preenchidos devero ser arquivados antes que possam ser reutilizados. Geralmente um banco em produo numa empresa configurado para execuo no modo archivelog.

You might also like