Archivos QVD

Un archivo QVD (de datos QlikView) es un archivo que contiene una tabla de datos exportados desde QlikView. QVD es un formato propio de QlikView. Solo puede ser escrito y leído desde QlikView. El formato de archivo está optimizado para favorecer la velocidad de lectura de datos desde un script QlikView, pero es al mismo tiempo muy compacto. Leer datos desde un archivo QVD es por lo general 10-100 veces más rápido que leer desde otras fuentes de datos.

Los archivos QVD se pueden leer en dos modos, estándar (rápido) y optimizado (más rápido). El modo que se utilice viene determinado de forma automática por el motor de script de QlikView. El modo optimizado puede emplearse solo cuando todos los campos cargados o un subconjunto de ellos sean leídos sin ninguna transformación (sin fórmulas que actúen sobre los campos), aunque sí se permite el renombrado de campos. Una cláusula WHERE hace que QlikView descomprima los registros y esto también desactiva la carga optimizada. Un .qvd optimizado se extrae y gestiona igual que una ETL estándar (Extract-Transform-Load) cuando se efectúa una transformación de un campo, esto da como resultado una degradación del rendimiento. El formato especificado no se mantendrá y en su lugar se empleará y reconocerá el formato numérico subyacente. Se permiten transformaciones del campo en un .qvd, el anterior .qvd "optimizado" se convierte entonces en un .qvd estándar, no optimizado.

Se permite renombrar los campos. Cuando se apliquen las transformaciones se empleará el modo estándar (rápido).

  1. 1) Una cabecera XML bien constituida (con juego de caracteres UTF-8) que describe los campos de la tabla, el diseño de la información subsiguiente y algunos otros metadatos.
  2. Tablas de símbolos en un formato de bits.
  3. Datos reales de la tabla en formato de bits.

Finalidad de archivos QVD

Los archivos QVD se pueden emplear con numerosas finalidades. Podemos identificar claramente al menos cuatro usos fundamentales. En muchos casos se pueden aplicar dos o más de ellos al mismo tiempo.

Incremento de la velocidad de carga

Mediante el envío a buffers de las partes que no cambian, o cambian muy lentamente, de los datos de entrada de archivos QVD, podemos acelerar considerablemente la ejecución de script en caso de grandes conjuntos de datos.

Reducción de la carga en los servidores de las bases de datos

Mediante el envío a buffers de las partes que no cambian, o cambian muy lentamente, de los datos de entrada de archivos QVD, podemos reducir enormemente la cantidad de datos obtenidos de fuentes de datos externas. Esto alivia la carga de las bases de datos externas y reduce el tráfico de la red. Además, cuando varios scripts QlikView comparten los mismos datos solo es necesario cargarlos una única vez desde la base de datos fuente a un archivo QVD. Las demás aplicaciones pueden hacer uso de los mismos datos mediante este archivo QVD.

Consolidación de los datos de múltiples aplicaciones QlikView

Con la sentencia de script binary se pueden cargar datos de una única aplicación QlikView a otra, pero con los archivos QVD, un script de QlikView puede combinar datos de cualquier número de aplicaciones QlikView. Esto abre todo un mundo de posibilidades, por ejemplo para aplicaciones que deseen consolidar datos similares procedentes de diversas unidades de negocio, etc.

Carga incremental

En muchas ocasiones habituales la funcionalidad QVD se puede utilizar para facilitar la carga incremental, cargando por ejemplo únicamente los registros nuevos de una base de datos en expansión.

Vea: Utilización de archivos QVD para carga incremental

Crear archivos QVD

Un archivo QVD se puede crear de tres maneras diferentes:

  1. Mediante la creación explícita y su nombrado utilizando el comando store en el script QlikView. Indique simplemente en el script que desea exportar una tabla anteriormente leída, o parte de ella, a un nombre de archivo explícitamente nombrado en una ubicación de su elección.
  2. Mediante creación y mantenimiento automáticos desde el script. Con una sentencia load o select precedida por el prefijo buffer, QlikView crea automáticamente un archivo QVD que, si se dan ciertas condiciones, puede utilizarse en lugar de la fuente de datos original al volver a cargar los datos.
  3. Mediante la creación y nombramiento explícitos de forma manual desde el diseño o mediante el Intérprete de Macros Interno. Los datos se pueden exportar desde el diseño QlikView por medio de comandos de la GUI o macros de Automatización. En la GUI encontrará QVD como uno de los posibles formatos de exportación bajo el comando Exportar, que se halla en el menú de objeto de la mayoría de objetos de hoja.

    Vea: Intérprete Interno de Macros

Una vez creados no existe diferencia alguna entre los archivos, por ejemplo en cuanto a la velocidad de lectura, etc

Leer datos desde archivos QVD

QlikView lee o accede a un archivo QVD según alguno de los siguientes métodos:

  1. Carga de un archivo QVD como una fuente de datos explícita. Los archivos QVD pueden ser referenciados por una sentencia load en el script QlikView, igual que cualquier otro tipo de archivo de texto (csv, fix, dif, biff etc). El Asistente de Archivos: Tipo gestiona los archivos QVD según los mismos principios.

    Vea: Asistente de Archivos: Tipo

  2. Ejemplos:  

    load * from xyz.qvd (qvd);

    load Nombre, NodeReg from xyz.qvd (qvd);

    load Nombre as a, NodeReg as b from xyz.qvd (qvd);

  3. Carga automática de archivos QVD enviados automáticamente a buffers. Cuando se utiliza el prefijo buffer en sentencias load o select, no se necesitan sentencias explícitas para la lectura. QlikView determinará en qué medida se utilizarán los datos del archivo QVD o si se adquirirán mediante la sentencia load o select original.
  4. Acceso a archivos QVD vía script. Se pueden utilizar varias funciones de script (comenzando todas ellas por qvd) para la recuperación de diversa información de los datos que se hallan en la cabecera XML de un archivo QVD.

    Vea: Funciones de archivo

Importar QVD con asteriscos no es posible.