Seleção do tipo apropriado de replicação

OMicrosoftSQL Server oferece três tipos de replicação. Cada tipo de replicação é adequado aos diferentes requisitos do aplicativo. Dependendo das necessidades de seu aplicativo, você pode usar um ou mais tipos de replicação em uma topologia:

  • Replicação de instantâneo

  • Replicação transacional

  • Replicação de mesclagem

Para ajudar a selecionar o tipo apropriado de replicação, este tópico fornece informações sobre:

  • Cenários de replicação

    Esta seção descreve brevemente diversos casos de uso comum para replicação, com links para descrições mais detalhadas.

  • Tipos de replicação

    Esta seção descreve os requisitos de aplicativo para os quais cada tipo de replicação é apropriado.

  • Atualizando dados em Assinantes

    Esta seção descreve as opções disponíveis para aplicativos que requerem atualizações em dados no Assinante.

Recomendamos inicialmente ler as descrições de cenários para encontrar o cenário que melhor se encaixa nos requisitos de seu aplicativo e, em seguida, clicar no link para obter mais informações. Se você não conseguir encontrar uma associação aproximada para seus requisitos de negócios ou deseja informações adicionais sobre os tipos de replicação, leia "Tipos de Replicação." Se o seu aplicativo requer atualizações em um ou mais assinantes, leia "Atualização de dados nos assinantes" para determinar a tecnologia apropriada a ser utilizada.

Cenários de replicação

Os cenários de replicação podem ser divididos em duas categorias abrangentes: replicação de dados em um ambiente de servidor para servidor e replicação de dados entre servidor e clientes. Os cenários de servidor para servidor são implementados com o uso da replicação transacional (e algumas vezes da replicação de instantâneo); os cenários de servidor e cliente são implementados com o uso da replicação de mesclagem.

Cenários de servidor para servidor

Os dados são replicados normalmente entre servidores para dar suporte aos seguintes aplicativos e requisitos:

Cenário

Descrição

Melhora da escalabilidade e a disponibilidade

A manutenção de cópias de dados continuamente atualizadas permite que a atividade de leitura seja escalada por diversos servidores. A redundância resultante da manutenção de diversas cópias dos mesmos dados também é essencial durante manutenção do sistema, planejada e não planejada. Para obter mais informações, consulte Melhorando a escalabilidade e a disponibilidade.

Data warehouse e relatórios

O servidores de data warehouse e de relatório usam freqüentemente dados de servidores de processamento de transações online (OLTP). Use a replicação para mover dados entre servidores OLTP e sistemas de suporte para decisão e geração de relatórios. Para obter mais informações, consulte Armazenamento de dados e geração de relatório.

Integrando dados de vários sites

Os dados são freqüentemente acumulados de escritórios remotos e consolidados em um escritório central. De forma semelhante, os dados podem ser replicados para escritórios remotos. Para obter mais informações, consulte Integrando dados de diversos sites (servidor).

Integrando dados heterogêneos

Alguns aplicativos dependem dos dados que são enviados de ou para bancos de dados diferentes do MicrosoftSQL Server. Use a replicação para integrar os dados que não são dos bancos de dados do SQL Server. Para obter mais informações, consulte Integrando dados heterogêneos.

Descarregando processamento em lote

As operações em lote com freqüência são um recurso muito intensivo para executar em um servidor OLTP. Use a replicação para descarregar o processamento para um servidor de processamento em lote dedicado. Para obter mais informações, consulte Descarregando processamento em lote.

Cenários de servidor e cliente

Os dados normalmente são replicados entre servidores e clientes (incluindo estações de trabalho, laptops, mesas digitalizadoras e dispositivos) para dar suporte aos seguintes aplicativos:

Cenário

Descrição

Troca de dados com usuários móveis

Muitos aplicativos exigem que os dados estejam disponíveis para usuários remotos, incluindo equipe de vendas, motoristas de entrega, e assim por diante. Estes aplicativos incluem os aplicativos de CRM (Gerenciamento de Relacionamento com o Cliente), SFA (Automação de Força de Vendas) e FFA (Automação de Força do Campo). Para obter mais informações, consulte Troca de dados com usuários móveis.

Aplicativos de POS (ponto de venda ao consumidor)

Os aplicativos POS, como os terminais de caixa e caixas eletrônicos, exigem que os dados sejam replicados de locais remotos para um local central. Para obter mais informações, consulte Aplicativos de POS (ponto de venda ao consumidor).

Integrando dados de vários sites

Os aplicativos integram freqüentemente dados de diversos locais. Por exemplo, um aplicativo que dá suporte aos escritórios regionais pode exigir que o fluxo de dados vá para uma ou mais direções entre escritórios regionais e um escritório central. Para obter mais informações, consulte Integrando dados de diversos sites (cliente).

Tipos de replicação

Replicação de instantâneo

O processo de instantâneo também é usado regularmente para fornecer o ajuste inicial dos dados e dos objetos do banco de dados para publicações de mesclagem e transacionais, mas a replicação de mesclagem também pode ser usada por si só. O uso da replicação de instantâneo por si só é mais apropriado quando um ou mais dos itens a seguir for real:

  • As alterações de dados ocorrerem raramente.

  • É aceitável ter cópias de dados desatualizadas em relação ao Publicador por um período de tempo.

  • Replicação de pequenos volumes de dados.

  • Um volume grande de alterações ocorre por um curto período de tempo.

A replicação de instantâneo é mais apropriada quando as alterações de dados forem significativas, mas pouco freqüentes. Por exemplo, se uma empresa de vendas mantiver uma lista de preços de produtos e os preços forem todos atualizados ao mesmo tempo uma ou duas vezes por ano, é recomendada a replicação de todo o instantâneo de dados após ele ter sido alterado.

Replicação transacional.

A replicação transacional é normalmente usada em ambientes do tipo servidor para servidor e é apropriada em cada um dos seguintes casos:

  • Você quer que as alterações com incremento sejam propagadas para os Assinantes à medida que ocorrem.

  • O aplicativo requer baixa latência entre as mudanças de hora feitas no Publicador, assim as mudanças chegarão ao Assinante.

  • O aplicativo requer acesso aos estados de dados intermediários. Por exemplo, se uma linha muda cinco vezes, a replicação transacional permite que um aplicativo responda a cada mudança (como acionar um gatilho), e não simplesmente uma mudança de dados da rede na linha.

  • O Publicador tem um volume muito alto de atividade de inserção, atualização e exclusão .

  • O Publicador ou Assinante é um banco de dados que não é do tipo SQL Server, como Oracle.

Por padrão, os Assinantes de publicações transacionais devem ser tratados como somente leitura, porque as alterações não são propagadas de volta para o Publicador. Porém, replicação transacional oferece opções que permitem atualizações ao Assinante. Para obter mais informações, veja a seção "Atualização dados em assinantes" neste tópico.

Replicação de mesclagem

A replicação de mesclagem é usada normalmente em ambientes do tipo servidor para clientes. A replicação de mesclagem é apropriada em quaisquer das seguintes situações:

  • Diversos Assinantes podem atualizar os mesmos dados diversas vezes e propagar essas alterações para o Publicador e outros Assinantes.

  • Os Assinantes precisam receber dados, fazer alterações off-line e sincronizar posteriormente as alterações com o Publicador e outros Assinantes.

  • Cada Assinante requer uma partição diferente de dados.

  • Conflitos podem ocorrer e, quando isto acontecer, você precisará do recurso para detectá-los e encontrar a solução.

  • O aplicativo requer a alteração nos dados da rede no lugar do acesso aos estados de dados intermediários. Por exemplo, se uma linha for alterada cinco vezes em um Assinante antes dele sincronizar com um Publicador, a linha será alterada somente uma vez no Publicador para refletir a alteração dos dados na rede (ou seja, o quinto valor).

A replicação de mesclagem permite que diversos sites operem de forma autônoma e que as atualizações posteriores de mesclagem obtenham um único resultado uniforme. Como as atualizações são feitas em mais de um nó, os mesmos dados podem ter sido atualizados pelo Publicador e por mais de um Assinante. Portanto, os conflitos podem ocorrer quando as atualizações forem mescladas e a replicação de mesclagem fornecer várias maneiras para controlar os conflitos.

Atualizando dados em Assinantes

Os tipos de replicação a seguir e as opções de replicação permitem que você faça alterações em um Assinante e que essas modificações sejam propagadas para o Publicador:

Tipo de replicação

Use quando...

Replicação de mesclagem

  • Há um número grande de Assinantes.

  • Dados de usuários móveis são replicados.

  • Os dados replicados são freqüentemente atualizados no Assinante.

  • A filtragem de dados é necessária para que os Assinantes recebam diferentes partições de dados.

Para obter mais informações, consulte Visão geral da replicação de mesclagem. e Como a replicação de mesclagem funciona.

Replicação transacional ponto a ponto

  • A replicação é usada para melhorar a escalabilidade e a disponibilidade.

  • É exigida latência mínima.

  • Os dados não são particionados entre Assinantes.

  • Os conflitos normalmente não ocorrem, mas suas ocorrências devem ser detectadas.

Para obter mais informações, consulte Replicação de transação ponto a ponto.

Replicação transacional com assinaturas de atualização

  • Há um número pequeno de Assinantes.

  • Os dados replicados são na maioria do tipo somente leitura no Assinante.

  • O Assinante, Distribuidor e Publicador ficam conectados na maior parte do tempo (para assinaturas de atualizações imediatas).

Para obter mais informações, consulte Assinaturas atualizáveis para replicação de transação.