top of page
Foto do escritorDennis Tavares

Arquitetura e funcionamento do Oracle GoldenGate

Atualizado: 25 de jun. de 2023

Bem-vindo(a) ao dehandson, um espaço dedicado a compartilhar experiências, especialmente para DBAs e Engenheiros de Dados. Aqui, apresento uma ferramenta (que também estou aprendendo a utilizar) poderosa e essencial: o Oracle GoldenGate. Se você busca eficiência na transferência de dados em tempo real entre bancos de dados o OGG pode ser a ferramenta ideal.


Neste texto irei explorar os benefícios e as possibilidades oferecidas pelo Oracle GoldenGate, ele é capaz de transformar a forma como lidamos com a replicação de dados e a integração de sistemas heterogêneos. - Ao final dessa leitura, você será capaz de entender os prós e contras em utilizar o Oracle GoldenGate além de ter uma visão geral sobre a sua arquitetura e terá a oportunidade de colocar a mão na massa e ver o seu funcionamento na prática.


Com o volume de dados cada dia maior, como DBA ou Engenheiro de Dados, aprender a tecnologia OGG pode trazer uma série de benefícios e vantagens para sua carreira e para a organização em que você trabalha.

Arquitetura e funcionamento do Oracle GoldenGate

O que é o GoldenGate?

O Oracle GoldenGate é uma solução avançada de replicação de dados em tempo real que permite a transferência de dados entre diferentes bancos de dados de forma contínua e confiável. Ele atua como uma ponte que conecta bancos de dados heterogêneos, garantindo que as informações sejam replicadas de maneira consistente e segura.


Com o GoldenGate, é possível capturar e replicar dados em tempo real de várias fontes de dados, como bancos de dados Oracle, bancos de dados não Oracle e até mesmo sistemas de arquivos. Ele oferece suporte a diferentes métodos de captura, incluindo a leitura de redo logs e logs de transação, garantindo a sincronização eficiente dos dados.


Replicação de Dados em Tempo Real

A capacidade de replicar dados em tempo real entre diferentes bancos de dados é essencial para muitas empresas que desejam garantir a consistência e a integridade de suas informações. É nesse contexto que o Oracle GoldenGate se destaca como uma solução robusta de replicação de dados oferecida pela Oracle.


Benefícios do GoldenGate

A utilização do Oracle GoldenGate traz diversos benefícios para as empresas que precisam replicar dados de forma confiável e em tempo real. Alguns dos principais benefícios incluem:


  • Minimização do tempo de inatividade durante as migrações do banco de dados: Com o GoldenGate, é possível migrar dados entre bancos de dados sem interromper as operações em andamento. Isso reduz o tempo de inatividade e garante a continuidade dos negócios durante o processo de migração.


  • Integração de dados em tempo real para suportar análises em tempo real: O GoldenGate permite que as empresas obtenham insights valiosos por meio de análises em tempo real. Com a replicação contínua de dados, é possível tomar decisões baseadas em informações atualizadas e relevantes.


  • Facilitação da replicação de dados entre bancos de dados heterogêneos: O GoldenGate é capaz de lidar com bancos de dados heterogêneos, permitindo que as empresas integrem diferentes sistemas de forma eficiente. Isso é especialmente útil quando há a necessidade de consolidar dados de várias fontes em um único banco de dados centralizado.


  • Oferecimento de alta disponibilidade e recuperação de desastres: Com o GoldenGate, é possível criar soluções de alta disponibilidade e recuperação de desastres robustas. A replicação contínua de dados garante que haja cópias atualizadas dos dados em sistemas secundários, prontos para assumir em caso de falha do sistema primário.

Componentes principais do GoldenGate

O Oracle GoldenGate é composto por diferentes componentes, cada um desempenhando um papel específico no processo de replicação confiável de dados. Esses componentes são divididos em processos, arquivos e dados. Vamos explorar cada um deles:

Processos

Arquivos

Dados

Nota: Data Pump, Wallet e Checkpoints são opcionais porém altamente recomendados.

Parameter files controlam a funcionalidade dos processos do GoldenGate. Os tipos de parameter files são Global Files ou Run-time parameter e por default são salvos no dirprm directory.


Commit sequence number (CSN) é um identificador que o Oracle GG constrói ao identificar uma transação na origem.


Trails, apenas um processo extract pode gravar em um trail. O trail pode ser lido por um Data pump ou um replicat, por default são armazenados em ./dirdat.

 

Configuração do GoldenGate

A configuração do Oracle GoldenGate é realizada por meio de arquivos de parâmetros e comandos do GGSCI (GoldenGate Software Command Interface). Os arquivos de parâmetros definem as configurações para os processos do GoldenGate, incluindo informações sobre a origem dos dados, o destino da replicação, filtros e transformações necessárias.


Os comandos do GGSCI são usados para gerenciar e monitorar os processos do GoldenGate. Eles permitem que os administradores iniciem, parem, pausem e verifiquem o status da replicação em tempo real. Podem ser digitados linha a linha ou bloco de script. O script aceita comandos shell de sistema operacional.


Principais conceitos do GoldenGate

Além dos componentes e da configuração, existem alguns conceitos-chave que são importantes para entender o funcionamento do Oracle GoldenGate:

  • Trail files: Os trail files são arquivos onde os dados capturados e transformados são armazenados. Eles servem para fins de recuperação de desastres, auditoria e também como fonte de dados para análises posteriores.


  • Checkpoints: Os checkpoints são marcadores usados para rastrear o progresso da replicação. Eles garantem a consistência dos dados durante a recuperação após falhas, permitindo que o processo de replicação seja retomado a partir de onde parou.


  • DDL replication: O GoldenGate possui a capacidade de replicar alterações de estrutura do banco de dados (DDL), como criação de tabelas, alterações de colunas, entre outros. Isso permite manter a consistência entre os bancos de dados de origem e destino, garantindo que a estrutura dos dados seja mantida durante a replicação.


  • Conflict detection and resolution: Durante a replicação de dados, é possível que ocorram conflitos de dados entre as fontes e os destinos. O GoldenGate oferece recursos avançados de detecção e resolução de conflitos, permitindo a configuração de regras personalizadas para lidar com essas situações e garantir a integridade dos dados replicados.


Processo Inicial de Carga

Antes de iniciar a replicação em tempo real, é necessário realizar o processo inicial de carga para garantir que os dados iniciais sejam replicados para o destino. O processo inicial de carga envolve as seguintes etapas:

Exportação dos dados

Importação dos dados

Configuração do GoldenGate

Captura inicial dos dados

Aplicação dos dados

Sincronização inicial


GoldenGate Initial Load, gif que demonstra o processo de carga inicial no Oracle GoldeGate

Processo de sincronização contínua dos dados

Após o processo inicial de carga, o Oracle GoldenGate garante a sincronização contínua dos dados em tempo real por meio dos seguintes componentes e processos:

Extract

Data pump

Collector

Replicat

Manager


GoldenGate Change Sincronization, gif que demonstra o processo de sincronização no Oracle GoldeGate

Ao longo desse processo, os dados são capturados em tempo real, transformados, se necessário, e replicados para o banco de dados de destino. O Oracle GoldenGate utiliza trail files para armazenar as transações replicadas, permitindo a recuperação de desastres, auditoria e análises posteriores. Esse ciclo contínuo de sincronização garante que os dados estejam sempre atualizados e consistentes entre a fonte e o destino, garantindo alta disponibilidade e integridade dos dados em todo o processo.


É importante observar que existem outros métodos de carga inicial e sincronização dos dados, optei por estes que são mais comuns para entendimento geral. E em outras postagens eu posso abordar outros métodos.

 

Exemplos de casos de uso

O Oracle GoldenGate é amplamente utilizado em uma variedade de casos de uso, incluindo:

Integração de dados em tempo real para análise de negócios

Replicação de dados para alta disponibilidade e recuperação de desastres

Consolidação de dados de várias fontes para relatórios centralizados


Pontos-chave para lembrar

Ao considerar a replicação de dados em tempo real, é importante lembrar dos seguintes pontos-chave sobre o Oracle GoldenGate:


O Oracle GoldenGate é uma solução de replicação de dados em tempo real da Oracle, projetada para garantir a consistência e a integridade dos dados replicados.


Os principais componentes do GoldenGate são o Extract, Pump, Replicat e Manager, que trabalham em conjunto para capturar, transformar e aplicar os dados replicados.


A configuração do GoldenGate é realizada por meio de arquivos de parâmetros e comandos do GGSCI, permitindo personalizar e controlar o processo de replicação.


O Oracle GoldenGate oferece uma solução robusta e flexível para a replicação de dados em tempo real, atendendo às necessidades das empresas que buscam alta disponibilidade, recuperação de desastres e integração de dados eficiente. Sua capacidade de trabalhar com bancos de dados heterogêneos e fornecer análises em tempo real o tornam uma escolha poderosa para empresas que dependem de dados atualizados e confiáveis.


Agora que entendemos o funcionamento e arquitetura do Oracle GoldenGate, no próximo post, vamos colocar a mão na massa, irei abordar a sua instalação e configuração. Vamos nessa?!


Referência:

https://docs.oracle.com/goldengate/c1230/gg-winux/GGCON/getting-started-oracle-goldengate.htm#GGCON-GUID-04C49EF5-4260-4437-9E8C-8F7D4483C5C6

Comments


Post: Blog2_Post
bottom of page