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

Modélisation Discussion :

Conseil de conception


Sujet :

Modélisation

  1. #1
    Membre confirmé

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Points : 597
    Points
    597
    Par défaut Conseil de conception
    Bonjour,

    Je dois réaliser une base de données, qui va stocker des préférences utilisateurs. J'aimerais connaitre votre avis concernant l'optimisation de ma base de données.

    Voici la donnée :

    - Chaque utilisateur a des données qu'il a remplit, ces données sont liées à une autre table.

    - Puis chaque utilisateur va comparer ses résultats avec chacun des utilisateurs.

    J'ai donc deux solutions :

    - Créer une table par utilisateur
    ou
    - Créer une table avec tous les utilisateurs

    J'aimerais savoir quelle est la meilleur solution, la première me parait plus optimisée, mais plus dure à modifier.

    merci de votre aide

  2. #2
    Membre régulier

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 37
    Points : 81
    Points
    81
    Par défaut
    Bonjour,
    Je pense que le plus simple est d'avoir une table Utilisateurs et une table Préférence. La table Utilisateurs possederait en clé étrangère l'id de Préférence.
    Mon entreprise recrute des développeurs C#, n'hésitez pas à me contacter par MP

  3. #3
    Membre confirmé

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Points : 597
    Points
    597
    Par défaut
    Merci de ta réponse, cependant je pense avoir mal présenté la question. Voici la donné mieux présentée :

    - Plusieurs milliers d'utilisateurs
    - Une table de donnée de quelques milliers d'entrées
    - Chaque utilisateur va évaluer chacune des entréees

    Je vois deux solutions, voici la première :

    Trois tables

    - La première contient les données
    - La seconde possède les données utilisateurs
    - La troisième contient les préférences de chaque utilisateur avec des clés étrangères vers les données et les users

    La deuxième solution :

    - Une table données
    - Une tables données utilisateurs
    - Une table par utilisateur avec les préférences de chaque donnée

    Je vois les différences suivantes :

    - Avec la première version, j'ai des tables plus grande consommant plus de ressources pour les recherches.

    - Avec la seconde j'ai plus de tables

    Quel est votre avis ? Dois-je faire attention au nombre de table ? Il y a t-il une différence sensible de performance entre les deux solutions ?

    Merci de votre aide

  4. #4
    Membre averti
    Avatar de witch
    Inscrit en
    Mai 2007
    Messages
    346
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mai 2007
    Messages : 346
    Points : 335
    Points
    335
    Par défaut
    Bonsoir,

    Citation Envoyé par manticore Voir le message
    Merci de ta réponse, cependant je pense avoir mal présenté la question. Voici la donné mieux présentée :

    - Plusieurs milliers d'utilisateurs
    .....

    - Une table par utilisateur avec les préférences de chaque donnée
    ce qui veut dire Plusieurs miliers de tables
    ce n'est absolument pas la meilleure solutions ça se voit, et c'est même inutile, quand t'aura besoin de faire des requêtes pour trouver des informations sur telle ou telle utilisateur par rapport aux autres utilisateurs, tu ne vas pas les chercher n'importe où sur ta base de données

    Je pense plutôt à une liaison entre table utilisateur et table préférences de type 0-N , 0-N
    c'est à dire un utilisateur peut avoir choisi de 0 à N préférences, et pour chaque préférence ça peut exister chez 0 à N utilisateur, ce qui me parait le plus logique, ce qui doit générer une troisième table intermédiaire entre utilisateurs et préférences, une table qu'on pourra appelé préférences_utilisateur.
    Après pour optimiser les recherches entre ces deux tables, je suggère de mettre des indexes sur les Id préférences et Id utilisateurs, là où il convient selon les requêtes habituelles et quand le nombre d'enregistrement est important.

    +
    If a pretty poster and a cute saying are all it takes to motivate you, you probably have a very easy job. The kind robots will be doing soon.

  5. #5
    Membre confirmé

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2009
    Messages
    377
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2009
    Messages : 377
    Points : 597
    Points
    597
    Par défaut
    Merci pour ta réponse,

    je vais passer par une table intermédiaire et faire des relations 0-n n-0

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

Discussions similaires

  1. Conseil de conception
    Par olive_le_malin dans le forum C++
    Réponses: 19
    Dernier message: 24/07/2007, 09h23
  2. Conseils en Conception / Architecture
    Par olive_le_malin dans le forum C++
    Réponses: 4
    Dernier message: 03/02/2007, 02h18
  3. conseil pour conception de base
    Par karidrou dans le forum Modélisation
    Réponses: 1
    Dernier message: 16/01/2007, 18h11
  4. Conseil de conception
    Par PadawanDuDelphi dans le forum Delphi
    Réponses: 6
    Dernier message: 30/10/2006, 18h07
  5. Conseil sur conception : Référencer les applications
    Par alladdinbh dans le forum Modélisation
    Réponses: 3
    Dernier message: 25/09/2006, 17h19

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