• Aucun résultat trouvé

Évaluation théorique et réelle sur Teradata

5.2.3 Validation sous Teradata

5.2.3.4 Analyse des résultats obtenus

Les résultats obtenus montrent que l’approche conjointe dépasse largement l’approche ité-rative avec 38% d’avantage. Cependant, nous remarquons que chaque approche est meilleure par rapport à l’autre pour certaines requêtes; cela est dû au fait qu’un schéma de partition-nement n’est pas bénéfique pour toutes les requêtes de la charge de travail. En analysant les résultats obtenus de la machine Teradata, trois scénarii se présentent.

5.2. Évaluation de performance de F &A

Queries Joint Sequential Q01.1 0.12 0.59 Q01.2 0.11 0.11 Q01.3 0.12 0.11 Q04.1 0.60 0.58 Q04.2 0.54 0.53 Q04.3 1.08 1.13 Q05.0 0.36 0.15 Q06.0 0.53 0.13 Q07.0 0.46 0.58 Q08.0 0.14 2.15 Q09.0 0.08 0.14 Q10.0 0.07 0.16 Q11.0 0.32 0.62 Q12.0 0.34 0.72 Q13.0 0.18 0.63 Q14.0 0.18 0.24 Q15.0 0.18 0.57 Q16.0 0.18 0.51 Q17.0 0.19 0.24 Q18.0 0.29 0.64 Q19.0 0.56 0.66 Q20.0 0.49 0.33 Total 7.12 11.52

Tableau 5.5 – Temps d’exécution en Seconde

L’approche conjointe et l’approche itérative sont équivalentes. Elles sont équivalant en termes de temps de réponse pour certaines requêtes. Cela est dû au fait que les données impliquées par la requête sont distribuées de la même manière sur les nœuds de traitement. Autrement dit, le nœud le plus surchargé a la même quantité de données à traiter. Pour illus-trer cette situation, nous considérons la requête Q01.2 exprimée en SQL:

select sum(lo_extendedprice*lo_discount) as revenue from lineorder lo, DATE d}

where l.lo_orderdate=d.d_datekey and d.d_year in (’1994’)

group by year

Selon le schéma de fragmentation obtenu par l’approche séquentielle, cette requête nécessite le chargement de 36 fragments (03 CUSTOMER, 03 SUPPLIER et 04 PART ). Par contre, l’approche conjointe implique le chargement de tous les 96 fragments obtenus. D’après la figure 5.15 , nous remarquons que le temps d’exécution de Q01.2 correspond au temps de traitement des données au niveau des nœuds N9 et N10 respectivement pour l’approche séquentielle et conjointe. La quantité de données à traiter au niveau des deux nœuds est similaire, ce qui implique un temps de traitement similaire ( Les nœuds de teradata sont homogènes).

Figure 5.15 – Répartition des Charges de la requête Q1.2

L’approche conjointe est meilleure que l’approche itérative. Elle est dans 3 cas pos-sibles.

1. Les deux approches utilisent les mêmes attributs de partitionnement, attribut de parti-tionnement de P AJ ointT

P ASequential (Voir figure 5.14 ), et leur schéma de

partition-nement est similaire. Pour certaines requêtes de ce type, l’approche conjointe surmonte l’approche séquentielle car son schéma d’allocation est meilleur que celui de l’approche itérative. Par exemple, prenons la requête Q04.3 exprimée en SQL.

select sum(lo_revenue), d_year, p_brand from lineorder l, DATE d, part p, supplier s where l.lo_orderdate=d.d_datekey

and l.lo_partkey=p.p_partkey and l.lo_suppkey=s.s_suppkey} and p.p_category=’MFGR#12’

and (s.s_region=’ASIA’ or s.s_region=’MIDDLE EAST’ or s.s_region=’EUROPE’) group by d.d_year, p.p_brand

order by d.d_year, p.p_brand;

Pour l’approche séquentielle, cette requête utilise 48 fragments de faits (03 CUSTO-MER, 02 DATE, 02 SUPPLIER et 04 PART). D’autre part, l’approche conjointe utilise également 48 fragments de faits (06 CUSTOMER, 02 DATE, 04 SUPPLIER et 01 PART). Comme illustré dans la figure 5.16, nous constatons que le coût d’exécution impliqué par l’approche conjointe est inférieure celui de l’approche séquentielle; cela est dû au schéma d’allocation différent des approches.

2. Les deux approches utilisent les mêmes attributs de partitionnement mais leur schéma de partitionnement est différent. Le partitionnement différent d’un domaine implique des fragments de taille différente. L’optimiseur de requête charge des fragments de grande taille. Par exemple, nous considérons la requête Q11.0 exprimée en SQL.

5.2. Évaluation de performance de F &A

Figure 5.16 – Répartition des Charges de la requête Q4.3

select d_year, s_nation, sum(lo_revenue - lo_supplycost) as profit} from DATE d, customer c, supplier s, part p, lineorder l

where l.lo_custkey=c.c custkey and l.lo_suppkey=s.s_suppkey and l.lo_partkey=p.p partkey and l.lo orderdate=d.d datekey} and c.c region=’AMERICA’

and s.s region=’AMERICA’

and (p.p mfgr=’MFGR#1’ or p.p mfgr=’MFGR#2’)} group by d.d_year, c.c_ation

order by d.d_year, c.c_nation

La figure 5.17 montre la distribution des 16 fragments de faits impliqués pour l’exécution de la requête Q11.0 pour les deux approches. Nous remarquons que le makespan impliqué par l’approche conjointe est inférieur à celui de l’approche séquentielle, cela en raison de la taille du fragment.

Figure 5.17 – Répartition des Charges de la requête Q11

3. Les requêtes référençent des attributs appartenant à l’ensemble. Par exemple, prenons Q08.0 requête exprimée en SQL.

select c_city, s_city, d year, sum(lo_revenue) as revenue from customer c, lineorder l, supplier s, DATE d

where l.lo_custkey=c.c_custkey and l.lo_suppkey=s.s_suppkey and l.lo_orderdate= d.d_datekey

and (c.c_city=’UNITED KI1’ or c.c_city=’UNITED KI5’) and (s.s_city=’UNITED KI1’ or s.s_city=’UNITED KI5’) and d.d_yearmonth = ’Dec1997’

group by c.c_city, s.s_city, d.d_year

order by d.d_year asc, revenue textbf{desc};

le schéma de fragmentation obtenu par l’approche conjointe référence seulement 12 frag-ments pour traiter la requête Q08.0. En revanche, l’approche séquentielle référence tous les fragments de faits. La figure illustre la distribution des données à traiter

Figure 5.18 – Répartition des Charges de la requête Q8

L’approche itérative est meilleure que l’approche conjointe. Elle l’est dans les cas duals du cas 2. Soit la requête Q5 exprimée en SQL.

select sum(lo_revenue), d_year, p_brand

from lineorder l, .DATE d, part p, supplier s where l.lo orderdate=d.d datekey

and l.lo_partkey=p.p_partkey and l.lo_suppkey=s.s_suppkey

5.3. Évaluation de performance de F &A&R

and p.p_brand in (’MFGR\#2221’,’MFGR\#2222’, ’MFGR\#2223’,’MFGR\#2224’, ’MFGR\#2225’, ’MFGR\#2226’,’MFGR\#2227’,’MFGR\#2228’) and s.s_region=’ASIA’

group by d.d_year, p.p_brand order by d.d_year, p.p_brand

Comme illustré dans la figure 5.19 le temps d’exécution impliqué par l’approche séquentielle est inférieur car elle implique moins de fragments.

Figure 5.19 – Répartition des Charges de la requête Q5

5.3 Évaluation de performance de F &A&R

Une série d’expérimentations nous a permis de valider et de mettre en évidence le gain apporté par notre approche F &A&R. Nous commençons par la présentation des paramètres d’expérimentation puis nous présentons les résultats obtenus.

5.3.1 Paramètres d’expérimentation

Afin de valider l’approche proposée, nous avons mené une série d’expérimentations basée sur le banc d’essai Star Schema Benchmark (SSB) [113]. En particulier, nous avons généré plusieurs instances des données en utilisant le générateur de données fourni avec SSB où nous avons limité la valeur maximale de SF à 100, en vue d’assurer l’exécution rapide de la charge de travail de test sur une machine expérimentale unique.

En ce qui concerne la charge des requêtes, nous avons augmenté la charge des requêtes à 4 fois, les 36 requêtes obtenues proviennent des 10 requêtes originales en variant les valeurs des prédicats de sélection. Nous avons utilisé 20 prédicats de sélection définis sur 8 différents

attributs: {s_region, d_year, s_nation, c_city, c_region, s_city, p_category, c_nation}. Les domaines de ces attributs sont divisés en: 7, 5, 7, 6, 5, 6, 3 et 8 sous-domaines, respectivement. Pour les paramètres de l’algorithme génétique, nous avons fixé le taux de croisement à (70%) et le taux de mutation à (30%) pour améliorer 40 chromosomes en 20 générations.