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 :

Quel modèle décisionnel pour une relation n-n ?


Sujet :

Conception/Modélisation

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 60
    Points
    60
    Par défaut Quel modèle décisionnel pour une relation n-n ?
    Bonjour à tous,

    Je travaille actuellement sur la mise en place d'un modèle décisionnel et je bloque sur une partie de la modélisation.
    Je m'explique :
    1. Ma table de fait enregistre la création d'un CV ==> une ligne = 1 CV créé.
    2. Ma dimension CV regroupe les informations du CV (titre..). Parmi ces informations, les métiers souhaités. J'ai donc également une dimension Métier.
    3. Un CV peut avoir jusqu'à 5 métiers. Les dimensions CV et Métiers ont donc une relation N-N et non 1-N qu'un modèle décisionnel devrait respecter!

    Voyez-vous le même problème que moi, ou me fourvoie-je complètement ?

    Et si problème il y a, y-t-il un moyen d'intégrer cette notion (1 CV a plusieurs métiers - 1 Métier a plusieurs CV) au sein d'un modèle décisionnel?

  2. #2
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Points : 5 848
    Points
    5 848
    Par défaut
    Bonjour,

    En fait, tout dépend...

    Ce qu'il y a c'est qu'à ce niveau, il est trop tôt pour parler de dimension. Il faut raisonner en lignes de tables de ta BDD.

    En effet, tu dis qu'un CV peut avoir jusqu'à 5 métiers, OK, mais en terme de lignes ? Est ce que dans ta table CV, tu auras 5 lignes, une pour chaque métier ?

    Si c'est le cas, ta relation sera alors :
    CV 1,1 --- 1,n Métiers
    A chaque ligne de CV correspond une ligne de Métier
    A chaque ligne de Métier correspond une ou plusieurs lignes de CV
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 60
    Points
    60
    Par défaut
    Salut,

    Merci de ton intérêt.
    En fait, j'aurais une seule ligne parce que pour chaque CV, j'ai aussi 5 localisations possibles. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Id_CV    Titre_CV    Localisation1    Localisation2    Localisation3    Localisation4    Localisation5    Metier1    Metier2    Metier3    Metier4    Metier5
    1    Mon_CV    Paris    Ile-De-France    Saint-Denis    Non renseigné    Non renseigné    Secrétaire    Assistante de direction    Secrétaire médicale Assistant    Non renseigné
    Si je devais avoir une ligne par information, il me faudrait 5*5 lignes pour un CV !
    ça n'est pas possible, d'autant que demain, on pourrais autoriser 10 localisations, intégrer les types de contrats souhaités ou que sais-je encore.

    Tu vois la problématique? J'y travaille depuis plusieurs semaines, sans trouver la solution...

  4. #4
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Points : 5 848
    Points
    5 848
    Par défaut
    Je vois...

    Cependant, je ne vois pas comment tu veux aller récupérer une information de cette manière. Car si tu places tes 5 localisations et tes 5 métiers sur une même ligne de CV, cela voudrait dire qu'il faut créer 5 jointures vers la table Localisation et 5 jointures vers la table Métiers... Ce qui ne peut pas fonctionner.

    Donc, je ne vois que deux solutions pour faire les choses proprement :
    • Soit tu crées une ligne par informations dans ta table CV
    • Soit tu ne gardes qu'une ligne dans ta table CV, mais dans ce cas, il faut créer deux tables intermédiaires (CV_Localisations et CV_Métiers) par exemple qui te permettront de faire le lien entre tes tables CV, Localisations et Métiers.

    Exemple pour ce dernier cas :

    Table CV :
    ID | Nom
    1 | Toto

    Table Localisation :
    ID | Lieu
    1 | Paris
    2 | Londres

    Table Métier :
    ID | Métier
    1 | Médecin
    2 | Tailleur

    Table CV_Localisation :
    ID_CV | ID_LCL
    1 | 1
    1 | 2

    Table CV_Métier :
    ID_CV | ID_MET
    1 | 1
    1 | 2

    Tu pourras voir qu'ainsi, tu n'auras aucune liaison n,n.
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 60
    Points
    60
    Par défaut
    Je pense que c'est la solution que je vais retenir. J'y avais pensé, mais dans ce cas, la table intermédiaire prends le rôle de la table de faits : l'extrémité "plusieurs" de la relation 1-n est tournée vers la table intermédiaire tandis que l'extrémité "un" est tournée vers la table de fait, ce qui me gène un peu
    Mais bon, puisqu'il semble que ce soit la seule solution... je vais résoluer ce post!

    Tom pour avoir réfléchi à la question.

  6. #6
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Points : 5 848
    Points
    5 848
    Par défaut
    C'est tout à fait exact... Cependant, dans ton exemple, on peut tout à fait imaginer que ce sont ces rapprochements qui sont les faits, et que le CV n'est, en quelque sorte, qu'une table de dimension.
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 09/11/2006, 15h28
  2. Quel format choisir pour une clé USB : FAT, FAT32 ou NTFS?
    Par NicolasJolet dans le forum Périphériques
    Réponses: 4
    Dernier message: 03/08/2006, 15h02
  3. Réponses: 3
    Dernier message: 13/04/2006, 18h04
  4. Quel SGBD choisir pour une gestion clientèle ?
    Par kurkaine dans le forum Décisions SGBD
    Réponses: 15
    Dernier message: 06/10/2005, 13h14
  5. [VB.NET] Quel objet tableau pour une recherche indexée ???
    Par Kitano dans le forum Windows Forms
    Réponses: 7
    Dernier message: 02/09/2004, 09h38

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