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

Requêtes MySQL Discussion :

Performances : intérêt des vues ?


Sujet :

Requêtes MySQL

  1. #1
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut Performances : intérêt des vues ?
    Bonjour,

    J'ai des gros soucis de perf sur un select avec pleins de tables et les index qui faut et les join qui vont bien.

    Je me suis dis que pour optimiser le tout je pouvais passer par les vues mais je n'arrive pas à trouver d'infos sur le fait que MySQL optimise ou pas ces vues, donc je ne sais pas si c'est une bonne idée...

    Des avis ?

    Merci d'avance.

  2. #2
    Membre habitué

    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 145
    Points : 180
    Points
    180
    Par défaut
    Bonjour,

    en fat tu as 2 types d'algorythmes de création de vue utilisés par MySQL :

    - le MERGE
    - le TEMPTABLE

    une vue créée en mode MERGE revient en fait à une subsitution de code SQL. le SELECT est effectué directement dans la ou les tables impliquées dans la vue (underlying table) et non sur un objet relatif à la vue.

    une vue créée en mode TEMPTABLE engendre la génération d'un objet table temporaire qui est un snapshot des données de la ou des underlying table(s)

    Par défaut, MySQL utilise lors d'un CREATE VIEW le mode UNDEFINED, en fait, l'optimiseur défini seul l'algo à utiliser.

    Généralement les résultats obtenu depuis une vue MERGE sont plus rapides.
    De plus, une vue TEMPTABLE n'est pas UPDATABLE.

    HTH,

  3. #3
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Bon ça helps pas tout mais merci de ces précisions techniques.

    Alors MERGE = substitution de code
    donc une grosse requetes ou une petite requêtes impliquant une vue (la vue = partie de la grosse requête) c'est kifkif bourriquot ? bonnet-blanc blanc-bonnet ? du pareil au même ? Si oui alors ca ne m'interesse pas.

    TEMPTABLE est généralement plus lent que MERGE (dixit toi)
    Donc vu ci-dessus c'est même pas la peine d'y penser !

    j'ai bon comme résonnement ?

  4. #4
    Membre émérite Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Points : 2 973
    Points
    2 973
    Par défaut
    Salut,

    Je dirais que les vues ne sont en général pas conçues comme un moyen d'optimiser les performances mais plutôt comme une commodité visant à simplifier des relations complexes entre tables, ou à gérer des privilèges utilisateurs plus fins.

    A la rigueur ce qui peut être plus rapide c'est que les ordres SQL sur la vue qui transitent sur le réseau sont en général plus concis que leur équivalent en commandes SQL classiques, mais bon rien de transcendant...
    Pensez au bouton

  5. #5
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Merci, ca correspond à mon intuition
    Donc j'abandonne la piste des vues, je me tourne vers explain... sisi j'ai commencé par là, mais je me disais pourquoi pas...

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

Discussions similaires

  1. Performances des vues (non matérialisées)
    Par campra dans le forum Débuter
    Réponses: 3
    Dernier message: 10/09/2010, 12h01
  2. [PERFORMANCE] acces a des vues
    Par Valkirion dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/03/2009, 13h42
  3. Travailler sur des vues ou sur des tables, vs performance ?
    Par carjo dans le forum Administration
    Réponses: 3
    Dernier message: 06/02/2009, 13h46
  4. [SQL2K] Performance des vues : XFiles (la vérité est ailleurs)
    Par Worldofdada dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/04/2007, 14h07
  5. [Conception] Performances : intérêt des vues ?
    Par Mr N. dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 20/10/2005, 13h46

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