AJUDA EM QUAL A MELHOR SOLUCAO DE SE FAZER

LUIS.FLAVIO 12/02/2010 10:30:31
#334248
Pessoal estou com um grande desafio e preciso da ajuda de vocês!

Terei um projeto X que deverei fazer um sincronização entre bases de dados locais com uma base de dados na WEB.

Primeiramente detalharei o projeto.

O sistema deverá enviar informações de produtos como (VALOR, ESTOQUE, etc) para um base de dados WEB, até esse ponto é tranquilo. Mas pense que isso envolve vários clientes e milhares de registros de produtos.

Então tenho pensado com vou fazer isso, pois imaginos que uma empresa tem 50.000 produtos em seu acervo mas somente em uma loja e mais 50.000 em 10 lojas, precisaria enviar a essa base de dados de 5 em 5 horas os produtos que por exemplo sofreran mudanças de estoque, valor, novos produtos cadastrados e produtos excluídos, mas não seria viável fazer isso com os 50.000 registros que existe, mas sim somente desses produtos que sofreram essas atualizações. Qual a melhor metodologia a ser usada? Seria gerar um arquivo XML desses dados e enviar para o banco de dadosna WEB? Seria o banco de dados que iria interpretar o XML ou o WEBSERVICE ou a aplicação local? Ou já iria fazendo um LOOP da Tabela Produtos do banco das empresa e inserindo na base de dados na WEB? Tenho pensado em criar um tabela para cada cliente, pois quando uma pessoa for fazer uma consulta na base de dados na WEB a tabela de produtos estiver sofrendo várias atualizações de vários clientes e de vários produtos ao mesmo tempo essa tabela irá perder muita a performce, ou até mesmo da pau, então pensei em criar tabela para cada cliente e depois que essas atualizações fossem feitas nas tabelas de cada cliente enviasse as atualizações de todos os produtos de todos clientes para a TABELA PRINICIPAL enviando somente aqueles produtos que tiveram modificações de valor unitário do produto, ou a quantidade no estoque,etc e pensei em fazer isso via TRIGGER de cada tabela de cliente.

Obs.: Pense em um projeto de grande dimensão, na faixa de 20 clientes com um número de produtos em torno de 100.000 produtos para cada cliente

O Banco de Dados seria SQL Server 2005 ou SQL Server 2008 !


Consegui explicar minha dúvida? Caso não postem para eu possa melhorar!

Conto com a ajuda de vocês!

Abraço
NLSOLUCOES 12/02/2010 10:42:48
#334251
Resposta escolhida
Bom, XML pode descartar neste processo pois é uma grande massa de dados e ficará muito lento agora, vc poderá processar diretamente num SGDB de um hosting alimentando tbem o BD local e caso caia a internet aí vc trabalha local e marca os registro q não foram enviados ao BD central para enviar posteriormente.

Não crie uma tabela para cada cliente e neste caso vc deverá planejar os ID's

[]'s
LLAIA 12/02/2010 11:19:56
#334257
Eu acho que o que tá embolando o raciocínio, é o fato de as bases locais estarem alterando o conteúdo na base web. Se fosse ao contrário, seria muito mais fácil, ou seja, quando houver atualização de preços nos produtos, os dados na web devem refletir nas bases locais. Fica fácil pra um supervisor geral tomar conta do negócio. O controle do estoque tem que ser local mesmo.

Bom eu faria assim.

Vamo desenrolando que a galera aparece com uma solução logo logo
Tópico encerrado , respostas não são mais permitidas