Buffer

Il est possible de créer et de gérer automatiquement des fichiers QVD à l'aide du préfixe buffer. Ce préfixe peut être utilisé dans la plupart des instructions LOAD et SELECT du script. Il indique que des fichiers QVD sont utilisés pour mettre en cache/mémoire tampon le résultat de l'instruction.

Syntax:  

Buffer [(option [ , option])] ( loadstatement | selectstatement )

option::= incremental | stale [after] amount [(days | hours)]

 

Si aucune option n'est utilisée, le tampon (buffer) QVD créé par la première exécution du script est utilisé indéfiniment.

Par défaut, les tampons QVD sont stockés dans C:\ProgramData\QlikTech\QlikView\Buffers.

Les tampons QVD sont normalement supprimés lorsqu'ils ne sont plus référencés nulle part lors d'une exécution de script complète dans le document qui les a créés ou lorsque le document qui les a créés n'existe plus.

Arguments:  

Argument Description
incremental L'option incremental permet de ne lire qu'une partie d'un fichier sous-jacent. La taille précédente du fichier est stockée dans l'en-tête XML du fichier QVD. Cette méthode s'avère particulièrement utile dans le cas des fichiers journaux. Tous les enregistrements chargés précédemment sont lus à partir du fichier QVD tandis que les nouveaux enregistrements ultérieurs sont lus à partir de la source d'origine, avant qu'un fichier QVD à jour ne soit créé. Notez toutefois que l'option incremental s'emploie exclusivement avec des instructions LOAD et des fichiers texte, et qu'il est impossible d'utiliser incremental load lorsque d'anciennes données ont été modifiées ou supprimées.
stale [after] amount [(days | hours)] amount est un nombre spécifiant la période. Cet argument admet l'utilisation de décimales. Si l'unité n'est pas précisée, les jours sont utilisés par défaut.
L'option stale after est généralement utilisée avec des sources de base de données qui ne comportent pas d'horodatage simple pour les données d'origine. À la place, vous spécifiez de quand peut dater l'instantané QVD à utiliser. Une clause stale after spécifie simplement une période commençant à la date de création du tampon QVD et après laquelle celui-ci ne sera plus considéré comme valide. Avant l'expiration de ce délai, le tampon QVD est utilisé comme source de données et après ce moment, c'est la source de données d'origine. Le fichier de tampon QVD est alors mis à jour automatiquement et une nouvelle période débute.

Limitations:  

Cette fonction présente de nombreuses limites, la plus notable étant qu'une instruction LOAD de fichier ou une instruction SELECT soit au cœur de toute instruction complexe.

Example 1:  

Buffer SELECT * from MyTable;

Example 2:  

Buffer (stale after 7 days) SELECT * from MyTable;

Example 3:  

Buffer (incremental) LOAD * from MyLog.log;