Pular para o conteúdo principal

Outros Processos de Segundo Plano - Estruturas de Memória no Oracle


#37
Neste post será apresentado outros processos que ficam ativo no segundo plano. Muitos desses processos iniciam quando o banco de dados é instânciado e ficam ativos até o banco de dados ser desligado. Como são breves as informações sobre cada processo, as informações aqui serão idênticas ao livro OCA do John Watson, não irei resumir ou adicionar informações de outras fontes, conforme faço nos demais posts.

Para que você possa listar os processos ativos no seu banco de dados, execute a seguinte instrução SQL.

SELECT program FROM v$process ORDER BY program;

Agora vamos conhecer esses processos:

- CJQ0 , J000 > Gerenciam os jobs agendados para executarem periodicamente. O coordenador da fila de jobs, CJQn, os monitora e envia para um dos vários processos da fila de jobs, Jnnn, para execução. O mecanismo de agendamento de jobs será abordado no segundo exame OCP.

- D000 > É um processo dispatcher que enviará chamadas SQL para os processos de servidores compartilhados, Snnn, se o mecanismo de servidores compartilhados estiver ativado.

- DBRM > O database resource manager (gerenciador de recursos de banco de dados) é responsável pela configuração dos planos de recursos e outras tarefas relacionadas ao Resource Manager. O uso do Resource Manager é abordado no segundo exame da OCP.

- DIA0 > O diagnosability process zero (processo de diagnosticabilidade número zero) é responsável pela detecção de travamento e resolução de deadlock.

- DIAG > O diagnosability process (processo de diagnosticabilidade - sem número zero) executa dumps de diagnósticos e comandos oradebug (oradebug é uma ferramenta para investigar problemas em uma instância).

- FBAR > O flashback data archiver process (processo de arquivamento de dados de flashback) arquiva as linhas de histórico de tabelas rastreadas em arquivos de dados de flashback. Esse é um recurso para garantir que sempre seja possível consultar dados como eram em algum momento no passado.

- PSP0 > Process Spawner (gerador de processos) tem a tarefa de criar e gerenciar outros processos do Oracle e não é documentado.

- QMNC , Q000 > O queue manager coodinator (coordenador do gerenciador de filas) monitora as filas no banco de dados e comanda os processos Qnnn a incluir e excluir mensagens nessas filas e a partir delas. As filas podem ser criadas por programadores (talvez comoo um meio das sessões se comunicarem) e também são usadas internamente. O Streams, por exemplo, usa filas para armazenar transações que precisam ser propagadas para bancos de dados remotos.

- SHAD > Esse processo denominado TNS V1-V3 em um sistema Linux. São os processos de servidor que dão suporte às sessões de usuário. A quantidade desse processo é de acordo com a quantidade de sessões de usuário ativas.

- SMCO , W000 > O space management coodinator process (processo coordenador de gerenciamento de espaço) coordena a execução de várias tarefas relacionadas ao gerenciamento de espaço. Ele cria dinnamicamente processos slave (Wnnn) para implementar a tarefa.

VKTM - O virtual keeper of time (administrador virtual de tempo) é responsável pelo controle de tempo. Mais complicado do que se poderia pensar, especialmente em um ambiente clusterizado.

Se tiverem dúvidas realizem um INSERT nos comentários e depois dê um COMMIT que depois respondo.

Abraço e bons estudos.

Comentários

Postagens mais visitadas deste blog

Conhecendo a arquitetura do Banco de Dados Oracle

#15 Vamos focar mais no ambiente de banco de dados mais comum, que é uma instância em um computador, abrindo um banco de dados armazenado em discos locais. Sempre que for mensionado instância, esta se referindo ao banco de dados em funcionamento. Um banco Oracle é composto por duas estruturas, uma lógica e uma física. A estrutura lógica é chamada de instância e composta por estruturas de memória e processos, a sua existência é temporária na memória RAM e CPU e fica ativa enquanto o banco Oracle estiver ligado, se desligar o banco Oracle toda a informação ou vestígios de sua existência será apagado da memória, ao ligar o banco Oracle a instância é carregada novamente na memória. Os processos que compõem a instância trabalham em segundo plano e fica ativo o tempo todo enquanto a instância estiver ativa. A estrutura física é onde fica armazenado as informações, e uma vez criado, ele existe até que o DBA deliberadamente decida exclui-lo. Quando um banco Oracle é iniciado, na me...

O Cache de Buffer do Banco de dados - Estruturas de Memória no Oracle

#21 Vamos conhecer um pouco mais sobre o Cache de Buffer de Dados. O Cache de Buffer de Dados é o local de trabalho do Oracle, é nessa área que ele executa as SQLs. A função dessa área é otimizar e melhorar o desempenho das instruções DML. O maior gargalo de um banco de dados é o I/O dos arquivos em disco. Mas antes de explicar como funciona o Cache de Buffer de Banco de dados, vamos entender rápidamente o que é bloco, desta forma você não fica perdido, os arquivos de dados que contém os registros que são as linhas da tabela, indices e outros objetos de dados são formatados em blocos de tamanho fixo, o DBA pode definir um tamanho para esses blocos ou deixar de forma automática. A quantidade de linhas por bloco é indefinida, pois, as linhas possuem comprimento variável, o comprimento desta linha dependerá do número de colunas e os tipos de informações definidos para a tabela. De acordo com tamanho das linhas, pode haver várias linhas por bloco ou uma linha pode se estender por vár...

Shared Pool - Estruturas de Memória no Oracle

#23 O Shared Pool é considerada umas das estruturas de memórias mais complexas da SGA, ela é dividida em dezenas de subestruturas e todas são gerenciadas internamente pelo Oracle. Mas nesse momento vamos citar apenas os 4 principais componentes desta estrutura, as demais serão analizadas posteriormente. Quando uma aplicação executa uma DML, vários processos internos no Oracle são realizados até o retorno do resultado para o usuário. E esses 4 componentes tem participação direta na execução da DML e com isso gerando um bom desempenho do banco de dados. Os 4 principais componentes são: - O Cache de Biblioteca - O Cache de Dicionário de Dados - A Área PL/SQL - O Cache de Resultados de Funções PL/SQL e Consultas SQL Agora, vamos conhecer um pouco mais de cada um. - O Cache de Biblioteca (library cache) Todas instruções DML enviadas pela aplicação devem ser analizadas pelo Oracle. Quem realiza essa análise é o parse, o parse converte o código escrito pelos progra...