Utilisation de fichiers QVD

Un fichier QVD (QlikView Data) est un fichier contenant une table de données exportée à partir de Qlik Sense. 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 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.

Les charges optimisées présentent certaines limitations. Il est possible de renommer les champs, mais les opérations mentionnées dans cette section désactiveront la charge optimisée et produiront une charge standard.

  • Toutes les transformations appliquées aux champs chargés
  • Utilisation d'une clause where entraînant la décompression des enregistrements par Qlik Sense
  • Application de l'instruction Map à un champ chargé

Rôle des fichiers QVD

Les fichiers QVD s'utilisent à de nombreuses fins et il est possible d'en appliquer plusieurs dans n'importe quelle situation. Au moins quatre usages principaux sont facilement identifiables :

  • Augmentation de la vitesse de chargement
  • Grâce à la mise en mémoire tampon de blocs de données d'entrée qui ne changent pas ou qui changent lentement dans les fichiers QVD, l'exécution du script devient beaucoup plus rapide pour les grands ensembles de données.

  • 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 à la fois, il suffit de les charger une seule fois dans un fichier QVD à partir de la base de données source. D'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
  • Avec l'instruction de script binary, il est possible de charger des données à partir d'une seule application dans une autre, mais avec les fichiers QVD, un script permet de combiner des données provenant d'un nombre illimité d'applications. Cette méthode permet, par exemple, à des applications de consolider des données similaires issues de différentes unités commerciales.

  • Chargement incrémentiel
  • Dans la grande majorité des cas courants, il est possible d'employer la fonctionnalité QVD dans le but d'effectuer un chargement incrémentiel, c'est-à-dire en chargeant seulement les nouveaux enregistrements à partir d'une base de données en cours d'expansion.

    Pour plus d'informations, voir Chargement incrémentiel d'enregistrements nouveaux et mis à jour.

Création de fichiers QVD

Il existe deux façons de créer un fichier QVD :

  • Création et dénomination explicites en utilisant 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 explicitement nommé à l'emplacement de votre choix.

    Pour plus d'informations, voir Store.

  • Création et maintenance automatiques depuis le script. Lorsque vous faites précéder une instruction LOAD ou SELECT du préfixe buffer, Qlik Sense crée automatiquement un fichier QVD qui, sous certaines conditions, peut être utilisé à la place de la source de données d'origine lors du rechargement des données.

    Pour plus d'informations, voir Buffer.

Les fichiers QVD résultants ne présentent aucune différence en termes de vitesse de lecture.

Lecture de données à partir de fichiers QVD

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

  • Chargement d'un fichier QVD comme source de données explicite. Il est possible de référencer les fichiers QVD par une instruction LOAD dans le script, à l'instar de tout autre type de fichiers texte (csv, fix, dif, biff, etc.).
  • Example:  

    LOAD * from xyz.qvd (qvd);

    LOAD Name, RegNo from xyz.qvd (qvd);

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

  • Chargement automatique de fichiers QVD placés en mémoire tampon. Lorsque vous utilisez le préfixe buffer avec des instructions LOAD ou SELECT, aucune instruction explicite n'est nécessaire pour la lecture. Qlik Sense détermine dans quelle mesure il utilisera les données du fichier QVD plutôt que d'acquérir les données au moyen de l'instruction LOAD ou SELECT d'origine.
  • 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.

Format QVD

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

  • Un en-tête.

    Remarque: Si le fichier QVD a été généré à l'aide de QlikView, il s'agit d'un en-tête XML bien formé (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.