Trabalhando com arquivos QVD

Um arquivo QVD (QlikView Data) é um arquivo que contém uma tabela de dados exportada do Qlik Sense. O QVD é um formato nativo do Qlik e pode ser gravado e lido apenas pelo Qlik Sense ou QlikView. O formato de arquivo é otimizado para velocidade na leitura de dados de um script do e ao mesmo tempo é compacto. A leitura de dados de um arquivo QVD é geralmente de 10 a 100 vezes mais rápida do que a leitura de outras fontes de dados.

Os arquivos QVD podem ser lidos em dois modos, padrão (rápido) e otimizado (mais rápido). O modo selecionado é determinado automaticamente pelo mecanismo de script.

Existem algumas limitações em relação a carregamentos otimizados. É possível renomear campos, mas qualquer uma das operações mencionadas aqui desativará o carregamento otimizado e resultará em um carregamento padrão.

  • Quaisquer transformações nos campos que são carregadas.
  • Usando uma cláusula where, fazendo com que Qlik Sense descompacte os registros.
  • Usando o Mapa em um campo carregado.

Objetivo dos arquivos QVD

Arquivos QVD podem ser usados para muitas finalidades, e mais de um pode ser aplicado em qualquer situação. Pelo menos quatro usos principais podem ser facilmente identificados:

  • Aumentando a velocidade de carga
  • Se forem armazenados em buffer blocos de dados de entrada de arquivos QVD, que não mudam ou mudam aos poucos, a execução do script ficará consideravelmente mais rápida para conjuntos grandes de dados.

  • Diminuindo a carga nos servidores de base de dados
  • O volume de dados lidos de fontes de dados externas pode também ser bastante reduzido. Isso reduz a carga de trabalho dos bancos de dados externos e o tráfego de rede. Além disso, quando vários scripts compartilham os mesmos dados, basta carregá-los uma vez do banco de dados de origem em um arquivo QVD. Os outros aplicativos podem usar os mesmos dados por meio desse arquivo QVD.

  • Consolidando dados de vários aplicativos
  • Com o comando de script binary, é possível carregar dados de um único aplicativo em outro aplicativo, mas com os arquivos QVD, um script é capaz de combinar dados de vários aplicativos. Isso possibilita que os aplicativos consolidem dados semelhantes de diferentes unidades de negócios, por exemplo.

  • Incremental
  • Em muitos casos comuns, a funcionalidade QVD pode ser usada para o carregamento incremental, para carregar apenas novos registros de um banco de dados crescente.

    Para obter mais informações, consulte Carregando registros novos e atualizados com carregamento incremental.

Criando arquivos QVD

Os arquivos QVD podem ser criados de duas maneiras:

  • Criação e nomeação explícitas, usando o comando store no script. Indique no script que uma tabela lida anteriormente ou parte dela deve ser exportada para um arquivo nomeado de forma explícita em um local de sua escolha.

    Para obter mais informações, consulte Store.

  • Criação e manutenção automáticas a partir do script. Quando você precede uma instrução LOAD ou SELECT com o prefixo buffer, o Qlik Sense cria automaticamente um arquivo QVD que, em determinadas condições, pode ser usado no lugar da fonte de dados original ao recarregar dados.

    Para obter mais informações, consulte Buffer.

Não há diferença entre os arquivos QVD resultantes, por exemplo, em relação à velocidade de leitura.

Lendo os dados de arquivos QVD

Um arquivo QVD pode ser lido ou acessado pelos seguintes métodos:

  • Carregando um arquivo QVD como uma fonte de dados explícita. Os arquivos QVD podem ser referenciados por um comando LOAD no script, como qualquer outro tipo de arquivo de texto (csv, fix, dif, biff etc).

    Por exemplo (Windows):

    • LOAD * from xyz.qvd (qvd)
    • LOAD Name, RegNo from xyz.qvd (qvd)
    • LOAD Name as a, RegNo as b from xyz.qvd (qvd)

    Por exemplo (Kubernetes):

    • LOAD * from [lib://MyDataFiles/xyz.qvd];
    • LOAD Name, RegNo from [lib://MyDataFiles/xyz.qvd];
    • LOAD Name as a, RegNo as b from [lib://MyDataFiles/xyz.qvd];
  • Carregando automaticamente os arquivos QVD armazenados em buffer. Quando você usa o prefixo buffer em instruções LOAD ou SELECT, não são necessárias instruções explícitas para leitura. O Qlik Sense determinará como usará os dados do arquivo QVD, ao contrário da obtenção de dados com o uso do comando original LOAD ou SELECT.
  • Acessando arquivos QVD a partir do script. Várias funções de script (todas começando com qvd) podem ser usadas para recuperar diversas informações dos dados contidos no cabeçalho XML de um arquivo QVD.

Formato QVD

Um arquivo QVD contém exatamente uma tabela de dados e é composto por três partes:

  • Cabeçalho.

    Nota: Se o arquivo QVD tiver sido gerado com o QlikView, o cabeçalho será do tipo XML composto de modo apropriado (no conjunto de caracteres UTF-8), que descreve os campos da tabela, o layout das informações posteriores e alguns outros metadados.
  • Tabelas de símbolos em um formato com bytes.
  • Dados da tabela em um formato com bits.