Buscar

Aula 2 - Arquitetura do Oracle

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

/
Administração de Banco de Dados III
Aula 2: Arquitetura do Oracle
Apresentação
Esta segunda aula da disciplina Administração de Bancos de Dados III é uma apresentação da arquitetura de referência do
Oracle Database. Logo, vamos aprender alguns conceitos fundamentais para compreensão e uso do Oracle.
Nesta aula serão apresentados alguns diagramas que vão nos mostrar os principais componentes dessa arquitetura e
como eles se integram para fornecer a capacidade de armazenamento e processamento de consultas no Oracle.
Objetivo
Identi�car os principais componentes do Oracle;
Descrever os principais componentes do Oracle com base em diagramas de arquitetura e analisar sua integração
entre si;
Descrever as mudanças arquiteturais na versão 12c quanto a multitenancy.
Introdução
Esta aula está dividida em duas partes.
1
Primeira parte
vamos estudar os principais componentes da arquitetura do
Oracle, incluindo as áreas de memória e os processos que
fazem uso dessas áreas.
2
Segunda parte
vamos examinar a versão 12c e a mudança arquitetural
realizada na organização dos bancos de dados. Essa foi
uma mudança importante no curso da evolução do Oracle,
que trouxe uma série de benefícios para a administração do
SGBD.
/
No estudo da arquitetura de uma solução importa compreender como esses componentes trabalham juntos e, no caso
especí�co do Oracle, como as solicitações ao SGBD são resolvidas pela integração entre os componentes.
Durante a aula, é importante que você mantenha o foco no caminho que os dados percorrem para que o SGBD retorne o
resultado de uma consulta ou execute uma atualização. Em uma consulta, os dados que estão nos arquivos são transferidos
para áreas de memória. Em uma atualização, os dados são atualizados em memória e, em seguida, transferidos para os
arquivos de disco e arquivos de log de transações.
Conceitos básicos
Os conceitos de banco de dados e instância de banco de dados do Oracle são um pouco diferentes para aqueles que, como
você, já estudaram esses mesmos conceitos para outros SGBDs.
Banco de dados
Tradicionalmente, o banco de dados refere-se aos arquivos em disco do Oracle e a instância do banco de dados refere-se às
estruturas em memória que operam o banco de dados. Assim, o banco de dados inclui os arquivos em que �sicamente estão
os dados e estruturas de acesso aos dados, os arquivos de log de transações e os arquivos de controle que serão utilizados
pela instância do banco de dados para subir as estruturas em memória.
Instância
A instância, por sua vez, contém os processos que rodam em background e recebem e processam as solicitações dos
usuários, utilizando para isso uma série de mecanismos dispostos em áreas de memória bem de�nidas, como SGA (System
Global Area) e PGA (Program Global Area).
Comentário
Com o lançamento da versão 12c isso mudou. Uma nova arquitetura tornou possível a implantação de bancos de dados diversos
sob o gerenciamento de uma única instância. Conforme veremos em detalhes durante a aula, há benefícios concretos nessa
mudança para o dia a dia do DBA Oracle.
Independentemente da versão, uma conexão ao Oracle é estabelecida a partir de um descritor que inclui o listener e o serviço. Um
banco de dados Oracle pode ter vários serviços. Para usar um deles o cliente primeiramente conecta-se ao listener, informando
qual serviço deseja utilizar.
 Fonte: Oracle (2020).
javascript:void(0);
/
Listener
O listener devolve a requisição informando o endereço do dispatcher associado à instância do banco de dados.
Dispatcher
O dispatcher encaminha a solicitação de conexão para uma �la associada a um pool de processos Server. A conexão é
associada a um desses processos e é estabelecida.
Dica
Acesse a referência interativa do Oracle no endereço
https://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/poster/OUTPUT_poster/poster.html e abra a guia
Database Architecture. Aí está um diagrama de arquitetura do Oracle, interativo, onde você pode clicar sobre os componentes para
vê-los com mais detalhes e abrir a documentação correspondente.
Diagrama de arquitetura
Inicialmente, identi�que no diagrama dois dos principais componentes dessa arquitetura, a SGA (System Global Area) na parte
superior central e a PGA (Program Global Area) na parte inferior central. Na SGA residem as estruturas em memória utilizadas
para a manutenção de dados lidos a partir do disco e alterados pelos processos. Dentro da SGA você pode identi�car regiões
bem delimitadas.
 Fonte: Oracle (2020).
javascript:void(0);
javascript:void(0);
/
System Global Area (SGA)
Observe a imagem a seguir.
 Fonte: Oracle (2020).
Database Buffer Cache
No Database Buffer Cache estão os blocos de dados lidos do disco. Alguns deles podem ter sido alterados por processos em
execução. Interessante notar que o tamanho padrão do bloco de dados é 8 KBytes, mas é possível alocar blocos de outros
tamanhos, menores e maiores, por conta de tablespaces construídas com tamanhos de bloco diferentes.
Outros buffers
Note dois outros buffers ao lado do Database Buffer Cache:
Clique nos botões para ver as informações.
O Flashback Buffer é utilizado quando a funcionalidade de Flashback Queries (consultas com timestamp para recuperação
de valores passados), lançada na versão 9i, está habilitada. Neste caso, o processo RVWR (Recovery Writer) está ativo e
copiando alterações do Buffer Cache para este Flashback Buffer, e daí para o Flashback Database.
Flashback Buffer 
Já o Redo Log Buffer, à direita do Database Buffer Cache, é um buffer circular que mantém as alterações DML e DDL
realizadas na instância do banco de dados. Com ele, o Oracle é capaz de recuperar as transações executadas e que não
tenham sido efetivadas no banco de dados, como nos casos em que ocorre falha do servidor e é necessário que o banco
de dados reexecute as transações que já haviam sido con�rmadas antes da falha, mas que não tinham sido
descarregadas em disco. Note que esse buffer está conectado ao LGWR (Redo Log Writer), que é o processo que escreve
essas alterações nos arquivos de log em disco.
Redo Log Buffer 
Pools
Ainda dentro da SGA, para além das áreas de buffers, você pode encontrar os pools. São três os principais pools no diagrama:
Shared Pool Large Pool Java Pool
javascript:void(0);
/
Shared Pool
É o mais utilizado dos pools. nele estão a lista
de sessões ativas no banco de dados (ASH
Buffers), os planos de execução de cada
solicitação SQL emitida (Shared SQL Area), o
dicionário de dados (Data Dictionary Cache),
e a área reservada para as instâncias de um
banco de dados distribuídas em um cluster
RAC (Global Resource Directory), que
mantém um cache central (Gobal Cache
Service) e as informações sobre
en�leiramento de solicitações nas várias
instâncias (Global Enqueue Service), ambos
apoiados por um diretório central, o Global
Resource Directory.
Large Pool
É utilizado para solicitações que necessitam
de espaço maior do que o oferecido por
padrão no Shared Pool. Outra diferença
importante é que no Large Pool não há
manutenção de uma lista LRU (Last Recently
Used) que permita ao SGBD circular os
buffers alocados. No Large Pool os buffers só
são desalocados quando de fato o processo
correspondente libera o buffer.
Java Pool
Recebe as estruturas de controle da JVM
(Java Virtual Machine) e as variáveis de
sessão de todo código Java que está em
execução na JVM.
Outros pools
Você pode notar ainda dois outros pools no diagrama:



/
Shared I/O Pool
É utilizado para carregar large objects se a
opção no cache está con�gurada para a
coluna correspondente. 
Stream Pool
É utilizado para captura e utilização de
streams de dados, utilizados, por exemplo,
pelo Oracle GoldenGate.
É importante para o DBA Oracle compreender que a arquitetura do SGBD
privilegia áreas de memória que possuem requisitos especí�cos, como as
áreas exclusivas para execução de código SQL e de código Java que vimos
até aqui. O administrador, tendo isso em mente, sabe que precisa revisitar
constantemente as con�guraçõesdessas áreas de memória especializadas
da instância Oracle, a �m de medir sua utilização e concluir sobre a
necessidade de alteração dos parâmetros de con�guração.
Programa Global Area (PGA)
Na PGA estão as estruturas em memória reservadas para cada processo em execução, que armazenam os dados para
controle do processo. Essas áreas são destinadas tanto para processos do servidor quanto para processos de usuários.
Quando você se conecta a um banco de dados Oracle por meio de um serviço listener, um processo é criado no SGBD para
gerenciar essa conexão. De imediato, uma área de memória dedicada a esse processo é criada na PGA; essa área é acessada
exclusivamente pelo processo gerenciador da sessão.
Os processos do SGBD que são executados em background também contêm sua área reservada na PGA. Como podemos ver
na imagem a seguir dentro de cada área reservada a um processo há três áreas distintas:
 Fonte: Oracle (2020).
javascript:void(0);
/
1
SQL Work Area
Tem áreas especí�cas para sort, para hash joins e para
mesclagem de índices bitmapp.
2
User Global Area
Contém as áreas para armazenamento de valores de
variáveis de sessão, que são aquelas variáveis que
controlam comportamentos especí�cos da sessão do
usuário, como o formato de datas ou a versão do
otimizador. No pool especí�co para sessões OLAP �cam as
variáveis de sessão especí�cas para execução de consultas
a cubos, por exemplo.
3
Private SQL Area
Nela estão as variáveis bind dos procedimentos SQL e
variáveis temporárias utilizadas para execução do código
SQL.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Processos
As caixas pretas e cinza que circundam o diagrama representam os processos do Oracle executados no nível do sistema
operacional. Em instalações Linux você poderá encontrá-los separadamente, enquanto em instalações Windows eles rodam
como threads dentro do processo principal, Oracle.exe, e você pode encontrá-los utilizando uma console MMC do Windows
com Oracle Managed Objects. Faremos isso na aula de Instalação do Oracle.
Vamos trabalhar com esta outra imagem da documentação da Oracle, que mostra mais de perto a interação entre os principais
processos e as regiões de memória que vimos anteriormente.
/
 Fonte: Oracle (2020).
Comentário
Note que existem duas categorias principais de processos, os que trabalham diretamente na SGA e outros que trabalham na faixa
de interação entre a PGA e a SGA. Vamos começar por aí. Quando o processo cliente emite uma solicitação com uma consulta
SQL, caso os dados já estejam em cache, eles são devolvidos ao solicitante; caso contrário, são carregados do disco para
memória a partir de um processo Server, criado especi�camente para o cliente e cuja função é ler os blocos de dados necessários
do disco para os buffers em memória. Note que é esse processo que carrega também todas as estruturas necessárias à
execução da solicitação na PGA.
Checkpoint e Database Writer
Caso a solicitação seja uma alteração de dados, ela é primeiramente realizada em memória. De tempos em tempos, o
processo CKPT (Checkpoint) dispara a gravação desses dados alterados em memória. Essa gravação é executada pelo
processo DBW, que descarrega esses buffers nos arquivos de dados e garante que as alterações realizadas em memória sejam
persistidas em disco. Note que você pode ter vários processos DBW em execução simultaneamente.
Logo a seguir, o DBW informa ao CKPT que pode emitir um checkpoint, isto é, que pode atualizar os arquivos de controle
informando que aqueles dados foram gravados.
E como são identi�cados os dados gravados?
javascript:void(0);
/
1
Um SCN (System Change Number) funciona como um relógio para o Oracle. Cada transação é marcada com um SCN e
todas as alterações realizadas em uma mesma transação possuem o mesmo SCN. Se uma transação possui um SCN
menor do que outra transação, podemos concluir que a primeira transação aconteceu antes da segunda.
2
Quando um checkpoint é emitido pelo processo CKPT, os arquivos de controle são atualizados com um SCN e isso
signi�ca que todas as transações anteriores a esse SCN foram persistidas em disco.
3
O processo de Checkpoint (CKPT) também veri�ca, de três em três segundos por padrão, a quantidade total de memória
em uso na PGA. Caso esteja maior do que a con�guração PGA_AGGREGATE_LIMIT, ele dispara uma série de ações para
reduzir o volume alocado e diminuir a pressão sobre essa área da memória.
Log Writer e Archive Log
Paralelamente a essa gravação de dados pelo DBW, você também verá os buffers de redo log sendo atualizados. Eles contêm
as instruções de atualização que o processo do cliente emitiu e que são encaminhadas para os arquivos de redo log por meio
do processo de escrita de log (LGWR). Se você optar por arquivar esses logs, terá os processos ARCH (Archive Log) em
execução. Veja a imagem a seguir.
 Fonte: Oracle (2020).
Ela mostra bem a interação entre os processos e os arquivos em disco. Você pode observar o �uxo de dados dos database �les
javascript:void(0);
/
para a memória a partir dos processos Server. Pode também con�rmar o que acontece no sentido inverso, quando os
processos DBW armazenam os dados alterados em memória nos database �les. Ao lado, pode ver que as transações ainda
não con�rmadas e ainda presentes no Redo Log Buffer são persistidas nos Redo Log Files pelo processo LGWR e daí seguem
para os archives por meio do processo ARCH. Note também que tanto LGWR quanto ARCH utilizam os control �les.
Todo banco de dados Oracle tem pelo menos um control �le . Quando LGWR e ARCH executam suas atualizações, eles
gravam aqui as informações correspondentes, de maneira que os control �les tenham sempre as informações sobre o último
checkpoint realizado.
1
Recovery Writer
O processo RVWR é o responsável pelo gerenciamento dos buffers alocados na área de Flashback. O processo de
disponibilização desse recurso envolve diretamente um �ush da área de memória para arquivos de log especí�cos, �ashback
logs.
System Monitor
Os processos que acessam diretamente a SGA são os que estão à direita no diagrama . O System Monitor (SMON) é um dos
principais. Sua função primeira é recuperar uma instância em caso de falha. Para isso, ele mantém o sincronismo do SCN com
uma time table. Os SCNs utilizados para marcação de transações e emissão de checkpoints são gerados na SGA e mantidos
pelo SMON.
Vimos anteriormente, na seção sobre SGA, que o Redo Log Buffer
mantém as alterações DML e DDL realizadas na instância do banco
de dados. Esses são os registros de log das transações utilizados pelo
SMON para recuperar uma instância. Baseado nos SCNs das
transações e o último SCN con�rmado no banco de dados, o SMON é
capaz de refazer as transações que foram con�rmadas, mas não
persistidas.
Manageability Monitor
Os processos de monitoramento da gerenciabilidade apoiam a geração e manutenção de uma série de informações do SGBD,
incluindo consultas SQL executadas, estatísticas de uso dos recursos e desempenho.
https://estacio.webaula.com.br/cursos/go0680/aula2.html
/
MMON
Suporta o AWR (Automatic Workload
Repository), um repositório de carga de
trabalho que armazena dados sobre as
instruções SQL executadas no banco de
dados, como tempos de execução, plano
de execução utilizado e consumo de
recursos.

MMNL
Suporta o ASH (Active Session History)
que, como o próprio nome diz, armazena
um histórico das sessões do Oracle e é
utilizado pelo Enterprise Manager para
mostrar as sessões ativas. O ASH faz parte
de uma das options do Oracle, o
Diagnostics and Tuning pack.
Process Monitor
O processo PMON monitora os processos e gerencia as áreas de memória utilizadas por eles. Quando ocorre uma falha em um
processo de usuário, é o PMON que:
Libera as áreas da PGA reservadas
ao processo.
Limpa as áreas do Database Buffer
que estavam alocadas.
Libera seus bloqueios e remove o
PID (Process Identi�cation) da lista
de processos ativos.
A operação das estruturas de memória realizada pelo PMON pode ser demandada por outros processosdo sistema. Suponha
que o cliente que acessou o database e solicitou alterações em dados em uma transação, fez rollback. Para isso, os undo
records são utilizados para realizar o rollback da transação não con�rmada e o PMON é acionado para realizar as
desalocações nas áreas de memória e quaisquer liberações que sejam necessárias, como dos locks que estavam concedidos
ao processo no momento do rollback.
2
Comentário
Por último, é importante destacar o processo MMAN (Memory Manager). É ele quem faz o gerenciamento das alocações e
realocações dos endereços de memória associados a cada uma das regiões, monitorando seu uso e expandindo as áreas caso
necessário.
Multitenancy
Quando a Oracle lançou sua versão 12c, o foco era as implementações necessárias para implantação de bancos de dados em
nuvem. Você sabe que, quando falamos de nuvem, seja pública ou privada, estamos falando de requisitos como elasticidade e
escalabilidade, horizontal ou vertical, que garanta ao serviço estar sempre adequado à demanda.
Atenção
https://estacio.webaula.com.br/cursos/go0680/aula2.html
/
Para SGBDs, a monitoração da carga de trabalho é fundamental, enquanto o banco de dados e os recursos associados a ele
devem ser capazes de sofrer essa adequação sem interromper as respostas a solicitações de usuários.
A arquitetura do banco de dados Oracle que vimos até aqui não é preparada para nuvem. Por uma série de fatores, incluindo
especialmente os conceitos e as implementações existentes para banco de dados e instância de banco de dados, não atendem
aos requisitos citados. Para nuvem, é preciso que o SGBD implemente o conceito de multitenancy, isto é, a capacidade de
acomodar vários bancos de dados em um mesmo SGBD.
Por quê?
Exemplo
Suponha que você desenvolveu um software usando Java e Oracle. Você tem vários clientes e gostaria de fornecer o seu software
na nuvem. Isso, certamente, traz uma série de vantagens bastante competitivas para você. Então, você vai a um fornecedor de
nuvem, como a Amazon ou a própria Oracle, e solicita um banco de dados para o primeiro cliente que contratou seu novo serviço.
Para o seu segundo cliente, você vai precisar de um novo banco de dados porque você não consegue acomodar esse segundo
cliente no mesmo banco de dados do primeiro, a menos que você use outro esquema e isso poderia implicar alterações de
código, algo não desejável. Então, você contrata um segundo banco de dados e, em pouco tempo, tem dezenas ou centenas de
bancos de dados Oracle para administrar. É viável, mas com alto custo.
A versão 12c implementou a arquitetura multitenant, mostrada na imagem a seguir.
 Fonte: Oracle (2020).
javascript:void(0);
/
A primeira informação interessante que podemos extrair do diagrama vem do próprio título, Multitenant Container Database.
Nessa arquitetura, todos os bancos de dados são containers. Assim, CDB$ROOT, PDB$SEED, PDB_1 e PDB_n são containers e,
juntos, implementam um banco de dados multitenant, no qual o CDB (Container Database) é o banco de dados principal, que
contém outros bancos de dados PDB (Pluggable Database).
Comentário
A instância é única para todo o conjunto CDB e PDBs. Observe que a SGA, gerenciada pela instância, é compartilhada por todos os
bancos de dados. O mesmo ocorre para os processos que rodam em background, como PMON e SMON.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Todo container database possui um root database e um seed.
O root contém os objetos do sistema que
são compartilhados por todos os outros
databases. No diagrama você pode ver o
dicionário OBJ$, a DBA_OBJECTS (visão de
objetos do sistema) e pacotes de objetos
PL/SQL como DBMS_COMPRESSION ou
DBMS_CRYPTO, entre outros.
O seed é o template de banco de dados a
partir do qual todos os PDBs são criados.
Com relação aos PDBs, você pode observar que cada um deles contém seus próprios arquivos de dados contendo tablespaces
SYSTEM e SYSAUX, tablespaces associados aos esquemas de aplicações e tablespaces temporários. Observe também que
cada PDB contém seus usuários locais, incluindo seus próprios administradores, com roles e privilégios concedidos
localmente.
Um aspecto especialmente importante de um PDB é que você pode movê-lo para outro CDB. De fato, o nome “Pluggable”
aponta exatamente para esta característica. Por ser um container autocontido, você pode desplugá-lo do seu CDB atual e
plugá-lo em outro CDB, adicionando �exibilidade à solução oferecida. Veja a outra imagem a seguir.
/
 Fonte: Oracle (2020).
É importante compreender que a separação existente entre os PDBs tem
lógica. Fisicamente, continuamos tendo exatamente a mesma arquitetura
para o banco de dados, com os data �les, control �les, online redo log,
archives e �ashback log.
Comentário
Conforme comentamos no início da seção, a arquitetura multitenant trouxe uma série de benefícios, dentre os quais podemos
destacar a redução dos custos diretos com aquisição de licenças e dos custos de administração da plataforma, na medida em
que tarefas como atualização de versão e gerenciamento de backups são concentradas na instância CDB.
Atenção! Aqui existe uma videoaula, acesso pelo conteúdo online
Conclusão
O diagrama de arquitetura do Oracle oferece uma excelente visão sobre seus componentes e como eles funcionam juntos para
o gerenciamento de recursos e atendimento às solicitações de bancos de dados. Nesta aula você pôde compreender como o
Oracle resolve essas solicitações, desde a fase da conexão do cliente, uso das estruturas de memória, carregamento dos
dados em buffers, atualização dos dados, até a gravação em disco desses dados atualizados.
Em seguida, analisamos a proposta arquitetural da versão 12c. Nessa nova arquitetura, o Oracle passou a comportar vários
bancos de dados pluggable em uma única instância. Essa mudança trouxe benefícios relevantes para os administradores dos
bancos de dados Oracle, na medida em que pode-se tratar o encaminhamento de uma série de atividades administrativas,
como atualização, auditoria e backups, com maior produtividade.
javascript:void(0);
/
Atividade
1. Assinale a seguir a opção que não corresponde a um componente da arquitetura do Oracle.
a) Database Buffer Cache.
b) OLAP Pool.
c) Process Pool.
d) Redo Log Buffer.
e) Process Global Area.
2. Assinale a alternativa incorreta a respeito do funcionamento do Oracle.
a) Quando um cliente conecta-se ao Oracle, uma área de memória dedicada ao processo do cliente é criada na PGA; essa área é acessada
exclusivamente pelo processo gerenciador da sessão.
b) Os processos de monitoramento da gerenciabilidade apoiam a geração e a manutenção de uma série de informações do SGBD,
incluindo consultas SQL executadas, estatísticas de uso dos recursos e desempenho.
c) Quando um cliente que solicitou alterações em dados em uma transação faz rollback. os undo records são utilizados para realizar o
rollback da transação não confirmada e o PMON é acionado para realizar as desalocações nas áreas de memória.
d) O processo Checkpoint realiza a gravação de dados alterados em memória, descarregando os buffers nos arquivos de dados e
liberando os recursos alocados.
e) No Shared Pool, região interna da SGA, estão a lista de sessões ativas no banco de dados (ASH Buffers), os planos de execução de cada
solicitação SQL emitida (Shared SQL Area) e o dicionário de dados (Data Dictionary Cache).
3. Assinale a alternativa incorreta sobre a arquitetura Multitenant.
a) Na arquitetura Multitenant, todos os bancos de dados são containers. Assim, CDB$ROOT, PDB$SEED e até 253 PDBs são containers.
b) É possível mover um PDB para outro CDB.
c) Na arquitetura Multitenant só existe uma SGA.
d) O database root contém objetos do sistema que são compartilhados por todos os PDBs.
e) Multitenancy traz uma série de vantagens para os administradores Oracle, entre elas redução do custo de administração e tuning
automático dos bancos de dados.
Notas
Control file 1
Ele é um arquivo binário que contém uma série de informações sobre o database,como seu nome, sua data de criação, sua
estrutura física (nomes e localização dos arquivos de dados e arquivos de redo log), além do SCN corrente e das informações
de checkpoint.
Undo records 2
/
São registros especialmente mantidos pelo Oracle em undo segments que são persistidos em um tablespace especí�co do
sistema, chamado undo tablespace. Vamos ver mais sobre isso na aula de Instalação do Oracle.
Referências
LOGICAL Storage Structures. Oracle Help Center. Disponível em:
https://docs.oracle.com/database/121/CNCPT/logical.htm#CNCPT004. Acesso em: 3 set. 2020.
MANAGING Control Files. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/B19306_01/server.102/b14231/control.htm. Acesso em: 3 set. 2020.
MEMORY Architecture. Oracle Help Center. Disponível em:
https://docs.oracle.com/cd/E11882_01/server.112/e40540/memory.htm#CNCPT007. Acesso em: 2 set. 2020.
OVERVIEW of the Multitenant Architecture. Oracle Help Center. Disponível em:
https://docs.oracle.com/database/121/CNCPT/cdblogic.htm#CNCPT89257. Acesso em: 3 set. 2020.
PROCESS Architecture. Oracle Help Center. Disponível em: https://docs.oracle.com/cd/B19306_01/server.102/b14220/process.htm#i24686.
Acesso em: 2 set. 2020.
PUGA, S.; FRANÇA, E.; GOYA, M., 2013. Banco de Dados: Implementação em SQL, PL/SQL e Oracle 11g. São Paulo: Pearson. 332
p.
RAMAKHRISHNAN, R.; GEHRKE, J., 2002. Database Management Systems. 3rd. edition. New York: McGraw-Hill. 1098p.
WHAT Are You Backing Up? Oracle8 Backup and Recovery Guide. Disponível em:
https://docs.oracle.com/cd/A58617_01/server.804/a58396/ch2.htm. Acesso em: 3 set. 2020.
Próxima aula
Instalação do Oracle;
Con�guração básica do Oracle;
Utilização do Oracle SQL Developer.
Explore mais
Um site de referência para todo DBA Oracle é o Ask Tom. Há muito material em formato de perguntas e respostas, e também
vídeos sobre os mais diversos assuntos. Link: https://asktom.oracle.com/pls/apex/f?p=100:1000::::::
Procure por ask tom oracle architecture. Você vai encontrar um vídeo excelente sobre a arquitetura do Oracle e sua
implementação como containers Docker.
Explore esse vídeo! Você vai entender como a arquitetura multitenant está integrada à arquitetura Docker.
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);
javascript:void(0);

Mais conteúdos dessa disciplina