Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura Oracle 2 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura Oracle Objetivos da aula: Identificar os principais elementos da arquitetura de um banco de dados e de uma instância Oracle Entender o funcionamento Compreender os principais conceitos da arquitetura: banco de dados, instância, datafile, redo log file, background process, user process, server process, SGA, PGA, etc. 3 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura Oracle Servidor de banco de dados Oracle: SGBDR Banco de dados Conjunto de arquivos físicos Instância Conjunto de estruturas de memória e processos 4 Arquitetura Oracle – Anderson Rodrigo Farias Conectando ao servidor Client Middle tier Server Arquitetura multicamadas 5 Arquitetura Oracle – Anderson Rodrigo Farias Database files Overview Processos Instância System Global Area - SGA Background Process Arquivos 6 Arquitetura Oracle – Anderson Rodrigo Farias Conectando ao banco Conexão: Comunicação entre um usuário e uma instância Sessão: Tudo o que está entre o usuário e a instância, depois que a conexão foi estabelecida SQL> Select … Sessão Conexão Usuário User process Server process Sessão 7 Arquitetura Oracle – Anderson Rodrigo Farias Database Data files Online redo log files Control files Database buffer cache Shared pool Data dictionary cache Library cache PMONSMON Others Server process PGA Archived log files User process Instância RECO ARCn SGA DBWn Redo log buffer LGWRCKPT Interagindo... 8 Arquitetura Oracle – Anderson Rodrigo Farias Server Process e Database Buffer Cache Buffers: Pinned Clean Free or unused Dirty Database writer process Database buffer cache SGA Data files DBWn Server process 9 Arquitetura Oracle – Anderson Rodrigo Farias Database Arquitetura do servidor de banco de dados PMONSMON Others Data files Online redo log files Control files Instância RECOARCn DBWn LGWRCKPT Storage structures User process Server process Memory structures Processes Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer 10 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura de memória SGA Database buffer cache Redo log buffer Java pool Streams pool Shared pool Large pool PGA PGA PGA Background process Server process 1 Server process 2 Shared SQL area Library cache Data dictionary cache Other I/O buffer Response queue Request queue Free memory 11 Arquitetura Oracle – Anderson Rodrigo Farias Database Buffer Cache Parte da SGA Contém cópias de data blocks que são lidos dos data files É compartilhado simultaneamente por todos os usuários PMONSMON Others Instância RECOARCn DBWn LGWRCKPT Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer 12 Arquitetura Oracle – Anderson Rodrigo Farias Redo Log Buffer É um buffer reaproveitável e circular na SGA Contém informações sobre as alterações feitas no banco de dados Contém entradas de redo com informações para refazer as alterações feitas por meio de operações de DML e DDL PMONSMON Others Instância RECOARCn DBWn LGWRCKPT Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer 13 Arquitetura Oracle – Anderson Rodrigo Farias Shared Pool Parte da SGA que contém: Library cache Shared SQL area Data dictionary cache Estruturas de controle PMONSMON Others Instância RECOARCn DBWn LGWRCKPT Shared SQL area Library cache Data dictionary cache Other Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer 14 Arquitetura Oracle – Anderson Rodrigo Farias Alocação e reuso de memória na Shared Pool Um server process verifica a shared pool para saber se existe um comando idêntico na área de SQL compartilhada Um server process aloca uma área privada de SQLpara a sessão Server process Shared pool Shared SQL area Library cache Data dictionary cache Other 15 Arquitetura Oracle – Anderson Rodrigo Farias Large Pool Faz grandes alocações de memória para: I/O server processes Oracle Database backup e operações de restore Large pool I/O buffer Response queue Request queue Free memory Java pool Large pool Shared pool Database buffer cache Redo log buffer Streams pool 16 Arquitetura Oracle – Anderson Rodrigo Farias Java Pool e Streams Pool Java pool é a memória usada no servidor para todas as sessões que envolvem código Java e dados na JVM Streams pool é usada exclusivamente pelo Oracle Streams para: Armazenar a fila de mensagens do buffer Prover memória para o processo do Oracle Streams Java pool Streams pool 17 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura de processo User process Iniciado quando um usuário solicita uma conexão ao banco Database processes Server process: conecta à instância e é iniciado quando um usuário estabelece uma sessão Background processes: são iniciados quando a instância é iniciada e realizam funções específicas para manter a instância utilizável PMONSMON Others Instância RECOARCn DBWn LGWRCKPT PGA User process Server process Background processes Database buffer cache Shared pool Data dictionary cache Library cache SGA Redo log buffer 18 Arquitetura Oracle – Anderson Rodrigo Farias Database Writer Process (DBWn) Grava o conteúdo do database buffer cache para o disco: Assincronamente, enquanto faz outros processamentos Periodicamente para avançar o checkpoint Database buffer cache Database writer process Data files DBWn 19 Arquitetura Oracle – Anderson Rodrigo Farias LogWriter Process (LGWR) Grava o conteúdo do redo log buffer para um redo log file no disco Grava: Quando um user process comita uma transação Quando o redo log buffer chega a um terço Antes de um DBWn gravar o conteúdo dos buffers para o disco Redo log buffer LogWriter process Redo log files LGWR 20 Arquitetura Oracle – Anderson Rodrigo Farias Checkpoint Process (CKPT) Marca uma informação de checkpoint em: Controlfile Cabeçalho de cada data file Checkpoint process Data files Control fileCKPT 21 Arquitetura Oracle – Anderson Rodrigo Farias System Monitor Process (SMON) Faz o recovery no startup da instância Limpa segmentos temporários não usados (usados antes do shutdown) Instance Temporary segment System Monitor process SMON 22 Arquitetura Oracle – Anderson Rodrigo Farias Process Monitor Process (PMON) Faz recovery quando um user process falha Limpa o conteúdo do database buffer cache Libera os recursos usados pelo user process Monitora as sessões ‘em busca’ de timeout Registra dinamicamente os serviços dos listeners Process Monitor process Database buffer cache Failed user process UserPMON 23 Arquitetura Oracle – Anderson Rodrigo Farias Recoverer Process Usado com a configuração de banco distribuído (database links, por exemplo) Conecta automaticamente a outros bancos envolvidos em transações distribuídas Resolve automaticamente o problema de transações perdidas Remove quaisquer linhas relacionadas às transações perdidas Recoverer process in database A In-doubt transaction in database B RECO 24 Arquitetura Oracle – Anderson Rodrigo Farias Archiver Processes (ARCn) Copia os redo log files para a(s) unidade(s) disco depois que ocorre um log switch Pode juntar os redos e enviá-los para o standby Archiver process Destino do archiveCópia dos redo log files ARCn 25 Arquitetura Oracle – Anderson Rodrigo Farias Other Processes MMON: Executa tarefas de background relacionadas ao gerenciamento MMNL: Executa tarefas de gerenciamento em tempo de execução MMAN: Executa tarefas relacionadas ao gerenciamento automático de memória CJQ0: Roda jobs dos usuários, de processamento batch 26 Arquitetura Oracle – Anderson Rodrigo Farias Server Process e DatabaseBuffer Cache Buffers: Pinned Clean Free or unused Dirty Database writer process Database buffer cache SGA Data files DBWn Server process 27 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura dos arquivos - storage Online redo log files Password file Parameter file Archived redo log files Control files Data files Alert log and trace files Backup files 28 Arquitetura Oracle – Anderson Rodrigo Farias Estruturas lógica e física Database Lógica Física Tablespace Data file OS block Segment Extent Oracle data block Schema 29 Arquitetura Oracle – Anderson Rodrigo Farias Tablespaces SYSTEM e SYSAUX As tablespaces SYSTEM e SYSAUX são obrigatórias e criadas na criação do banco. Elas devem estar sempre on-line A tablespace SYSTEM é usada para armazenar dados das principais funcionalidades (tabelas do dicionário de dados, por exemplo) A tablespace auxiliar SYSAUX é usada por componentes adicionais do banco (como o repositório do Enterprise Manager) 30 Arquitetura Oracle – Anderson Rodrigo Farias Arquitetura: Sumário dos componentes estruturais Estruturas de memória: System Global Area (SGA): Database buffer cache, redo buffer, e vários pools Program Global Area (PGA) Estruturas de processos: User process e server process Background processes: SMON, PMON, DBWn, CKPT, LGWR, ARCn, e outros Estruturas de armazenamento: Lógica: Database, schema, tablespace, segment, extent, e Oracle block Física: Data files, control files, e redo log files 31 Arquitetura Oracle – Anderson Rodrigo Farias Finalizando.. Nessa aula, aprendemos a: Listar os principais componentes da arquitetura de um banco Oracle Explicar as estruturas de memória Descrever os background processes Fazer um paralelo entre as estruturas lógica e física Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31
Compartilhar