Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que trata o artigo:

Este artigo estratégias de replicação de dados entre servidores SQL Server e entre o SQL Server e o PostgreSQL a fim de manter bancos de dados disponíveis com maior segurança para uma aplicação.


Para que serve:

Empresas que necessitam movimentar os dados entre ambientes remotos para troca de dados, geração de relatórios.

Em que situação o tema é útil:

A replicação de dados é útil para empresas que necessitam centralizar suas informações ou distribuí-las entre seus ambientes remotos.

Normalmente nas médias e grandes empresas há movimentação de dados entre diversos ambientes remotos para geração de relatórios, troca de dados com usuários móveis, integração de dados de diversas fontes heterogêneas, entre outros. Sendo necessário buscar formas de realizar essas diversas integrações.

Uma solução interessante que se aplica neste cenário é a replicação, onde a principal proposta é distribuir duas ou mais cópias dos dados em diferentes servidores. A estratégia de replicação pode ser utilizada também como uma solução para tolerância a falhas, permitindo que o serviço permaneça operacional mesmo após algum problema de hardware ou software.

Este artigo tem como objetivo descrever sobre os principais conceitos sobre replicação de dados no SQL Server 2005/2008, assim como criar um estudo de caso onde será demonstrada replicação de dados entre os SGBDs SQL Server e PostgreSQL.

Replicação de Dados

Antes de implementar a replicação em qualquer ambiente, devemos avaliar algumas questões que são importantes nesse cenário, como a infraestrutura da rede e hardware para saber se o ambiente comporta a replicação, conhecer a estrutura e o comportamento do banco de dados, o intervalo de tempo em que dados deverão ser replicados (latência), o tipo de replicação que será utilizado e qual a topologia de replicação.

É muito importante fazer uma análise cuidadosa sobre cada item citado anteriormente, documentar e planejar todo o processo para que a replicação ocorra com sucesso e atenda todas as necessidades de negócio da empresa.

Vamos conhecer os principais papéis encontrados na replicação para iniciarmos nossos estudos sobre replicação:

Publisher (Publicador): Mantém a cópia master dentro da arquitetura da replicação, ou seja, o banco de dados que será replicado.

Subscriber (Assinante): é o banco de dados que receberá os dados replicados do Publisher. Pode receber as mudanças de um ou mais Publishers. E existem dois modos que o Subscriber poderá receber os dados replicados:

o Push Subscription: onde o servidor que reside o Distribuitor envia os dados;

o Pull Subscription: onde o servidor que está como Subscriber solicita os dados que devem ser replicados para o Distribuitor.

Distribuitor (Distribuidor): é responsável em enviar os dados do Publisher para os Subscriber. É o papel mais importante dentro da arquitetura da replicação.

Topologia de Replicação

Vamos começar conhecendo as topologias de replicação, que descreve como ocorre o fluxo de dados dentro da replicação. Basicamente, podem ser resumida em dois tipos:

Topologia Publisher Central: consiste de um único Publisher que tem um ou mais subscribers. Esta topologia, geralmente replica os dados de uma única fonte de dados, o Publisher, e envia as mudanças para um ou mais subscribers. A Figura 1 demonstra esse fluxo.

Figura 1. Topologia Publisher Central

Topologia Subscriber Central: Consiste de um único Subscriber que tem um ou mais Publisher. As mudanças são escritas nos múltiplos Publishers e são consolidadas dentro de um único Subscriber. Normalmente é usado para consolidar múltiplos bancos de dados ou um banco de dados central de relatórios. A Figura 2 mostra está topologia.

Figura 2. Topologia Subscriber Central

Existem outras topologias, mas o que basicamente varia é o fluxo entre o Publisher e o Subscriber. Entendendo como ocorre o fluxo do envio dos dados na replicação, veremos a seguir quais são tipos de replicação que podem ser configuradas no SQL Server 2005/2008.

Tipos de Replicação

No SQL Server 2005/2008 é possível encontrar três tipos de replicação:

Replicação Snapshot: na replicação Snapshot, é enviada uma cópia completa dos dados em intervalos de tempos determinados. Qualquer transação que ocorra dentro do Publisher é capturada e enviada para o Subscriber no intervalo determinado. O uso da replicação snapshot é apropriado quando as mudanças não são frequentes nos dados e a replicação é feita em uma pequena quantidade de dados. Este tipo de replicação exige um grande tráfego de rede, pois envia uma cópia completa do Publisher ...

Quer ler esse conteúdo completo? Tenha acesso completo