Histórico da Página
A Engenharia Protheus, em conjunto com a equipe da Oracle (responsável pela OCI - Oracle Cloud Infrastructure), realizou o trabalho colaborativo de homologação do Oracle Autonomous Transaction Processing (uma das modalidades do Oracle Autonomous Database), gerando melhores insights para a arquitetura computacional a ser utilizada com o Protheus.
Nesta página, constam os insumos obtidos dos testes de benchmark realizados com este banco de dados e ambiente na OCI.
Informações | ||
---|---|---|
| ||
Esta página traz informações sobre o uso do Protheus com o banco de dados Oracle Autonomous Database: Autonomous Transaction Processing, com arquitetura na nuvem pública OCI; quais configurações foram realizadas, pontos de atenção e outras informações relevantes ao assunto. Note que:
| ||
|
Sobre o Oracle Autonomous Transaction Processing (ATP)
O Oracle Autonomous Transaction Processing (ATP) é uma das modalidades de banco de dados Oracle Autonomous Database (ADB) em nuvem que elimina a complexidade de operar e proteger bancos de dados de alto desempenho. O serviço automatiza o provisionamento, configuração, ajuste, dimensionamento, aplicação de patches, criptografia e reparo de bancos de dados. Além disso, o serviço inclui todas as opções avançadas de banco de dados da Oracle, como clusters de aplicativos reais (RAC), multitenant, particionamento na memória, segurança avançada e compactação avançada. O serviço ATP está disponível no Oracle Cloud Infrastructure (OCI), Cloud Pública, e também em seu próprio data center no Exadata Cloud@Customer.
Diferenças entre o banco de dados tradicional e o Autonomous
Um banco de dados On-Premise demanda monitoramento constante e downtime (paradas) para manutenções; sejam estas no servidor ou no próprio software de banco de dados. Em resumo, a proposta do Oracle Autonomous Database é minimizar os riscos associados à interferência humana relacionados à itens como manutenções, escalonamento, configurações, atualizações e segurança; bem como incluir todas as opções avançadas de banco de dados da Oracle. Para mais informações sobre o Oracle Autonomous Transaction Processing, clique para expandir os tópicos de interesse. Veja também a página sobre o Autonomous Database e o Autonomous Transaction Processing.
Expandir | ||
---|---|---|
| ||
Provisionamento: Implementa bancos de dados tolerantes a falhas e altamente disponíveis em minutos. Dimensionamento automático: Escala os recursos de computação automaticamente para atender aos requisitos de desempenho e taxa de transferência sem nenhum tempo de inatividade. Permite a verdadeira experiência de pagamento por uso com escalonamento dinâmico online. Ajustes automáticos: Configura e ajusta bancos de dados automaticamente, mesmo quando os dados e o esquema mudam com o tempo. A configuração da memória, formatos de dados, índices e estruturas de acesso são otimizados automaticamente para melhorar o desempenho. Backups automatizados: Executa backups incrementais completos e diários semanais do banco de dados no armazenamento de objetos da Oracle e os retém por até 60 dias para restaurar e recuperar a qualquer momento. Reparação automática: Corrige falhas de hardware e software monitorando e prevendo falhas continuamente. As solicitações são redirecionadas imediatamente para dispositivos saudáveis, mantendo o desempenho do banco de dados. Failover automático: Elimina o tempo de inatividade do site mantendo uma cópia remota em tempo real de um banco de dados de produção e alternando automaticamente da cópia primária para a remota usando o Autonomous Data Guard. Clonagem rápida: Crie clones rápidos de todo o banco de dados ou apenas dos metadados, para iniciar rapidamente novos projetos. Crie clones a partir de instâncias de banco de dados em execução ou de um banco de dados de backup. |
Expandir | ||
---|---|---|
| ||
Criptografia sempre ativa: Fornece criptografia automática para todo o banco de dados e para backups com chaves de criptografia que você cria e controla. Isso garante que os dados estejam sempre seguros em repouso e em movimento. Correção automática: Corrige e atualiza bancos de dados para vulnerabilidades de segurança com tempo de inatividade zero. Os aplicativos continuam em execução conforme ocorrem os patches. Privacidade de dados: Permite que os administradores de banco de dados executem todas as tarefas administrativas sem nunca ver os dados do cliente. Bloqueia o acesso ao sistema operacional ou privilégios de administrador para evitar ataques de phishing. Segurança para dados confidenciais: O Oracle Data Safe, incluído no Autonomous Transaction Processing, torna mais fácil descobrir dados confidenciais, avaliar riscos de segurança, mascarar dados confidenciais e implementar e monitorar controles de segurança. Auditoria avançada: Registra todos os eventos com impacto mínimo no desempenho. Você pode monitorar auditorias a qualquer momento para análise, análises forenses e conformidade. |
Expandir | ||
---|---|---|
| ||
Alto desempenho: Oferece latência 80% menor e mais de 5X de rendimento do que outros provedores de nuvem, utilizando hardware otimizado para banco de dados, ajuste automatizado e indexação. Sempre online: Oferece mais de 99,95% de disponibilidade usando uma combinação de Infraestrutura de Gen 2 Cloud da Oracle, Oracle RAC, Autonomous Data Guard e backups automáticos diários. Proteção contra erro humano: O Oracle Flashback, fornecido com o Autonomous Transaction Processing, rebobina instantaneamente as alterações acidentais nos esquemas do aplicativo, protegendo os usuários de erros humanos. Oferece suporte à recuperação em todos os níveis, incluindo linha, transação e tabela - e em todo o banco de dados. |
Expandir | ||
---|---|---|
| ||
Suporte para modelos de dados relacionais e não relacionais: Oferece suporte nativo a vários tipos de dados, incluindo documento, gráfico, espacial, JSON, XML e mais para desenvolvimento mais rápido de aplicativos. Evita a fragmentação de dados e reduz os incômodos de gerenciamento de dados resultantes de armazenamentos de dados isolados. Suporte de API REST para desenvolvimento de aplicativos modernos: Forneça APIs REST de gerenciamento de banco de dados, interface da web e Gateway PL/SQL para habilitar em REST todos os seus dados para um acesso mais simples e rápido. Algoritmos de Machine Learning (ML) no banco de dados: Mais de 30 algoritmos de ML, funções de ML automatizadas e integração com código aberto Python e R, para facilitar a construção de modelos de ML e painéis analíticos sem mover dados do banco de dados. |
Expandir | ||
---|---|---|
| ||
Multi-Modelo: Suporte nativo para vários tipos de modelos de dados e métodos de acesso. Multitenant: Banco de dados em container proporcionando consolidação, isolamento e agilidade. Multi-Workload: Otimizações de software que funcionam sozinhas ou em conjunto para oferecer um preço excepcional e um alto desempenho em todas as tarefas do banco de dados. Para mais informações sobre Arquitetura Convergente, confira este documento (PDF, em inglês) |
Expandir | ||
---|---|---|
| ||
BYOL (Bring Your Own License): Enterprise EditionSe você tiver o Oracle Database Enterprise Edition e as opções necessárias listadas abaixo, seus requisitos de BYOL serão os seguintes: Para 1-16 OCPUs de uma única instância do Oracle Autonomous Database:
Para 17 OCPUs ou mais de um único Oracle Autonomous Database:
BYOL: Standard EditionPara 1-8 OCPUs do Oracle Autonomous Transaction Processing Cloud: - Para cada Licença de Processador suportada de Programas Oracle Database Standard Edition (onde um Processador é definido como equivalente a um soquete ocupado), você pode ativar até 4 OCPUs do Serviço de Nuvem BYOL. - Para cada 10 licenças Named User Plus suportadas dos Programas Oracle Database Standard Edition, você pode ativar 1 OCPU do BYOL Cloud Service. Cada instância do Oracle Autonomous Transaction Processing Cloud não pode exceder 8 OCPUs. Licensing Included: Todos os recursos estão inclusos de acordo com a edição do banco de dados, atualmente a versão disponível é a Oracle 19c. Para informações sobre o serviço de créditos universais, acesse este link. |
Considerações sobre o uso do Oracle ATP
Embora a proposta do banco de dados seja minimizar a interferência humana, para uso do banco de dados com o Protheus é importante ressaltar alguns itens e configurações iniciais.
Aviso | ||
---|---|---|
| ||
Altere o character set para WE8MSWIN1252 no momento de criação da instância do Oracle ATP. |
Nota | ||
---|---|---|
| ||
O APEX User Interface é homologado no Autonomous Database apenas com o character set original. Caso esta funcionalidade precise ser utilizada, deverá ser provisionada uma instância do Autonomous separada ao APEX. |
Conectando-se ao banco de dados
O Protheus utiliza a ferramenta DBAccess para conexão aos bancos de dados homologados; este, por sua vez, utiliza o Instant Client, e precisa, dentre outras configurações, que o arquivo TNSNAMES.ora seja configurado. Para mais informações, consulte a documentação: Como configurar o DBAccess para utilizar o Oracle com OCI - TOTVSTEC - TDN.
Caso possua o ambiente em Linux, confira dicas para a configuração de seu ambiente.
Aviso |
---|
Como a conexão com o banco de dados Oracle Autonomous é obrigatoriamente SSL (Secure Sockets Layer), se faz necessário também utilizar Wallet na configuração do Oracle Client. |
Informações | ||
---|---|---|
Para esclarecer a configuração, a linha de conexão adicionada foi:
Onde o significado de cada parâmetro é:
|
Sizing e quantidade de usuários
É possível realizar o escalonamento de OCPUs para o banco de dados. Tenha em mente que cada usuário do Protheus abre, no mínimo, 2 sessions no banco de dados, e que cada OCPU suporta até 300 sessions.
Aviso |
---|
Os valores descritos em cada documentação são referência de uma configuração mínima, e é possível que sejam necessários mais OCPUs, a depender dos processos executados. Sempre realize a validação em um ambiente de homologação antes de migrar seu ambiente de produção. |
Consulte na página sobre a homologação do Protheus em OCI exemplos para o sizing.
Mais informações
De acordo com a documentação de Oracle - Grants mínimos para o funcionamento do DBAccess, são necessários grants específicos no banco de dados Oracle. Porém, com o ATP, não é possível atribuir permissão sobre as tabelas:
- SYS.COL$
- SYS.OBJ$
- SYS.IND$
- SYS.ICOL$
Estas tabelas são utilizadas quando a chave UseSysTables está ativa; certifique-se de que a ausência destas chaves não afetará o funcionamento de seu produto.