Usuário com melhor resposta
Replicacao com grande volume de dados.

Pergunta
-
Boa tarde.
Estou efetuando uns testes de replicacao de dados do tipo Merge, mas durante o processo de preparacao dos dados, o SQL me retorna
Message: Timeout expired.
The timeout period elapsed prior to completion of the operation or the server is not responding.
Command Text: sp_MSprepare_mergearticle
Ja olhei a documentacao relativa ao Merge Agent. Ja mudei o parametro do -QueryTimeOut relativo ao processo, mas mesmo assim nao adiantou.
A tabela em questao que ele sempre esta parando possui em torno de 218milhoes de registros.
Gostaria de um auxilio dos colegas para ver o que posso fazer para concluir a preparacao da Replicacao, tendo em vista que nao posso aplicar filtragem nos dados durante esse processo, pois necessito replicar toda a base com todos os seus registros.
Respostas
-
Jr991,
Não custa nada rodar o performance monitor, para ver se encontra algum gargalo durante o processamento.
Atenciosamente,
Edinaldo Oliveira Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.
** Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. **- Marcado como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 23 de dezembro de 2014 14:29
Todas as Respostas
-
Jr991,
Então 218 milhões de linhas é um conjunto considerável de valores que você esta trabalhando!!!
Minha sugestão é simples, faça um backup deste banco, restaure no outro servidor, configure o processo de replicação, mas defina para que os dados não sejam apagados no servidor que vai ser o assinante!!!
Isso deve contornar o seu problema.
Outra possibilidade mais fora da realidade é configurar uma replicação somente para esta table, sem dos dados, e de forma gradativa fazer inserções pequenas de dados, para sejam replicados.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
- Sugerido como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 23 de dezembro de 2014 14:29
-
Bom dia Pedro.
Primeiramente quero agradecer a sua ajuda.
O problema nao esta no fato de efetuar o backup da base producao e o restore para a replica, pois isto é o de menos, a questão é, este erro de timeout ocorre na hora de montagem da Publicação(Distribution), ou seja, na preparação dos dados onde é feita a criação da coluna RowGuid com seu respectivo dado de controle.Existe alguma forma para que melhore este processo, pois também já verifiquei e alterei o parâmetro da QueryTimeout do Merge Agent, passando de Default agent Profile para High Volume Server-to-Server profile.
-
Jr991,
Particularmente eu não conheço mais nenhum outro parâmetro ou opção, talvez você vai ter que verificar com o seu pessoal de Infraestrutura e Rede senão existe alguma configuração que deve ser feita para melhorar.
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
-
Boa tarde Pedro.
Pior que tenho uma estrutura ótima, com servidor bi-processado, com 64Gb de Ram, ligação entre o servidor e a Storage a 10Gb, tempo de resposta do Banco excelente e já não sei mais o que e como fazer.
Já restaurei o backup na replica, mas como falei, os parâmetros que achei necessário já alterei e o processo dá timeout justamente na preparação do Merge, na criação e controle da coluna RowGuid.Agradeço sua ajuda.
-
Jr991,
Cara será que você não esta com algum problema nos pontos de rede que este servidor pode esta utilizando?
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
-
Boa tarde Pedro.
Pior que não, pois estou com uma rede Giga certificada e a Storage onde consta os dados ela esta trabalhando com Adaptive Load Balancing, ou seja, balanceamento de cargas entre as placas e com isto tenho maior performance.....
-
Jr991,
Não custa nada rodar o performance monitor, para ver se encontra algum gargalo durante o processamento.
Atenciosamente,
Edinaldo Oliveira Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.
** Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. **- Marcado como Resposta Junior Galvão - MVPMVP, Moderator terça-feira, 23 de dezembro de 2014 14:29