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

Optimisations SGBD Discussion :

Estimer la taille d'un resultat de jointure


Sujet :

Optimisations SGBD

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 69
    Points : 42
    Points
    42
    Par défaut Estimer la taille d'un resultat de jointure
    Bonjour;

    Comment peut on estimer la taille d'un résultat de jointure?

    Merci

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 811
    Points
    17 811
    Par défaut
    La taille en centimètres, en nombre de lignes, en mémoire utilisée par votre serveur, en mémoire écrite sur le disque, en nombre d'octets qui passent pas le réseau ?

    Soyez plus précis.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    la taille en nombre de lignes

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 811
    Points
    17 811
    Par défaut
    Le plus simple reste de faire votre jointure et de faire un select count(*).
    Si vous voulez estimer le résultat sans count(*), ça dépend du type de jointure, si ce sont des jointures fortes ou externes, ça dépend aussi du prédicat de jointure.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    merci mais je veux estimer le resultat avant d'effectuer la jointure. y a t'il des docs sur ça?

  6. #6
    Membre éprouvé Avatar de Jester
    Inscrit en
    Septembre 2003
    Messages
    813
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 813
    Points : 1 058
    Points
    1 058
    Par défaut
    analyser la structure données (linéaire sur une des tables par exemple si c'est des clients et des items associés) puis faire du sampling (par exemple prendre 100 clients au hasard puis extrapoler pour l'ensemble des clients).

  7. #7
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Il faut disposer d'un minimum de statistiques sur les tables pour estimer quoique-ce-soit. Par exemple, connaitre le nombre de valeurs distinctes de l'attribut de jointure dans les deux relations à joindre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
                       T(R1) * T(R2)
    T(R1 |><| R2) = -----------------------
                    MAX(V(R1, x), V(R2, x))
    Légende :
    T(R) : Taille (nb de tuples) d'une relation R
    V(R,x) : nombre de valeurs distinctes de l'attribut de jointure x dans la relation R
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 716
    Points : 52 380
    Points
    52 380
    Billets dans le blog
    4
    Par défaut
    Le nombre de ligne n'a aucun intérêt, car un SGBDR travaille en page de données dont la taille va de 2 à 32 Ko.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. Comment estimer la taille des index
    Par ouadie99 dans le forum Administration
    Réponses: 1
    Dernier message: 01/12/2008, 16h12
  2. Estimer la taille d'un schéma
    Par zarba dans le forum Administration
    Réponses: 1
    Dernier message: 19/09/2008, 20h55
  3. estimer la taille d'un export
    Par moi26 dans le forum Administration
    Réponses: 2
    Dernier message: 27/12/2007, 13h24
  4. [MPI] estimer la taille d'un probleme
    Par Jeane dans le forum C++
    Réponses: 4
    Dernier message: 22/08/2007, 00h42
  5. [9i] Estimer la taille de la mémoire
    Par Débéa dans le forum Oracle
    Réponses: 4
    Dernier message: 08/03/2006, 18h25

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