Etape 2 : Identification du grain

Identifiez la granularité de chaque table de faits et processus métier. Pendant cette procédure, vous identifiez les types de table de faits, ainsi que les candidats préliminaires pour les dimensions et les mesures.
La liste suivante contient différentes caractéristiques d'identification du grain :
Spécification du contenu des enregistrements
Lorsque vous identifiez le grain, vous indiquez le contenu exact d'un enregistrement de la table de faits. Le grain indique le niveau de détail associé aux mesures de la table de faits. Lorsque vous identifiez le grain, vous choisissez également le niveau de détail disponible dans le modèle dimensionnel. Si davantage de détails sont inclus, le niveau de granularité est plus faible. S'il y a moins de détails, le niveau de granularité est plus élevé.
Identification du niveau de détail
Le niveau de détail disponible dans un schéma en étoile est appelé le grain. Chaque table de faits et de dimensions possède son propre grain ou sa propre granularité. Chaque table (de faits ou de dimensions) contient un niveau de détail qui lui est associé. Le grain du modèle dimensionnel est le niveau de détail le plus fin utilisé lorsque les tables de faits et de dimensions sont jointes. Par exemple, la granularité d'un modèle dimensionnel composé des dimensions Date, Magasin et Produit est produit vendu en magasin chaque jour.
Identification des données
Chaque ligne contient le même type de données. Par exemple, chaque ligne peut contenir les ventes quotidiennes par magasin et par produit ou des lignes article par jour et par magasin.
Par exemple, les définitions de grain peuvent inclure les lignes suivantes :

Les tables de faits et de dimensions sont associées à une granularité. Dans une modélisation dimensionnelle, la granularité fait référence au niveau de détail stocké dans une table. Par exemple, une dimension, telle que la dimension Date (incluant les hiérarchies Année et Trimestre), possède une granularité au niveau Trimestre mais ne possède pas d'informations pour des jours ou des mois spécifiques. De la même manière, une table de dimensions Date (incluant les hiérarchies Année, Trimestre et Mois) possède une granularité au niveau Mois mais ne contient pas d'informations sur les jours.

Vous pouvez prendre en charge différentes granularités de données en utilisant plusieurs tables de faits (tables Jour, Mois et Année). Vous pouvez également utiliser une seule table dotée d'un indicateur de granularité ou d'une colonne indiquant le grain de la table. Toutefois, vous ne devez pas stocker des données avec des granularités différentes dans la même table de faits.

Lorsque vous identifiez les grains des objets de données, procédez comme suit :
  1. Déterminez la granularité de la table de faits.
  2. Identifiez le mode de traitement de plusieurs grains distincts.
  3. Identifiez le type de table de faits à utiliser.
  4. Vérifiez l'atomicité des grains.
  5. Déterminez les dimensions et les mesures de niveau supérieur en fonction des définitions de grain.
  6. Créez un rapport des définitions de grain.

Identification des métadonnées du grain

Vous devez collecter les métadonnées suivantes pendant cette phase :

Identification de la granularité de la table de faits

Le détail du grain repose sur les exigences analysées et décrites à la rubrique Etape 1 : Identification des exigences d'un processus métier. Collectez des documents, tels que les factures, les reçus et les bons de commande. Ces documents contiennent souvent des informations que vous pouvez utiliser pour définir le grain. Ils comportent également des informations qui permettent d'identifier les dimensions et les mesures des modèles dimensionnels.

Le grain sélectionné détermine le niveau des informations détaillées dont le modèle dimensionnel peut disposer.

La définition du grain représente la base de chaque modèle dimensionnel. Elle détermine le niveau des informations disponibles. Les règles à suivre pour la définition du grain doivent inclure les éléments suivants :
  • Pendant la phase de formulation des exigences métier, essayez de collecter le maximum de documents, tels que les formulaires de facturation, les bons de commande et les reçus. En général, ces données sont associées à des données transactionnelles, telles que des numéro de commande et de facture.
  • Les documents peuvent souvent indiquer les éléments importants de l'activité, tels que les clients et les produits. Ils contiennent souvent des informations au niveau le plus bas requis par l'activité.
  • La date représente également un élément important à prendre en considération. Identifiez le niveau de détail associé à un client, à un produit ou à un fournisseur. Les informations des systèmes source sont-elles disponibles au niveau Jour, Mois ou Année ?

Traitement de plusieurs grains distincts

Déterminez si plusieurs grains sont associés au processus métier pour lequel vous concevez le modèle dimensionnel. Il peut y avoir plusieurs définitions de grain associées à un même processus métier. Dans ce cas, concevez des tables de faits distinctes avec des grains séparés. N'associez pas toutes les mesures à une seule table de faits.

Vous pouvez prendre en charge différentes granularités de données en utilisant plusieurs tables de faits (tables Jour, Mois et Année, par exemple). Lorsque vous déterminez comment vous devez traiter les différentes granularités, prenez également en considération le volume de données et la quantité d'espace, ainsi que les performances requises.

Critères définis pour une ou plusieurs tables de faits
Pour déterminer si vous devez utiliser une ou plusieurs tables de faits, prenez en compte les critères suivants :
  • Examinez les mesures. Déterminez si vous souhaitez regrouper les mesures dans une même table de faits ou dans des tables de faits distinctes avec des grains différents.
  • Plusieurs systèmes source OLTP doivent-ils être utilisés ? Chaque système source est conçu pour remplir une fonction spécifique et précise. Si deux systèmes source remplissent des fonctions comparables, regroupez-les dans un même système source. Si vous devez maintenir les systèmes séparés, chaque système source répond à une exigence donnée de l'entreprise. Si les processus métier comprennent la gestion des commandes, l'inventaire des stocks ou l'inventaire de l'entrepôt, il est probable que vous utilisez deux systèmes source distincts. Dans ce cas, utilisez des tables de faits distinctes.
  • Déterminez si vous utilisez plusieurs processus métier qui n'ont pas de liens. Créez des tables de faits distinctes pour ces processus métier. Si un processus métier requiert différents niveaux de granularité, créez des tables de faits distinctes pour les prendre en charge.
  • Si une dimension ne correspond pas à la définition de grain, concevez une nouvelle table de faits dotée de sa propre définition de grain.
  • Prenez en compte le moment de survenue et l'ordre des événements. Vous pouvez être amené à utiliser des processus distincts pour traiter un même événement. Par exemple, une entreprise commercialise son produit. Des clients commandent les produits. Le service de comptabilité génère une facture. Le client règle la facture. Une fois l'achat effectué, le client peut retourner certains des produits ou renvoyer des produits pour réparation. Si l'un des produits n'est plus sous garantie, ce processus requiert une nouvelle facturation. Des processus différents s'exécutent au cours d'un même événement d'achat. Il est probable que chacun de ces processus s'exécute à un moment différent. Chacun de ces processus est pris en charge en utilisant des tables de faits distinctes.
Granularités multiples dans une même table de faits
Si vous utilisez plusieurs grains dans une même table de faits, ajoutez une colonne appelée indicateur de granularité. Cette colonne indique le grain de la table. La colonne définit si les informations sont stockées tous les jours, toutes les semaines, tous les mois ou tous les ans.
Remarque : Vous pouvez stocker plusieurs grains dans une même table de faits mais cette procédure est déconseillée. Concevez des tables de faits et des schémas en étoile distincts pour chaque définition de grain.

Identification des types de tables de faits à utiliser

Identifiez le type de table de faits utilisé dans la conception du modèle dimensionnel. Pour plus d'informations sur les tables de faits, voir Tables et entités de faits.

Vérification de l'atomicité du grain

Vérifiez l'atomicité (niveau de détail) du grain pour vous assurer qu'il se trouve au niveau le plus détaillé. Cette décision inclut la prise en compte des besoins futurs pour limiter le risque d'avoir à reconcevoir le modèle lors de l'évolution des exigences métier.

Le grain du modèle dimensionnel est important lorsque vous concevez le modèle dimensionnel. Même si les exigences métier demandent des informations au niveau Mois ou Trimestre, assurez-vous que des informations sont disponibles au niveau Jour. Si des dimensions sont plus détaillées (atomiques), l'entreprise peut extraire des informations plus précises.

Par exemple, supposons qu'une dimension Date ne possède qu'un seul attribut Année. Avec un seul attribut, vous ne pouvez pas demander des informations au niveau Trimestre, Mois ou Jour. Pour afficher le plus grand nombre d'informations disponibles, sélectionnez un grain atomique détaillé. Dans cet exemple, vous pouvez définir le grain au niveau Jour.

Par exemple, prenons le grain d'un produit vendu dans un magasin. Vous ne pouvez pas associer un client à un produit acheté car il n'y a qu'une ligne pour un produit. Si le produit est acheté des milliers de fois par des milliers de clients différents, vous ne pouvez pas obtenir ces informations.

Vous pouvez toujours déclarer des grains de niveau supérieur pour un processus métier en utilisant des agrégations des données les plus atomiques et détaillées. Toutefois, lorsqu'un grain de niveau supérieur est sélectionné, le nombre de dimensions est limité et peut être moins granulaire. Vous ne pouvez pas explorer ces dimensions moins granulaires pour accéder à un niveau de détail inférieur.

La granularité permet de trouver un compromis pour prendre en charge les points importants de l'entreposage de données :
  • Performances/volume de données (avec le coût de stockage de ces données)
  • Capacité d'accès aux données détaillées/Performances (avec le coût du stockage et l'accès à des données volumineuses)
La sélection du niveau de granularité approprié a une réelle incidence sur le volume de données stockées dans l'entrepôt de données. La sélection d'un niveau de granularité approprié permet également de déterminer la capacité de traitement des requêtes de l'entrepôt de données.

Lorsque vous prenez en compte l'espace disque et le volume de données, une granularité plus élevée assure un stockage plus efficace des données qu'une granularité plus faible. Vous pouvez également prendre en compte l'espace disque nécessaire à l'index des données. L'utilisation d'un index permet de gagner de l'espace disque. Prenez également en considération la manipulation de données volumineuses. La manipulation de données peut avoir une incidence sur les performances et nécessiter davantage de puissance de traitement.

Vous devez toujours trouver des compromis lors du traitement des données. Par exemple, lorsque la granularité augmente, la capacité de répondre à différents types de requête (nécessitant des données d'un niveau plus détaillé) diminue. Si la table utilise un niveau de granularité faible, vous pouvez traiter toutes les requêtes à l'aide de ces données mais vous risquer d'utiliser davantage d'espace de stockage et de ralentir les performances.

Même si la granularité n'affecte pas les capacités de traitement d'une requête, le système peut demander davantage de ressources pour exécuter une même requête. Supposons que vous disposiez de deux tables dotées de niveaux de granularité différents : Une table avec les détails de transaction et une table qui récapitule les comptes chaque mois. Pour créer un rapport de compte mensuel, vous pouvez utiliser une table qui ne dépend pas de la granularité. Toutefois, l'interrogation d'une table de transaction détaillée entraîne une recherche dans davantage de données, ce qui nécessite un traitement pour calculer les résultats. La table récapitulative des comptes mensuels requiert moins de ressources.

Lorsque vous sélectionnez le niveau de granularité, trouvez un compromis entre le coût généré par le volume des données et la capacité de répondre aux requêtes.

Identification des dimensions et des mesures de niveau supérieur

Identifiez les dimensions et les mesures préliminaires de niveau supérieur à partir de votre conception de la définition du grain. Aucune analyse approfondie n'est effectuée pour identifier ces dimensions ou mesures. Lorsque vous définissez correctement le grain, vous pouvez facilement identifier les dimensions et les mesures préliminaires.

Les mesures préliminaires sont des mesures qui peuvent être facilement identifiées en examinant la définition du grain. Par exemple, des mesures telles que le prix à l'unité, la quantité et les rabais sont facilement identifiables si vous examinez le grain. En revanche, des mesures détaillées, telles que le coût, le prix de fabrication et le coût de transport ne sont pas des mesures préliminaires identifiées par le grain. Ces types de mesure sont masquées et n'apparaissent généralement jamais dans un rapport. Les mesures préliminaires ne figurent pas dans l'ensemble de mesures définitives. L'identification formelle des mesures détaillées est effectuée lors de l'identification des mesures.

Ces dimensions et ces mesures préliminaires de niveau supérieur sont utiles pour l'identification formelle des dimensions.

Création d'un rapport sur la phase d'identification du grain

Le rapport de définition du grain est créé pour cette phase. Le rapport contient une ou plusieurs définitions du grain du processus métier et définit le type de table de faits. Le rapport contient également les dimensions et les mesures préliminaires de niveau supérieur.


Commentaires en retour