Buffer
Os arquivos QVD podem ser criados e mantidos automaticamente usando o prefixo buffer. Esse prefixo pode ser usado com a maioria dos comandos LOAD e SELECT no script. Ele indica se os arquivos QVD serão usados para armazenar em cache/buffer o resultado do comando.
Sintaxe:
Buffer [(option [ , option])] ( loadstatement | selectstatement )
option::= incremental | stale [after] amount [(days | hours)]
Se não for usada nenhuma opção, o buffer de QVD criado pela primeira execução do script será usado indefinidamente.
Os buffers de QVD estão inclusos por padrão no C:\ProgramData\QlikTech\QlikView\Buffers.
Os buffers de QVD normalmente serão excluídos quando deixarem de ser referenciados durante a execução completa do script no documento que os criou ou quando o documento que os criou não existir mais.
Argumentos:
Argumento | Descrição |
---|---|
incremental | A opção incremental permite a leitura apenas de parte de um arquivo subjacente. O tamanho anterior do arquivo é armazenado no cabeçalho XML no arquivo QVD. Isso é especificamente útil com arquivos de log. Todos os registros carregados anteriormente são lidos no arquivo QVD, ao passo que os novos registros subsequentes são lidos na fonte original e, por fim, é criado um arquivo QVD atualizado. Observe que a opção incremental só pode ser usada com comandos LOAD e arquivos de texto e essa carga incremental não pode ser usada quando dados antigos são alterados ou excluídos. |
stale [after] amount [(days | hours)] |
amount é um número que especifica o período de tempo. Os decimais podem ser utilizados. A unidade adotada será dias, se for omitida. A opção stale after é geralmente usada com fontes de DB nas quais não há nenhum carimbo de data/hora simples nos dados originais. Especifica-se por quanto tempo os snapshots capturados no último QVD poderão ser utilizados. Uma cláusula stale after simplesmente determina um período de tempo a partir da hora de criação do buffer de QVD, após a qual o buffer deixará de ser considerado válido. Antes desse período, o buffer de QVD será usado como fonte dos dados e, após o período, será usada a fonte de dados original. O arquivo do buffer de QVD será automaticamente atualizado e um novo período será iniciado. |
Limitações:
Existem várias limitações. A mais evidente é que deve haver uma declaração LOAD ou SELECT de arquivo na base de qualquer declaração complexa.
Exemplo 1:
Exemplo 2:
Exemplo 3: