Perguntas frequentes sobre o True Cache

Tópicos de perguntas frequentes

Visão geral

O que é o Oracle True Cache?

O Oracle True Cache é um cache SQL na memória, consistente e gerenciado automaticamente para o Oracle Database. Ele opera perfeitamente em seu ambiente de banco de dados, armazenando com eficiência informações acessadas com frequência para melhorar drasticamente os tempos de resposta das aplicações. Ao assumir a carga de solicitações repetitivas de dados, o Oracle True Cache reduz efetivamente a pressão sobre o servidor de banco de dados. Seu gerenciamento automatizado e consistência inabalável agilizam o desenvolvimento de aplicações, oferecendo uma abordagem econômica e simplificada para os desenvolvedores.

Quais são as vantagens do Oracle True Cache?

O Oracle True Cache oferece vários benefícios comerciais relacionados ao desenvolvimento e desempenho de aplicações.

  • Melhora a escalabilidade e o desempenho ao descarregar consultas do banco de dados primário.
  • Reduz o tempo de resposta da aplicação e a latência da rede ao implementar o True Cache mais próximo da aplicação. Isso beneficia especialmente situações em que um banco de dados está em um local diferente da aplicação devido aos requisitos de residência dos dados.
  • Cria uma grande área de armazenamento na memória, dividindo os dados em vários True Caches. O tamanho total dos dados armazenados em todos os True Caches pode ser muito maior do que seria para um único banco de dados primário ou cache.
  • Mantém automaticamente o conteúdo do cache.
  • Simplifica o desenvolvimento e a manutenção por ser transparente para a aplicação.

Como funciona o Oracle True Cache?

Em alto nível, é assim que o Oracle True Cache funciona.

  • Uma aplicação decide se deve consultar os dados do True Cache ou do banco de dados principal.
  • O True Cache satisfaz consultas usando dados armazenados em cache em sua memória. Quando os dados não estão no cache, o True Cache os busca no banco de dados primário.
  • O True Cache começa vazio, mas lê grandes blocos de dados para preencher o cache. Depois que um bloco é armazenado em cache, ele é atualizado automaticamente por meio de redo apply do banco de dados primário. Isso é semelhante ao mecanismo de atualização usado no Oracle Active Data Guard.
  • Uma consulta ao True Cache retorna apenas dados confirmados e estes são sempre consistentes.
  • Se existirem vários True Caches e servirem o mesmo serviço de aplicação de banco de dados, o listener distribuirá e fará o balanceamento de carga automaticamente das sessões para cada cache.

Detalhes do ciclo de vida

Como os dados são carregados no Oracle True Cache?

O True Cache começa vazio, mas lê grandes blocos de dados para preencher o cache.

Como os dados são atualizados no Oracle True Cache?

Depois que um bloco é armazenado em cache, ele é atualizado automaticamente por meio de redo apply do banco de dados primário. Isso é semelhante ao mecanismo de atualização usado no Oracle Active Data Guard.

Como o Oracle True Cache lida com dados essenciais para evitar a remoção?

O True Cache oferece a capacidade de fixar tabelas e conjuntos de dados específicos no cache. Isso garante que os dados essenciais permaneçam intactos, mesmo sob restrições de memória ou algoritmos menos usados recentemente (LRU). Os dados fixados são atualizados automaticamente em tempo real à medida que ocorrem alterações no banco de dados primário, mantendo a consistência e a confiabilidade.

Como o Oracle True Cache é dimensionado?

O True Cache pode ser dimensionado aproveitando o conceito dos serviços. Por exemplo, você pode definir dois serviços, um para o departamento de vendas e outro para RH. Todas as solicitações do serviço de vendas serão direcionadas para um cache, enquanto as de RH serão roteadas para outro cache. Como os dados de cada serviço são distintos, com tabelas e estruturas de dados diferentes, o dimensionamento do True Cache pode ser alcançado de forma eficaz usando a seguinte abordagem. Por exemplo:

  • O banco de dados primário (PRIMDBI) executa dois serviços de aplicação: SALES e HR.
  • Dois True Caches estão associados a diferentes serviços que correspondem aos serviços primários da aplicação de banco de dados:
    • TCDB1I está associado ao serviço SALES_TC.
    • TCDB2I está associado ao serviço HR_TC.

Qual parâmetro definir para associar serviços de aplicações de banco de dados ao Oracle True Cache?

Configure o parâmetro TRUE_CACHE_SERVICE usando nomes que correspondam aos serviços de aplicações de banco de dados primários. Para distinguir os serviços da aplicação de banco de dados True Cache, é uma boa prática usar o nome do serviço primário seguido de _TC. Por exemplo, se o serviço primário for SALES, o serviço True Cache seria SALES_TC.

A colocalização é possível com o Oracle True Cache?

Sim, a colocalização é possível utilizando o recurso COLOCATION_TAG, que permite o envio de dados para True Caches em regiões específicas. Por exemplo, você pode ter duas aplicações e dois True Caches. As sessões com COLOCATION_TAG definida para os Estados Unidos vão para um True Cache (TCDB1I) e as sessões com COLOCATION_TAG definida para a Europa vão para o outro True Cache (TCDB2I).

Posso fazer atualizações diretamente no Oracle True Cache?

Não, o True Cache é um cache somente leitura, portanto você não pode atualizá-lo diretamente, mas pode usar o redirecionamento DML para fazer a atualização indiretamente. O redirecionamento DML grava dados no banco de dados primário e então essas informações são atualizadas automaticamente no cache. É similar à maneira com que o Oracle Active Data Guard funciona. Como o redirecionamento DML utiliza mais recursos, não é recomendado para aplicações com uso intensivo de atualizações.

Como habilito o redirecionamento DML no Oracle True Cache?

Para ativar o redirecionamento DML, defina o parâmetro de inicialização ADG_REDIRECT_DML como TRUE no True Cache.

Que tipo de dados podem ser armazenados em cache no Oracle True Cache?

O Oracle True Cache armazena todos os objetos e tipos de dados do Oracle Database, incluindo relacionais, JSON, texto, espaciais, gráficos e vetoriais. Os dados no True Cache podem ser acessados em formato de linha ou coluna, garantindo compatibilidade e flexibilidade para diversas necessidades.

Como os drivers Smart Client melhoram o desempenho com o Oracle True Cache?

Os drivers Smart Client referem-se à funcionalidade inteligente do driver Oracle JDBC, que identifica automaticamente a presença do True Cache. Esses drivers podem discernir entre solicitações somente leitura e leitura-gravação, roteando perfeitamente consultas somente leitura para o cache. Esse recurso inovador agiliza o desenvolvimento de aplicações, eliminando a necessidade de gerenciar conexões separadas para o banco de dados primário e o cache.

Quais casos de uso de implementação são suportados pelo Oracle True Cache?

O True Cache oferece opções versáteis de implementação, atendendo a vários cenários, como cache de camada intermediária, de borda, entre regiões e configurações entre nuvens.

Quais medidas de segurança estão em vigor para o Oracle True Cache?

O Oracle True Cache implementa políticas de segurança do Oracle Database. Isso inclui uma ampla gama de proteções, como criptografia de dados em repouso e over-the-wire, segurança no nível de linha, Oracle Database Vault, Oracle Key Vault e mecanismos completos de autenticação e autorização.

Licenciamento

Com qual versão do banco de dados o Oracle True Cache está disponível?

O True Cache está disponível com o Oracle Database 23ai e versões posteriores. Não é compatível com versões anteriores.

Como o Oracle True Cache é licenciado e precificado?

Oracle True Cache é um recurso disponibilizado com o Oracle Base Database Service.