Utilizando o Oracle Autonomous Transaction Processing

Por Alex Zaballa Oracle ACE director
Publicado em abril 2019

Revisado por Juan Pablo Guizado




De acordo com a Oracle, o Oracle Autonomous Transaction Processing (ATP) é um serviço da Cloud que fornece um banco de dados fácil de usar, totalmente autônomo, com escala elástica, rápido desempenho e não exige administração do banco de dados.

Este serviço é projetado para suportar as ferramentas padrão SQL e fornece todo o desempenho do banco de dados líder de mercado em um ambiente que é ajustado e otimizado para cargas de trabalho do tipo OLTP.

Para testar o serviço, você pode assinar uma conta trial, que dará direito a 300 dólares em créditos válidos por 30 dias.

Para isso, basta clicar no botão “Try for Free” em https://cloud.oracle.com e seguir os passos:




Após receber os dados de sua conta trial por e-mail, você pode logar clicando no link “Sign In” em https://cloud.oracle.com:




O nome da conta é o mesmo informado em “Cloud Account Name” durante a solicitação do “trial”:




Após isso, basta informar seu usuário e senha (recebidos por e-mail):




Ao logar, você será direcionado para a tela principal do OCI.

Já na tela principal, temos a opção de criar o serviço “Autonomous Transaction Processing”:




Clicando no canto superior esquerdo, o menu principal é exibido:




 

Criando o seu primeiro banco de dados no Autonomous Transaction Processing



Ao clicar em “Autonomous Transaction Processing” será aberta a tela abaixo, onde deve-se informar:

  • Compartment → Criado previamente e serve para isolar os recursos dentro da Cloud. Podendo ter, por exemplo, um compartment para desenvolvimento e outro para produção.
  • Display Name → Um nome fácil para identificar seu serviço.
  • Database Name → Nome do banco de dados. Deve possuir até 14 caracteres (letras e números).
  • CPU Core Count → Quantidade de CPUs. Atualmente é possível utilizar até 128 cores.
  • Administrator Credentials → Senha do administrador do ambiente.
  • License Type → Aqui você escolhe se irá pagar pelas licenças na Oracle Cloud ou se a sua empresa já possui as licenças necessárias.




Ao clicar no botão “Create Autonomous Transaction Processing” você poderá acompanhar o provisionamento do serviço:






Nos meus testes, em cerca de 25 minutos o serviço estava provisionado e pronto para uso:




Para acessar o serviço via SQL é necessário fazer o download da Wallet clicando em “Service Console”:




Será necessário informar a senha do administrador do ambiente, que foi informada durante a criação do serviço:




Para acessar o banco de dados via SQL Developer, basta adicionar uma conexão do tipo “Cloud Wallet”, apontando para o arquivo zip que fizemos download no passo anterior.

Utilizamos o usuário ADMIN e a senha informada na criação do serviço.

Como podemos ver, teremos 5 opções pré-definidas de serviço para conexão:

  • dbatp01_LOW → Com essa conexão as sessões terão prioridade baixa quando o sistema estiver "sob pressão por recursos". Este serviço não permite a utilização de paralelismo.

  • dbatp01_MEDIUM → Com essa conexão as sessões terão prioridade média quando o sistema estiver "sob pressão por recursos". Este serviço permite a utilização paralelismo, limitado a 4.

  • dbatp01_HIGH → Com essa conexão, as sessões terão prioridade alta quando o sistema estiver "sob pressão por recursos". Este serviço permite a utilização paralelismo.

  • dbatp01_TP → Este é o serviço tipicamente utilizado pelas aplicações. Este serviço não permite a utilização de paralelismo.

  • dbatp01_TP_URGENT → Este é o serviço utilizado pelas aplicações que necessitam prioridade mais alta de processamento. Este serviço permite a utilização de paralelismo.




Para verificar que o serviço está ok, irei rodar um SQL no schema Oracle Sales History (SH):




 

Importando dados para o Oracle Autonomous Transaction Processing



Alguns métodos suportados:




Neste primeiro exemplo, vamos utilizar o SQL Developer e importar um arquivo CSV.

Para isso, basta clicar na sua conexão e selecionar “Import Data”:




Selecionar o seu arquivo e formato:




Selecionar o método de “Import” e informar o nome da tabela:




Selecionar as colunas:




Fazer o mapeamento das colunas e tipos de dados:




Importar os dados:




Ao final, verificar se os dados foram importados:




Utilizando o “Service Console”, podemos acompanhar a performance do nosso serviço:





Também é possível acompanhar individualmente cada SQL que está sendo executado:




Podemos ver o plano de execução e estatísticas desse SQL:





Utilizando a opção “Scale UP/Down”, é possível aumentar ou diminuir o número de CPUs e storage:





O que achei mais interessante, é que meu SQL continuou rodando durante a operação de Scale. Essa operação é totalmente online:




SQL em execução durante o scale:




SQL em execução na console durante o scale:




 


Acessando o Oracle Autonomous Transaction Processing via SQLPlus



É possível acessar o seu PDB através do SQLPlus. Para isso, basta descompactar o wallet e copiar alguns arquivos para o seu Oracle Client:




Conteúdo da wallet:




Basta você copiar 3 arquivos, o tnsnames.ora, sqlnet.ora e cwallet.sso para o seu Oracle Client:




Conteúdo do SQLNET.ORA:




Conteúdo do TNSNAMES.ORA:




Acessando via SQLPlus:




 


Importando dados para o Oracle Autonomous Transaction Processing utilizando o Data Pump



É necessário criar um usuário e gerar um “Authentication Token”.

Criando o usuário:




Gerando o “Token”:





Token” gerado com sucesso:




Após isso, atribuir essa credencial ao seu banco de dados:





Criar um Bucket e fazer upload do seu arquivo DMP para a Cloud:







Após isso, basta rodar o IMPDP informando o caminho do seu bucket:

impdp userid=admin/sua_senha@dbatp01_high  remap_schema=TEST_USR_MIG:admin schemas=TEST_USR_MIG  
remap_tablespace=TBS_DATA:DATA,TB_TEST_IDX:DATA directory=data_pump_dir  
dumpfile=default_credential:https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/
alexzaballa2019/ATPLAbZabBucket/TEST_USR_MIG_PDB_MIG_NEW.dmp logfile=data_pump_dir:
TEST_USR_MIG_PDB_MIG_NEW.log 





Referências:

https://docs.oracle.com/en/cloud/paas/atp-cloud/index.html




Alex Zaballa, formado em Análise de Sistemas, é especialista em Banco de Dados Oracle com sólidos conhecimentos em Servidores de Aplicação e Sistemas Operacionais; trabalha com Oracle há 19 anos, é Oracle ACE Director, certificado OCM Database 12c/MAA/11G/Cloud e conta com mais de 300 outras certificações em produtos da Oracle. Alex também é membro do Groupo de Usuários Oracle do Brasil (GUOB), fundador do Grupo de Usuários Oracle de Angola (GUOA) e membro do time OraWorld.

Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.