Você está na página 1de 16

UNDERSTANDING ORACLE

PROCESS ARCHICTECTURE
Processo é um mecanismo do sistema
operacional que pode realizar uma série
de etapas.

No Oracle, os processos são divididos da


seguinte forma:

• Client Process - roda uma aplicação ou


uma ferramenta com código Oracle;
• Oracle Process - é uma unidade de
execução que roda o código Oracle
Database. Oracle Process é formado
por background process e server
process.

SERVER PROCESS

Executa um tarefa baseada na requisição


do cliente. O Oracle Database cria um
server process para atender a uma
requisição de um client process
conectado à instância. Um cliente
process sempre se comunica com um
database através de server process
separados.

Dedicated Server Processes as conexões


clientes estão associadas com um e
somente server process.

Em Shared Server Process conecta em um


sob um rede para o dispatcher process
e não a um server process. Por
exemplo, 20 clients process podem se
conectar a um único dispatcher process.
BACKGROUND PROCESS
Iniciam com os startup da instância e
executam uma séria de tarefas, como
recuperação da instância, limpeza de
processos, escrita de redos buffer para
o disco, etc.
✓ Processos background são parte da
instância de banco de dados e
executam tarefas requeridas para
operar o database e maximizar a
performance para múltiplos usuários;
✓ Cada processo background executa
uma tarefa única, mas trabalha com
outros processos;
✓ Os processos são criados
automaticamente quando a instância é
iniciada;
✓ Os processos background obrigatórios
para minimamente rodar a instância de
banco de dados Oracle são:
• PMON (Process Monitor Process). Verifica o
ambiente para identificar processos que morreram e
coordena a limpeza dos mesmos;

• PMAN - Process Manager Process. Gerencia


diversos processos background incluindo shared
servers, pooled servers e job queue process;
• LREG - Listener Registration Process. Registra a
instância com os listeners, notificando sobre
instâncias e services;

• SMON - System Monitor Process. Executa tarefas


críticas, tais como recuperação da instância e de
transações mortas, cria e gerencia metadados de
tablespaces temporários, recupera espaços órfãos
utilizados de segmentos temporários, limpa dicionário
de dados de estados inconsistentes e mantém o
tempo do SCN que mapeia a tabela utilizada para
suportar os características de Oracle Flashback. Em
ambientes RAC, o SMON de uma instância pode
executar a recuperação de outras instâncias que tem
apresentado falha;

• DBWn - Database Writer Process. Escreve


blocos modificados do Database Buffer Cache para
os Data files;
• CKPT - Checkpoint Process. Sinaliza um checkpoint
o processo DBWn e atualiza todos os datafiles e
controlfiles do database para indicar o ponto mais
recente de checkpoint;

• MMON - Manageability Monitor Process. Executa ou


agenda diversas tarefas gerenciais, como por
exemplo snapshots de AWR(Automatic Workload
Repository) e ADDM(Automatic Database Diagnostic
Monitor);

• MMNL - Manageability Monitor Lite Process. Executa


tarefas relacionadas à gerência, incluindo métricas
computacionais de história de sessões ativas;
• RECO - Recoverer Process. Resolve transações
distribuídas que estão pendentes devido a uma falha
de rede ou falha de sistema. Basicamente, resolve as
informações pendentes na tabela de transações;

• LGWR - Log Writer Process. Escreve entradas do


Redo Log Buffer sequencialmente para os Redos Log
Files.
✓ Alguns processos adicionais que são
comuns:
• ARCn - Archiver Process - Copia o conteúdo dos redo
log files para o arquivamento, quando os redos estão
cheios ou quando ocorre um log switch;
• CJQ0 - Job Queue Coordinator Process. Seleciona
os jobs que precisam rodar do dicionário de dados e
cria jobs slave para rodar os jobs;
• RVWR - Recovery Writer Process - Escreve dados
do flashback para a área de flashback logs na
recovery area;

• FBDA - Flashback Data Archive Process - Arquiva o


histórico de linhas das tabelas trilhadas dentro dos
flashback archives, organiza e retém;

• SMCO - Space Management Coordinator Process.


Coordena a execução de várias tarefas de
gerenciamento de espaço, como por exemplo,
alocação proativa e recuperação de espaço. Para
realizar a tarefa, gera dinamicamente os processos
slave Wnnn.
✓ Alguns parâmetros slave que são parâmetros background:
• Dnnn - Dispatcher Process. Executam comunicação de rede em uma arquitetura
compartilhada(shared server). Os clientes se conectam a um processo
dispatcher, que cria circuito virtual para cada conexão;
• Snnn - Shared Server Process- Estabelece conexões em arquitetura
compartilhada(shared server). O shared server lê os dados do circuito virtual e
executa as tarefas necessárias do banco de dados para completar a requisição.

show parameter DISPATCHERS


show parameter SHARED_SERVERS
show parameter MAX_SHARED_SERVERS
show parameter LOCAL_LISTENER
show parameter REMOTE_LISTENER

Referências:

https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/background-
processes.html#GUID-86184690-5531-405F-AA05-BB935F57B76D
https://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/poster/OUTPUT_poster/
poster.html
https://www.oracle.com/webfolder/technetwork/tutorials/architecture-diagrams/19/pdf/db-19c-
architecture.pdf
https://docs.oracle.com/en/database/oracle/oracle-database/19/cncpt/process-
architecture.html#GUID-85D9852E-5BF1-4AC0-9E5A-49F0570DBD7A

Você também pode gostar