Accéder au contenu principal Passer au contenu complémentaire

Fichiers QVD

Un fichier QVD (QlikView Data) est un fichier qui comprend une table de données exportées à partir de Qlik Sense ou de QlikView. Le format QVD est un format Qlik natif qui ne peut être modifié et lu que par Qlik Sense ou QlikView. Le format de fichier est optimisé pour la vitesse de lecture des données à partir d'un script Qlik Sense tout en demeurant très compact. La lecture de données à partir d'un fichier QVD est généralement 10 à 100 fois plus rapide qu'à partir d'autres sources de données.

Les fichiers QVD peuvent être lus dans deux modes : standard (rapide) et optimisé (plus rapide). Le mode sélectionné est déterminé automatiquement par le moteur de script Qlik Sense. Le mode optimisé s'utilise uniquement lorsque tous les champs chargés sont lus sans aucune transformation (formules agissant sur les champs) ; il est toutefois possible de renommer les champs. Une clause Where entraînant la décompression des enregistrements par Qlik Sense désactive également le chargement optimisé.

Un fichier QVD contient exactement une table de données et se compose de trois parties :

  • Un en-tête XML (dans le jeu de caractères UTF-8) qui décrit les champs de la table, la disposition des informations ultérieures et d'autres métadonnées.
  • Des tables de symboles dans un format à remplissage de bits.
  • Les données de la table dans un format à remplissage de bits.

Les fichiers QVD s'utilisent à de nombreuses fins. Quatre usages principaux sont facilement identifiables. Plusieurs pourront s'appliquer dans n'importe quelle situation :

  • Diminution de la charge sur les serveurs de base de données
  • Il est par ailleurs possible de réduire considérablement la quantité de données récupérées à partir de sources de données externes. Conséquence : une diminution de la charge de travail pour les bases de données externes et le trafic réseau. En outre, lorsque les mêmes données sont utilisées dans plusieurs scripts Qlik Sense à la fois, il suffit de les charger une seule fois dans un fichier QVD à partir de la base de données source. Les autres applications peuvent ensuite exploiter les mêmes données par le biais de ce fichier QVD.

  • Consolidation de données provenant de plusieurs applications Qlik Sense
  • L'instruction de script Binary permet de charger les données d'une seule application Qlik Sense dans une autre. Cependant, avec les fichiers QVD, un script Qlik Sense peut combiner les données issues d'un nombre indéfini d'applications Qlik Sense. Cette méthode ouvre des possibilités, par exemple pour des applications destinées à consolider des données similaires issues de différentes unités commerciales, etc.

  • Chargement incrémentiel
  • Dans de nombreux cas courants, il est possible d'employer la fonctionnalité QVD dans le but de faciliter le chargement incrémentiel, c'est-à-dire en chargeant exclusivement les nouveaux enregistrements d'une base de données en cours d'expansion.

Note Informations

Pour savoir comment la Communauté Qlik utilise Qlik Application Automation pour améliorer les temps de chargement des fichiers QVD, voir Comment diviser des QVD via une automatisation pour améliorer les chargements.

Création de fichiers QVD

Il est possible de créer et de nommer un fichier QVD via la commande store dans le script. Il suffit de spécifier dans le script qu'une table déjà lue en totalité ou en partie doit être exportée vers un fichier nommé de manière explicite à l'emplacement de votre choix.

Store

Cette instruction de script crée un fichier QVD, Parquet, CSV ou TXT nommé de manière explicite.

 

Store[ *fieldlist from] table into filename [ format-spec ];

L'instruction permet uniquement d'exporter des champs provenant d'une table de données. Si vous devez exporter des champs issus de plusieurs tables, définissez au préalable une jointure explicite dans le script afin de créer la table de données à exporter.

Les valeurs de texte sont exportées vers le fichier CSV au format UTF-8. Vous pouvez spécifier un délimiteur (voir LOAD). L'instruction store envoyée à un fichier CSV ne prend pas en charge l'export BIFF .

Store mytable into [lib://DataFiles/xyz.qvd]; Store * from mytable into [lib://DataFiles/xyz.qvd]; Store myfield from mytable into [lib://DataFiles/xyz.qvd]; Store myfield as renamedfield, myfield2 as renamedfield2 from mytable into [lib://DataFiles/xyz.qvd]; Store mytable into [lib://DataFiles/myfile1.txt]; Store mytable into [lib://DataFiles/myfile2.csv];

  1. Ouvrez l'application Advanced Scripting Tutorial.
  2. Cliquez sur la section de script Product.
  3. Ajoutez ce qui suit à la fin du script :
  4. Store * from Product into [lib://DataFiles/ProductData.qvd](qvd);

    Le script devrait avoir l'aspect suivant :

    CrossTable(Month, Sales)
    LOAD
        Product,
        "Jan 2014",
        "Feb 2014",
        "Mar 2014",
        "Apr 2014",
        "May 2014"
    FROM [lib://DataFiles/Product.xlsx] 
    (ooxml, embedded labels, table is Product);
    
    Store * from Product into [lib://DataFiles/ProductData.qvd](qvd);

  5. Cliquez sur Charger les données.
  6. Le fichier Product.qvd doit désormais figurer dans la liste des fichiers.

    Ce fichier de données est le résultat du script Crosstable ; il s'agit d'une table de trois colonnes, une par catégorie (Product, Month, Sales). Ce fichier de données peut remplacer toute la section de script Product à présent.

Lecture de données à partir de fichiers QVD

Il est possible de lire un fichier QVD ou d'y accéder au moyen de Qlik Sense en recourant aux méthodes suivantes :

  • Chargement d'un fichier QVD comme source de données explicite. Les fichiers QVD peuvent être référencés par une instruction load dans le script Qlik Sense comme tout autre type de fichier texte (csv, fix, dif, biff, etc).
  • LOAD * from [lib://DataFiles/xyz.qvd] (qvd); LOAD fieldname1, fieldname2 from [lib://DataFiles/xyz.qvd] (qvd); LOAD fieldname1 as newfieldname1, fieldname2 as newfieldname2 from [lib://DataFiles/xyz.qvd](qvd);
  • Accès aux fichiers QVD à partir du script. Il est possible d'utiliser un certain nombre de fonctions de script (toutes celles commençant par QVD) pour récupérer différentes informations sur les données figurant dans l'en-tête XML d'un fichier QVD.

  1. Mettez des commentaires sur tout le script dans la section de script Product.
  2. Saisissez les lignes de script suivantes :
  3. Load * from [lib://DataFiles/ProductData.qvd](qvd);			

  4. Cliquez sur Charger les données.
  5. Les données sont chargées à partir du fichier QVD.

    Fenêtre de progression de chargement de données

    Fenêtre de progression de chargement de données.
Note InformationsPour en savoir plus sur l'utilisation de fichiers QVD pour les chargements incrémentiels, voir cet article de blog dans Qlik Community : Vue d'ensemble du chargement incrémentiel Qlik

 

Merci !

Maintenant que vous êtes parvenu au terme de ce didacticiel, nous espérons que vous avez acquis de nouvelles connaissances en matière de création de scripts dans Qlik Sense. Pour en savoir plus sur les formations complémentaires disponibles, rendez-vous sur notre site Web.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !