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

SAS Base Discussion :

Optimisation d'une jointure : performance DATA vs PROC SQL


Sujet :

SAS Base

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 221
    Points : 108
    Points
    108
    Par défaut Optimisation d'une jointure : performance DATA vs PROC SQL
    Bonjour à tous ,

    Parmi les deux programmes ci-dessous, lequel est le plus performants ?

    Code sas : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    PROC SORT DATA=u1 OUT=sorted1;                                                  
    BY key;                                                                         
    RUN;                                                                            
    PROC SORT DATA=u2 OUT=sorted2;                                                  
    BY key;                                                                         
    RUN;                                                                            
     
    DATA combined;                                                                  
    MERGE sorted1 sorted2;                                                          
    BY key;                                                                         
    RUN;
    et
    Code sas : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Proc sql;
    select u1.*,u2.* 
    from u1
    Join u2 on u1.key=u2.key;
    quit;
    Ce qui me gène le plus c'est les deux sort effectué dans le premier code. Merci de m'éclairer sur ce point.

  2. #2
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Février 2011
    Messages : 1 625
    Points : 3 403
    Points
    3 403
    Par défaut
    Hello;
    Option fullstimer; et regarde la LOG t'aura la réponse par toi même.
    Il y a des postes dans ce forum qui compare le MERGE , le SQL et le HACHAGE.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Attaché statisticien
    Inscrit en
    Mai 2011
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Attaché statisticien
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut
    Hello,

    pense aussi à l'option compress si tu as des grosses tables, ça m'est arrivé d'avoir des gains assez phénoménaux (avec des grosses tables à la base > 1Go) et l'optimisation de la jointure en devenait après anecdotique...
    J'ai tendance a prévilégier la SQL.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    747
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 747
    Points : 978
    Points
    978
    Par défaut
    +1 SQL

Discussions similaires

  1. Fonction MAX dans une data ou proc SQL
    Par Ouvrier11023 dans le forum SAS Base
    Réponses: 2
    Dernier message: 11/06/2012, 10h10
  2. Traduction étape data en proc SQL
    Par julbisounours dans le forum SAS Base
    Réponses: 8
    Dernier message: 15/04/2012, 00h21
  3. Optimisation d'une jointure "NOT IN"
    Par ithurts dans le forum Requêtes
    Réponses: 8
    Dernier message: 18/07/2010, 09h06
  4. Optimisation d'une jointure entre 3 tables
    Par gavelin dans le forum Langage SQL
    Réponses: 4
    Dernier message: 14/12/2005, 09h52
  5. Comment optimiser une jointure ?
    Par seb_asm dans le forum Administration
    Réponses: 21
    Dernier message: 25/06/2004, 16h42

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