Compartilhar via


Conflito de replicação de mesclagem avançada – escolher um resolvedor

Aplica-se a: SQL Server

Ao escolher um resolvedor, considere a importância da resolução de conflito em sua aplicação e se você pode usar o resolvedor padrão baseado em prioridades ou se precisa usar um resolvedor de artigo.

Caso seus dados estejam particionados sem usuários múltiplos que gravam nas mesmas partições, e caso sua topologia de replicação seja relativamente básica (um Publicador e alguns Assinantes), os conflitos devem ser raros ou inexistentes. Nesses ambientes, você provavelmente não precisa de uma estratégia de resolução de conflito complexa. É recomendada uma estratégia que use as configurações padrão para resolução de conflito, utilizando assinaturas de cliente e uma primeira alteração na política de vitórias. Se a topologia for mais complexa (usando Assinantes de republicação, por exemplo), as assinaturas de servidor com prioridades específicas podem ser mais apropriadas.

Um resolvedor de artigo é recomendado caso as necessidades corporativas exijam uma solução mais personalizada do que a disponível com o resolvedor padrão. Se você optar por usar um resolvedor de artigo, será recomendável usar um manipulador de lógica de negócios. Para obter mais informações, consulte Executar lógica de negócios durante a sincronizações de mesclagem.

Em última análise, escolher usar um resolvedor padrão ou um resolvedor de artigo deve ter por base os dados e as necessidades da lógica corporativa do aplicativo. Por exemplo, considere funcionários que inserem dados de classificação de clientes em um conjunto de tabelas não particionadas para diferentes Assinantes; os funcionários abrangem várias categorias de emprego (gerentes de filiais, gerentes de linha, vendedores) e a categoria emprego determina quais dados devem ter prioridade. Nesse caso, um resolvedor de artigo que utilize dados de categorias de emprego pode ser construído a partir do artigo para determinar o vencedor se ocorrer um conflito.

Se os conflitos tendem a acontecer com alguma frequência, estas são as decisões mais importantes que você deve considerar ao implementar uma estratégia de resolução de conflito.

Problema de resolução de conflito Recomendação
Categorias diferentes de usuários requerem valores de prioridade diferentes. Use o resolvedor padrão e crie assinaturas de servidor com valores de prioridade diferentes.

Ou

Use um resolvedor de artigo que reconheça uma coluna de valor de autoridade no artigo para ajudar a resolver um conflito.
Necessária uma primeira alteração na solução de conflito de vitórias. Use o resolvedor padrão e crie assinaturas de cliente.
São aceitáveis múltiplos usuários que alteram a mesma linha de dados, desde que nenhuma alteração conflitante seja feita na mesma coluna. Use o resolvedor padrão ou um resolvedor de artigo com controle em nível de coluna habilitado.
Sinalize várias alterações para qualquer valor em uma linha como um conflito. Use o resolvedor padrão ou um resolvedor de artigo com controle em nível de linha.
Sinalize múltiplas alterações para qualquer valor em um registro lógico como um conflito. Use o resolvedor padrão com controle em nível de registro lógico (o recurso registro lógico não oferece suporte a resolvedores de cliente ou manipuladores de lógica de negócios).
Os dados de resultado de conflito precisam ser diferentes dos dados de conflito originais. Use um resolvedor de artigo que calcule valores novos.