IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Conception/Modélisation Discussion :

[Modélisation DW] Fait et Dimension dans une seule table ?


Sujet :

Conception/Modélisation

  1. #1
    Membre habitué Avatar de anayathefirst
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 326
    Points : 182
    Points
    182
    Par défaut [Modélisation DW] Fait et Dimension dans une seule table ?
    Bonjour,
    J'ai des notions métiers qui peuvent être considérées parfois comme des faits, et parfois comme dimensions.
    Un exemple qui pourrait illustrer ma situation serait les clients :
    Je peux avoir besoin de ressortir :
    - le chiffre d'affaire généré pour chaque client (Dimension)
    - le nombre de clients pour chaque produit (Fait)

    Ma question est la suivante : que préconisez vous comme modélisation :
    - utiliser une seule table comme table de fait et table e dimension ? cela m'obligerais à lier deux table de fait directement (CA et Client). AÏAÏAÏ
    - ou alors créer deux table distinctes :
    * F_CLIENT qui contient les informations factuelles
    * et D_client, table de dimension ?
    cette dernière méthode engendrera des doublons

    Personnellement, je préfère ajouter de la redondance, dans la mesure ou le principe du data warehouse est de rajouter de la redondance pour optimiser les requête. mais je préfère consulter votre avis d'expert avant de prendre une décision
    merci d'avance

  2. #2
    Membre éclairé
    Avatar de patriceharel
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    466
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 466
    Points : 884
    Points
    884
    Par défaut
    Bonjour,

    Je ne comprends pas pourquoi tu considères le CA de tes clients comme une information de dimension?

  3. #3
    Membre habitué

    Inscrit en
    Août 2008
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 177
    Points : 125
    Points
    125
    Par défaut
    Personnelement, je suis pas expert, mais il me semble que le CA est dans la table de fait et pas une dimension.

    Un simple en modèle en étoile suffit, avec deux dimensions client et produit, et une table de fait avec le montant.

  4. #4
    Expert confirmé
    Avatar de doc malkovich
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2008
    Messages
    1 884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 884
    Points : 4 285
    Points
    4 285
    Billets dans le blog
    1
    Par défaut
    je suis d'accord avec dingo200, même s'il n'est pas expert

    client et produit sont des dimensions, tu as une table de fait avec le montant qui te donne le ca et tu as le nombre de clients = count(distinct [Table de fait].[Identifiant Client] )

  5. #5
    Membre habitué Avatar de anayathefirst
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 326
    Points : 182
    Points
    182
    Par défaut
    Eh... en disant "CA par client (Dimension)", je veux dire, que j'utilise la notion client comme dimension pour obtenir le CA, mais le "fait" est bien le CA dans ce cas là.
    et quand je compte le nombre de clients, le Client est un "Fait" (j'ai 75 clients qui ont acheté tel produit en 2008)

    En fait, Le client était un exemple pour présenter ma problématique. Je crains ne pas avoir choisit la meilleur métaphore qui soit ...

  6. #6
    Membre éclairé
    Avatar de Reskibil
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 561
    Points : 815
    Points
    815
    Par défaut
    Je l'ai fait en conservant la même table qui sesrvait de fait et de dimension mais pour le quelques outils que je connais, je dirais deja de regarder ce qu'accepte ton outil. La modélisation de cubes et assez différente d'un outil à l'autre et ce qui est accepté dans l'un ne l'est pas forcément dans un autre.

    Ex: SQL Server 2K5 accepte un modèle contenant plusieurs tables de faits, SAS n'accepte qu'une seule table de fait à la fois.

  7. #7
    Membre habitué Avatar de anayathefirst
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 326
    Points : 182
    Points
    182
    Par défaut
    C'est vrai que SQL Server 2K5 est très permissif, c'est ce que j'utilise. mais ce que je voudrait déterminer, c'est comment faire une modélisation plus ou moins propre.

    Je crois que je vais opter pour une table de Faits et une table de dimension séparées.

    merci pour vos commentaires

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] l'ajout Des Données de 3 tables dans une seule table apres validation
    Par sooprano dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 19/11/2008, 16h54
  2. Soustraction dans une seul Table ?
    Par moutavril dans le forum Langage SQL
    Réponses: 7
    Dernier message: 13/05/2008, 02h36
  3. import dans une seule table
    Par mike2302 dans le forum VBA Access
    Réponses: 10
    Dernier message: 28/06/2007, 07h03
  4. Réponses: 5
    Dernier message: 21/06/2007, 08h49
  5. plusieurs tables dans une seule table
    Par scully2501 dans le forum Access
    Réponses: 1
    Dernier message: 10/10/2005, 09h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo