Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá,
Tenho vários QVDs em um pasta que são gerados mensalmente:
Fato_Produção012018
Fato_Produção032018
Fato_Produção032018
... e assim para todos os meses.
Após o mês fechado esses QVDs não sofrem mais alterações.
Hoje utilizo o * para carregar o ano todo, "Fato_Produção*2018" porém o processo é demorado.
Como posso fazer para na carga desses QVDs verificar se existe um QVD novo e então carregá-lo com os dados antigos sem precisar carregar todos?
Ivan,
Poderia testar desta forma?
MaxCreateTime:
Load
Max(QVDCreateTime) as MaxQVDCreatetime
From [lib://SUA_PASTA/*.qvd];
vMaxQVDCreateTime=Peek('MaxQVDCreateTime');
Drop Table MaxCreateTime;
Load * FROM [lib://SUA_PASTA/*.qvd] where QVDCreateTime>='$(vMaxQVDCreateTime)';
Quando vai executar a tabela MaxCreateTime dá " Campo não encontrado - <QvdCreateTime> "
Ivan,
para ler somente um novo QVD teria que ser uma carga parcial para ler um novo e não perder o que já tem no modelo.
O que poderias fazer seria ler todo o ano 2017 e salvar um unico QVD ou mesmo todos os QVDs anteriores a 2018.
Se for uma leitura sem mudanças na carga (um year(Campo) ou algo do tipo) a leitura sera muito rápida, mesmo tendo milhões de registros. Ai, o do ano, pode ler mes a mes......
Creio que no seu caso você tem que avaliar se a leitura dos QVDs é otimizada ou não . Isso dá uma boa diferença no tempo de leitura.
Aqui tem dicas de otimização de leitura de qvd
https://blogdonicolett.com.br/2014/04/15/melhores-praticas-qvd-optimized/