Esse artigo faz parte da revista SQL Magazine edição 53. Clique aqui para ler todos os artigos desta edição

FONT-FAMILY: Verdana">Oracle

Replicação Oracle

Mantenha os dados sincronizados para garantir qualidade nos testes de software

 

 

Amigo leitor, essa matéria é dedicada a você que administra banco de dados Oracle e freqüentemente depara-se com o problema de manter os dados do ambiente de produção de sua empresa atualizados com os demais ambientes existentes como desenvolvimento e homologação.

Essa é uma das mais freqüentes solicitações feitas pela equipe de desenvolvimento e de negócios das corporações. Sem ter em mãos as informações mais atualizadas, fica extremamente difícil realizar os testes para homologar novas versões ou mesmo realizar um suporte adequado para o usuário final.

No outro lado dessa via está a equipe de banco de dados, que se depara com os mais diversos problemas para realizar a sincronização dos dados: a complexidade de se transferir somente os dados sem causar qualquer impacto nos demais ambientes, estruturas não idênticas existentes entre os ambientes, grandes volumes de dados a serem transferidos e a limitação do espaço físico nos ambientes de destino são algumas das situações que contribuem para que a sincronização dos dados não seja feita de forma freqüente.

 

Planejando a sua replicação

Existem inúmeras formas de se realizar a replicação de dados, partindo da mais simples (como a que será apresentada nessa edição), às mais complexas (a ser apresentada na próxima edição). Porém, antes de se desenvolver um processo de replicação, é necessário analisar o ambiente e definir qual é o tipo de replicação mais apropriada à necessidade da empresa. Esse planejamento inclui pontos importantes como:

·         Identificar os objetos do banco de dados que devem ser replicados;

·         Decidir se será necessário criar ambientes com:

·         Replicação única (um único servidor de origem);

·         Multimaster (vários servidores de origem);

·         Visões materializadas no destino;

·         Soluções híbridas citadas acima;

·         Decidir qual será a periodicidade de sincronização dos dados;

·         Planejar e configurar opções de segurança;

·         Configurar a replicação entre os sites;

·         Monitorar os ambientes replicados por meio das views do dicionário de dados do Oracle;

·         Outros pontos importantes como propagação serial ou paralela, grau de paralelismo, gerenciamento de conflitos e configuração de segurança não devem ser descartados dependendo da criticidade da replicação a ser implementada.

 

Nesse artigo de replicação utilizando banco de dados Oracle 10g R2, serão utilizadas duas técnicas de replicação.

A primeira técnica apresentada nesta edição é a técnica de replicação manual, destinada a softwares com pequenas quantidades de tabelas, onde é possível analisar o modelo de dados e desenvolver uma sincronização simples e eficiente dos dados, facilitando a implementação em ambientes onde não se têm equipes especialistas destinadas apenas a administrar banco de dados Oracle.

A segunda técnica de replicação, apresentada na próxima edição, será feita pela ferramenta EM (Enterprise Manager) 10g R2 e é destinada a ambientes complexos, críticos e com tratamento para grandes volumes de dados, onde não é possível identificar todos os objetos envolvidos na replicação.

Cenário – Hands On: Projeto Carloca - Venda de software especializado

O projeto Carloca tem como objetivo gerenciar a locação de veículos realizada pelos clientes em determinada loja de veículos automotores.

Para cada nova licença adquirida do software, são instalados dois bancos de dados em servidores diferentes. Um banco de dados é destinado ao ambiente de produção e o outro é o ambiente de homologação, utilizado pela equipe de suporte do Carloca em situações onde existe a necessidade de se analisar alguma anormalidade ou realizar um suporte para suprir determinada necessidade.

Para manter a base de dados de produção sincronizada com o ambiente de homologação, foi desenvolvido um projeto de replicação que garante a atualização dos dados diariamente ou esporadicamente, a partir da execução de um simples job. Nesse sentido, com um estudo realizado concluiu-se que:

·         A atualização dos ambientes deverá ser feita diariamente a partir das 22:00 hs;

·         O ambiente de homologação irá solicitar ao ambiente de produção a atualização dos dados;

·         Qualquer exceção que ocorrer no momento da execução do procedimento deverá ser catalogada em um arquivo de log;

·         É necessário analisar o tempo total de execução do procedimento;

·         Os dados do ambiente de homologação são utilizados apenas para consulta e atualizações (update).

 

Após a definição da necessidade do software é necessário analisar o modelo de dados do projeto Carloca, exibido na Figura 1. ...

Quer ler esse conteúdo completo? Tenha acesso completo