110 likes | 168 Views
CSI3530 - PROJET 2013 Symmetric Hash Join. Miguel Garzon CrUise Lab - SITE. Instructions. Travaillez sur les machines à SITE Ou connectez-vous via SSH Utilisez la version 8.1.4 de PostgreSQL Travaillez en groupes de 3-4 personnes Date limite : Décembre 8 2010
E N D
CSI3530 - PROJET 2013 Symmetric Hash Join Miguel Garzon CrUise Lab - SITE
Instructions Travaillezsur les machines à SITE Ouconnectez-vous via SSH Utilisez la version 8.1.4 de PostgreSQL Travaillez en groupes de 3-4personnes Date limite:Décembre 8 2010 Si vousavez de difficultés techniques, envoyezmoiune capture d’écran (print screen) et de details (stack trace) surl’erreur
Introduction Vousallezimplémenter la technique ‘Symmetric Hash Join’ Le but est de vousdonnerl’expérience avec un SGBD de production. Vousallezimplémenter des nouvellesfonctionnalités en rapport avec la performance du SGBD (feature performance) Votretâche se concentre surl’optimiseur et l’exécuteur du SGBD.
Barèmed’évaluation Rapport explicatif - 10% (Optionnel) (3-5 pages) Explication de l’algorithme Test cases
Quoi soumettre? nodeHashjoin.c nodeHash.c execnodes.h createplan.c.
How do I know it'sworking? Testing your Code You are a Guru, don’t test it, send it to me! Otherwise, Disable other join operators to force the query optimizer to use your join operator. Create at least two tables, do a join of those two tables (equality join). Validate the results.
How do I know it'sworking? Testing your Code Type in console: initdb data This willinitializestorage for the DBMS within your home directory in the pgdata directory. You shouldsee a message indicating SUCCESS. (Seeslidesfrom lab1) Start server : pg_ctl start Create a db createdb 4. Interact with db psql To stop: pg_ctl stop
Postgresql • La tâche du planificateur/optimiseur est de créer un plan d'exécution optimal. En fait, une requête SQL donnée (et donc, l'arbre d'une requête) peut être exécutée de plusieurs façons, chacune arrivant au même résultat. Si ce calcul est possible, l'optimiseur de la requête examinera chacun des plans d'exécution possibles pour finir par sélectionner le plan d'exécution estimé comme étant le plus rapide. • L'exécuteur prend le plan envoyé par le planificateur/optimiseur et l'exécute récursivement pour extraire l'ensemble requis de lignes. Il s'agit principalement d'un mécanisme de pipeline en demande-envoi. Chaque fois qu'un nœud du plan est appelé, il doit apporter une ligne supplémentaire ou indiquer qu'il a fini d'envoyer des lignes.
Additional Help http://doxygen.postgresql.org/: Source code browser