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

PHP & Base de données Discussion :

Jointure ou Serialisation


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Juillet 2011
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Jointure ou Serialisation
    Bonjour Tout le monde,

    Je suis dans un cas ou je dois utiliser une relation many-to-many

    par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    article  : id, titre
    domaine : id, nom
    article_domaine : id_article, id_domaine
    J'ai remarqué que je pourrai l'utiliser autrement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    créer une seule table
    article : id, nom, domaines
    dans le champ domaine je sauvegarde un array de domaine sérialisé avec la fonction serialize() php.

    C'est quoi les avantages et les inconvénient de chaque solution ?
    Qui est la plus performante pour effectuer des statistique ?


    Merci d'avance

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    je suis pas celui qui est spécialisé dans l'optimisation de requete en SQL.
    parce que la question est bien sur le SQL, ...

    personnellement je prefere rester sur un schéma en étoile: moins de redondances et des jointures qui ne coutent rien avec les indexes.

    si tu veux faire des choses vraiment intéressantes comme pré-calcul, alors... précalcules des sommes et des comptages, éventuellement des moyenne (mais... des moyennes de moyennes sans les pondérations) ou des agrégats et utilises-les.

  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 801
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 801
    Points : 34 063
    Points
    34 063
    Billets dans le blog
    14
    Par défaut
    Ton schéma de données est bon, ne le change surtout pas !

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Points : 2 284
    Points
    2 284
    Par défaut
    hello,

    C'est quoi les avantages et les inconvénient de chaque solution ?
    La solution 2 pose un énorme problème, puisque tu ne seras plus capable de requêter ces données, en effet n'étant plus normalisées, les requêtes vont devenir impossible.

    Qui est la plus performante pour effectuer des statistique ?
    La première. Les bases de données ont bon rôle dans les calculs intégrant un nombre important de données. Normaliser tes données, solution 1, permettra au moteur d'être plus efficient.

    en sérialisant, tu dénormalises, ce n'est pas du tout optimum dans le but de faire des statistiques.

    Quel avantage pourrait voir à sérialiser une donnée quoi est ensuite enregistrer dans une base de données ?
    Perso je n'en vois pas.

    La sérialisation est souvent utilisée dans le transport de données (genre soap), ou le stockage temporaire d'une donnée (genre session), ou alors lorsque strictement aucun calcul d'ensemble n'est demandé (genre memcache (hors no-sql)).

    a+

Discussions similaires

  1. Jointure qui ne renvoie pas tous les enregistrements
    Par rayonx dans le forum Langage SQL
    Réponses: 12
    Dernier message: 19/07/2024, 09h33
  2. pb jointure texture
    Par dweis dans le forum DirectX
    Réponses: 2
    Dernier message: 24/06/2003, 13h33
  3. Jointures en SQL
    Par Guizz dans le forum Langage SQL
    Réponses: 10
    Dernier message: 04/06/2003, 12h21
  4. Réponses: 14
    Dernier message: 17/03/2003, 18h31
  5. Jointures INNER et jointures classiques ???
    Par UbiK dans le forum Langage SQL
    Réponses: 3
    Dernier message: 05/09/2002, 10h29

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