Vantagens na utilização do Oracle Golden Gate na replicação




 

Fernando Ribeiro de Mattos[1]

 

 


Resumo


Diante do cenário de mudanças tecnológicas e da crescente exigência do mercado, é cada vez mais comum encontrar empresas que usam vários sistemas para atender suas necessidades. O Oracle Golden Gate torna-se uma solução que integra diversos ambientes e banco de dados tendo como principais vantagens à replicação de dados em ambiente heterogêneos (Banco de dados Oracle e não Oracle), que conversam entre si, garantindo integridade e alta disponibilidade em tempo real entre ambas as bases de dados. Este processo ocorre paralelamente ao ambiente de produção sem impactar diretamente as bases dados, pois utiliza o método de captura de logs para efetuar a replicação de forma simples e completa.

 


Palavras-chave: Oracle Golden Gate, Replicação de dados, Oracle, Alta disponibilidade, Integridade de dados.

 

 

Introdução

 

O objetivo deste artigo é apresentar as principais vantagens da ferramenta Oracle Golden Gate na replicação de dados entre base de dados heterogêneos.

Oracle Golden Gate oferece uma solução empresarial para dados heterogêneos em tempo real suprindo as necessidades de acesso e de entrega. Funciona em diferentes bancos de dados, plataformas e esquemas através da leitura de logs do banco de dados, evita qualquer impacto para o banco de origem com garantia de confiança e entrega transacional em rede local ou externa.

 

Com sua arquitetura flexível e modular, resolve uma ampla gama de desafios de alta disponibilidade e para a redução de custos de infraestrutura, migrações sem downtime e upgrades. Os dados quando replicados com o Oracle Golden Gate podem ser filtrados, mapeados e transformados com latência (impacto no desempenho do banco de dados) extremamente baixa.

 

Possibilita vantagens na criação de um ambiente de proteção dos dados que será eficiente contra danos físicos (quebra de equipamentos) e lógicos (erros de software, erros de operação, etc).

 

Replicação de Dados

 

A replicação de dados pode ser feita por entre diferentes sistemas de gerenciamento de banco de dados (SGBD), como DB2, MySql, SQL Server, entre outros. Pode ser aplicado em bases de dados transacionais que precisam manter os dados replicados entre si, em data warehouses, para ferramentas de Business Intelligence (BI), migração para bases de dados distintas, para rotinas de backup e validação na aplicação de patches do sistema operacional ou da base de dados. O administrador do banco de dados (DBA) pode replicar todos os objetos das bases, gerando uma cópia idêntica, ou replicar apenas schemas, tabelas ou registros solicitados. Todos os comandos de alteração na base de dados poderão ser replicados, tanto comandos de controle (DCL - Data Control Language), manipulação (DML - Data Manipulation Language) e definição (DDL - Data Definition Language). A figura 1 mostra os diversos tipos de aplicação da ferramenta.

 

 

Figura 1 – Exemplos da aplicação do Oracle Golden Gate.

Fonte: http://www.a2f.com.br/produtos/golden-gate

 

Oracle Golden Gate utiliza os logs de transação na replicação, para isso, a base de dados deve estar configurada para gerar log de arquivamento. O processo de enviar dados de uma base para outra é bem simples e nos casos de replicação bidirecional, basta aplicar a mesma configuração em ambas as bases. Na figura 2, temos o exemplo da aplicação do Oracle Golden Gate bidirecional.

 

 

Figura 2 - Processo de Replicação

Fonte: http://blogtec4solution.blogspot.com.br/2011/07/oracle-golden-gate.html

 

O Golden Gate captura as informações do banco de dados origem, em seguida, organiza os dados em fileiras para o roteamento, que distribui para o banco de dados destino. O envio é feito via Protocolo de Controle de Transmissão e Protocolo de Interconexão (TCP\IP), e pode ser replicado tanto para um servidor local, como para qualquer lugar no mundo. Após receber os pacotes de dados, o banco de dados destino aplica os dados com integridade de transação e pode adequá-los se necessário. Por utilizar os logs de transação, não há nenhum impacto na utilização do banco de dados, mantendo sempre aberto e sem latência no envio dos dados. “Oracle Golden Gate captura, efetua rastreamento, transformação e entrega de dados com baixo impacto e em tempo real e ao longo de sistemas heterogêneos” (SOUZA, 2012) (Rafael, TecySolution).


Onde utilizar

 

Existem várias situações em que o Golden Gate é indicado, principalmente por ter uma baixa latência e manter o banco de dados aberto. Caso necessite de uma base de dados em standby, tanto para utilizá-la em outra aplicação ou para utilizar em uma base de dados de homologação, garantindo que o estado atual do standby é idêntico ao estado atual do ambiente em produção. A base em standby também pode ser usada em rotinas de backup, para que o banco de dados não seja fechado ou que haja perda de desempenho para quem utiliza.

 

Para migrações entre bancos de dados ou para um update de versão, a solução Golden Gate é muito utilizada, sem downtime, o novo servidor é configurado e tem os dados atualizados pelo banco atual, após todos os testes serem feitos, o chaveamento pode ser mudado para o novo servidor.

 

Outra situação em que pode ser muito vantajosa a utilização, é quando precisa aplicar alguma atualização do sistema operacional ou do próprio banco de dados, basta que o outro lado da replicação esteja configurado (hardware e software) de forma idêntica ao banco de origem. Primeiro se aplica os patches de atualização no servidor standby e caso não ocorra nenhum erro, altera o servidor de produção para o servidor standby e aplica os patches no servidor de produção, após o término desse processo, poderá optar em manter o standby como produção ou voltar para o ambiente inicial.

 

Nas ferramentas de BI, a utilização do Golden Gate pode ajudar muito na carga de dados de um ambiente transacional para o ambiente de data warehouse, pois em várias instituições, há diversos tipos de banco de dados em sistemas operacionais diferentes e que para a estrutura de BI dar certo, deverá conter informações de todos os locais. Outra grande vantagem na utilização do Golden Gate em BI é que podem ser replicadas apenas as informações e os registros que são necessários, não há a necessidade de importar uma tabela inteira ou todos os campos da tabela, o administrador pode realizar filtros de campos e registros no próprio Golden Gate.

 

Integridade de dados

 

Alguns dos diferenciais do Oracle GoldenGate (GG) é a manipulação de dados íntegros, pois somente capta e move as transações confirmadas e que atende a Diretriz ACID(Atomicidade, Consistência, Isolamento e Durabilidade), sendo:

 

Atomicidade: Ou tudo ou nada das tarefas de uma transação são executadas;

 

Consistência: Uma transação não pode quebrar as regras ou restrições de integridade do banco de dados e, se houver tentativas de fazê-lo, é abortado;

 

Isolamento: As operações em uma transação devem aparecer isoladas de todas as outras operações na aplicação. Nenhuma operação fora da transação pode ver os dados enquanto ela estiver em um estado intermediário;

 

Durabilidade: A transação irá persistir e não pode ser desfeita depois que ela é cometida. Uma transação só pode ser considerada cometida depois que ela é escrita de forma segura em um log de transações de banco de dados.

 

Estas propriedades garantem que as transações são processadas de forma confiável dentro de qualquer banco de dados.

 

A aplicação Oracle GG cuidadosamente assegura a integridade dos dados tal como ela é movida e criptografada a partir da fonte de dados e aplicado a qualquer número de bases de dados de destino ou sistemas de mensagens, em ambientes heterogêneos com tolerância a interrupções e falhas durante a replicação.

 

Todo o processo de uma transação que usa Oracle GG envolve várias medidas para garantir toda a sua integridade, que não é interpretado com sucesso no ponto de vista da aplicação até que todas as tarefas sejam executadas, neste caso se houver falhas durante alguma operação todas as transações feitas voltam ao último ponto estável que possui os dados originais, antes de serem manipulados pela aplicação.

 

Com uma solução de comparação que identifica e relata discrepância de dados entre dois bancos sem interrupção de sistemas ou processos, Veridata é uma ferramenta do Oracle GG que garante a consistência dos dados durante e após a replicação com baixo impacto e alto desempenho. Como mostrado na figura 3, um gráfico é plotado com o status da consistência de todos os bancos em estado de replicação que são monitorados em tempo de execução garantindo à igualdade das informações em todas as bases de dados replicadas.

 

 

Figura 3 – Comparação de dados com Oracle GoldenGateVeridata

Fonte: http://www.guob.com.br/uploads/guob_tech_day_2010/Oracle%20GoldenGate_AdvancedIT.pdf

 

Oracle GG permite manter o acesso contínuo das informações e em tempo real, sem comprometer a integridade de dados e desempenho e permite a circulação de dados transacionais em diversos ambientes com informações garantidas durante todo este processo. É uma solução para dados de missão crítica com integridade assegurada em diversos ambientes, segundo Rizvi (2012), vice-presidente sênior de Desenvolvimento de Produtos Oracle Fusion Middleware:

 

O Oracle GoldenGate ajuda as organizações a maximizar o valor de seus investimentos em TI (Tecnologia da Informação) e melhora as operações, oferecendo acesso contínuo às informações cruciais para os negócios em tempo real. Isso resulta em aprimoramento da BI (Business Inteligence) em toda a empresa, com análises mais precisas e pontuais do desempenho empresarial.

 

Alta Disponibilidade

 

Utiliza uma arquitetura baseada em componentes para ajudar empresas a lidar com a disponibilidade contínua em tempo real de integração que exige os sistemas corporativos. (ORACLE,2012). Conforme a figura 4, a alta disponibilidade endereça o tráfego de usuários que congestiona o ambiente de produção e degrada performance para processamento de transações permitindo pesquisas e relatórios sem impactos. (GUORS, 2012)

 

 

Figura 3 Benefícios de relatórios e pesquisas 

Fonte:http://www.guors.com.br/documentos_2010/GoldenGate_Presentation.pdf

 

A Oracle GG mantém a disponibilidade contínua e ajuda a eliminar o tempo de inatividade causado por interrupções planejadas ou não e a melhorar o desempenho e escalabilidade do sistema. O software pode ser configurado para suportar os seguintes cenários:

 

Zero de operações de downtime: Habilitar operações de negócios sem interrupção durante upgrade, migração, manutenção e atividades;

 

A recuperação de desastres e proteção de dados: Criar e manter um failover imediato com dados up-to-the-minute para minimizar o tempo de recuperação para sistemas de missão crítica com banco de dados Oracle em versões anteriores, ou em ambiente não-Oracle;

 

Dados de distribuição: Sincronizar dados para aplicações distribuídas em tempo real de acesso confiável aos dados em tempo hábil;

 

Consulta de Descarregamento: Garante alto desempenho para sistemas de produção, utiliza os dados como somente leitura nas atividades de replicação de dados de forma heterogênea entre origens e destinos.

 

 

Conclusão

 

O Oracle Golden Gate é uma ferramenta que habilita o profissional a fazer a replicação de dados de diversas maneiras, como a replicação total do banco de dados ou apenas de algumas estruturas e registros da base de dados. Atua na replicação entre diferentes bancos de dados e sistemas operacionais, garantindo sempre uma baixa latência nos ambientes de produção, mantém a alta disponibilidade e a integridade das informações que são replicadas de um local para o outro. É uma tecnologia nova e uma excelente solução para empresas que trabalham com muita informação e replicação de dados entre ambientes distintos.

 

Advantages of using Oracle Golden Gate in the replication

 

ABSTRACT

 

Against a backdrop of technological changes and the increasing market demand, it is increasingly common to find companies that use multiple systems to meet your needs. Oracle Golden Gate becomes a solution that integrates a variety of environments and database with the main advantages of data replication in heterogeneous environment (Oracle database and not Oracle), who talk among themselves, ensuring integrity and high availability in time real between the two databases. This process occurs in parallel with the production environment without impacting direct the databases, it uses the method of log's capture to make replication simple and complete.

 

KEYWORDS

 

Oracle Golden Gate, Data Replication, Oracle, High Availability, Data Integrity.

 

REFERÊNCIAS


A2FSOLUÇÕES. Golden Gate. Disponível em:  Acesso em: 14 abril 2012.

 

 

GUOB. Disponível em:
 Acesso em: 12 abril. 2012.

 

 

GUORS. Disponivel em:
http://www.guors.com.br/documentos_2010/GoldenGate_Presentation.pdf Acesso em16 de abril de 2012.

 

 

JARDIM, Márcio Nunes. Replicação de Dados e Contingência. Disponível em:  Acesso em: 11 abril 2012.

 

 

ORACLE. Disponível em:
Acesso em: 6 abr. 2012.

 

 

ORACLE. Disponível em:
 Acesso em: 12 abril 2012.

 

 

ORACLE. Disponível em:  Acesso em: 11 abril 2012.

 

 

SOUZA, Rafael. Oracle Golden Gate.Disponível em:  Acesso em: 11 abril 2012.

 

 

SOARES, Flávio. GoldenGate Bidirecional Oracle para Oracle. Disponível em:  Acesso em: 11 abril 2012.

 

 

RIZVI, Hasan. Oracle lança o Oracle GoldenGate. Disponível em: Acesso em: 11 abril 2012.

 

 

 

[1] Fernando Mattos, graduado em Sistemas de Informação, pela Universidade do Oeste Paulista e estudante de MBA em Administração de Banco de Dados Oracle na Ibmec Veris IBTA.