[QVD] Arquivos QVD – Parte 2/3
É rápido?
A leitura de dados de um arquivo QVD sempre será mais rápida do que de outras
fontes. Um fator de velocidade de dez a cem vezes não será incomum. A exata
velocidade, em termos de processamento de registros/segundo, dependerá de vários
fatores, os mais importantes são:
- Número de campos no registro
- Tipo de dados nos campos (largura do campo, número de valores distintos
etc.) - Velocidade do disco rígido
- Velocidade da CPU do computador
Os arquivos QVD podem ser lidos em dois modos, padrão (rápido) e super-rápido. O
modo usado é determinado automaticamente pela linguagem de script do QlikView.
O modo super-rápido pode ser usado apenas quando todos os campos ou um subconjunto
de campos são lidos sem transformações (fórmulas que atuam nos campos). A
renomeação dos campos é permitida. Sempre que as transformações forem aplicadas,
o modo padrão (rápido) será usado.
Criação de arquivos QVD
Os arquivos QVD podem ser criados de três maneiras:
- Criados e nomeados explicitamente no script por meio do comando
store. Basta indicar no script que uma tabela lida anteriormente ou
parte dela deve ser exportada para um arquivo nomeado explicitamente
em um local de sua escolha. Consulte os detalhes técnicos
a seguir. - Criados e mantidos automaticamente a partir do script. Se um
comando load ou select for precedido do novo prefixo buffer, o
QlikView criará automaticamente um arquivo QVD que, mais tarde,
se determinadas condições forem atendidas, será usado em lugar da
fonte de dados original ao carregar dados. O arquivo QVD terá um
nome oculto baseado em um hash do comando load/select e normalmente
residem na pasta de dados de aplicativos do Windows. Consulte
os detalhes técnicos a seguir. - Criados e nomeados explicitamente a partir de layout ou via Automação.
Dados exportados do layout do QlikView por meio de
comandos da GUI ou macros de Automação. Na GUI você encontrará
o QVD como um dos possíveis formatos de exportação, no
comando Exportar…, acessado no menu objeto de grande parte dos
objetos de pasta.
O arquivo QVD resultante tem os mesmos atributos (como tamanho e velocidade de
leitura), independentemente de qual método é usado.
Criação manual a partir do script
Um arquivo QVD pode ser criado por um comando store no script. Esse é o
comando que criará um arquivo QVD nomeado explicitamente. A sintaxe é:
store [tabela] into nome_do_arquivo;
A <tabela> é uma tabela rotulada e já carregada do script. O <nome_do_arquivo>
é interpretado de modo semelhante aos nomes nos
comandos load, isto é, os comandos directory se aplicam. Os campos da
lista de campos podem ser renomeados usando a sintaxe as padrão.
Exemplos:
- STORE minhatabela INTO xyz.qvd;
- STORE * FROM minhatabela INTO xyz.qvd;
- STORE Nome, NúmReg FROM minhatabela INTO xyz.qvd;
- STORE Nome as a, NúmReg as b FROM minhatabela INTO
xyz.qvd;
Os dois primeiros comandos têm a função idêntica.
Buffer – criação automática a partir do script
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/ou select no script. Ele indica se um arquivo QVD será usado para
armazenar em cache/buffer o resultado do comando.
Existem algumas limitações, a mais evidente é que deve haver um comando
de arquivo load ou select na “base”.
O nome do arquivo QVD é um nome calculado (um hash hexadecimal de
160 bits de comandos e outras informações distintivas) e geralmente é
armazenado na pasta APPDATA (C:\Document and Settings\%user%\Dados
de aplicativos\QlikTech\QlikView).
A sintaxe do prefixo é:
BUFFER [(opção [,opção])] LOAD …
ou
BUFFER [(opção [,opção])] SELECT …
em que uma das opções é a seguinte:
- 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 é útil principalmente em arquivos de log. Todos
os registros carregados anteriormente são lidos no arquivo QVD,
ao passo que os novos registros subseqüentes são lidos na fonte
original e, por fim, é criado um arquivo QVD atualizado.stale (after) valor [ (dias | horas) ]É geralmente usada com fontes de DB em que não há nenhuma data/
hora simples nos dados originais. Especifica-se por quanto tempo os
dados capturados no último QVD poderão ser utilizados.
Exemplos: - BUFFER SELECT * FROM MinhaTabela;
- BUFFER (stale after 7 dias) SELECT * FROM MinhaTabela;
- BUFFER (incremental) LOAD * FROM MeuLog.log;
Criação manual a partir do layout
A exportação de objetos de pasta para arquivos QVD é possível usando os
comandos Exportar existentes ou por Automação.
Fonte: Manual de Referencia Qlikview 10.
Arquivos QVD – Parte 1/3
Arquivos QVD – Parte 2/3 <- Você está aqui.
Arquivos QVD – Parte 3/3