Meilleures pratiques de modélisation des données

Cette section décrit différentes manières de charger des données dans le document QlikView, suivant la structure et le modèle de données que vous souhaitez obtenir.

En général, la façon dont les données sont chargées dans le document peut s'expliquer par le processus d'extraction, de transformation et de chargement (ETL) :

  1. Extraction

    La première étape consiste à extraire les données de leur source. Dans le script, utilisez les instructions SELECT ou LOAD à cette fin. Les différences entre ces instructions sont les suivantes :

    • SELECT permet de sélectionner des données à partir d'une source de données ODBC ou d'un fournisseur OLE DB. L'instruction SELECT SQL est évaluée par le fournisseur de données, pas par QlikView.
    • LOAD permet de charger des données à partir d'un fichier, de données définies dans le script, d'une table déjà chargée, d'une page Web, du résultat d'une instruction SELECT ultérieure ou de données générées automatiquement.
  2. Transformation

    L'étape de transformation implique de manipuler les données au moyen de règles et de fonctions de script afin d'en dériver la structure de modèle de données souhaitée. Les opérations classiques sont les suivantes :

    • Calcul de nouvelles valeurs
    • Traduction des valeurs codées
    • Modification des noms de champ
    • Jonction de tables
    • Agrégation des valeurs
    • Pivotement
    • Validation des données
  3. Chargement

    L'étape finale consiste à exécuter le script pour charger le modèle de données défini dans le document.

Votre objectif doit consister à créer un modèle de données permettant de manipuler les données de façon efficace dans QlikView. Le plus souvent, cela signifie qu'il est recommandé de concevoir un schéma en étoile ou en flocon raisonnablement normalisé, sans aucune référence circulaire (bref, un modèle dont chaque entité figure dans une table distincte). Autrement dit, un modèle de données type devrait avoir l'aspect suivant :

  • une table centrale répertoriant les faits, qui contient les identifiants des dimensions et des nombres utilisés pour calculer les mesures (nombre d'unités, montants des ventes, montants budgétaires, etc.) ;
  • des tables environnantes contenant les dimensions assorties de tous leurs attributs (produits, clients, catégories, calendrier, fournisseurs, etc.).
Remarque: La plupart du temps, il est possible de résoudre une tâche (des agrégations, par exemple) soit en créant un modèle de données plus riche dans le script de chargement, soit en effectuant les agrégations dans les expressions de graphique. En règle générale, vous obtiendrez de meilleurs résultats en conservant les transformations de données dans le script de chargement.
Conseil: Il est recommandé de tracer une esquisse du modèle de données sur une feuille. Ceci vous aidera en fournissant une structure sur les données à extraire, et les transformations à effectuer.

Chaque table de votre modèle de données correspond généralement à une instruction SELECT ou à une instruction LOAD. Les différences entre ces instructions sont les suivantes :

  • SELECT permet de sélectionner des données à partir d'une source de données ODBC ou d'un fournisseur OLE DB. L'instruction SELECT SQL est évaluée par le fournisseur de données, pas par QlikView.
  • LOAD permet de charger des données à partir d'un fichier, de données définies dans le script, d'une table déjà chargée, d'une page Web, du résultat d'une instruction SELECT ultérieure ou de données générées automatiquement.