PDA

View Full Version : Génération et Execution de requêtes SQL



speedware
09-10-2007, 08:50 AM
Via le servlet JSP l'execution suivante :

"SELECT { [Measures].[Sales]} ON AXIS (0),
NON EMPTY {DESCENDANTS ([Customer].[All Customers], 1, SELF) } ON AXIS (1) FROM [Sales]
WHERE ( [Year].[2006] ) CELL PROPERTIES VALUE"

prend 2-3 secondes. (pour chaque execution) et l'on remarque que la base de donnee n'execute que 2 requetes sql.
Soit
"select "D_Dates"."fiscal_year" as "c0" from "D_Dates" as "D_Dates" where "D_Dates"."fiscal_year" = 2006 group by "D_Dates"."fiscal_year" order by "D_Dates"."fiscal_year" ASC"
et
"select "D_Customer"."cust_name" as "c0" from "D_Dates" as "D_Dates", "F_Sales" as "F_Sales", "D_Site" as "D_Site", "D_Job" as "D_Job", "D_Customer" as "D_Customer" where "F_Sales"."date_id" = "D_Dates"."date_id" and "D_Dates"."fiscal_year" = 2006 and "D_Job"."cust_id" = "D_Customer"."cust_id" and "D_Site"."job_id" = "D_Job"."job_id" and "F_Sales"."site_id" = "D_Site"."site_id" group by "D_Customer"."cust_name" order by "D_Customer"."cust_name" ASC"
----------------------------------------------------------------------------------------------------
Via XMLA lorsque l'on envoit la requete suivante en mode "Tabular" cela prend 2-3 secondes.
(on remarque que sur la base de donnee, 2 requetes SQL sont executes)

Mais lorsque l'on demande la meme requete en mode "Multidimensional" cela prend de 30-40 secondes lors de la 1ere execution.
(on remarque que sur la base de donnee, des milliers de requetes SQL sont executes)

Je crois qu'il va chercher les resultats pour les differents clients. (nous avons 6201 clients)et construit son cache avec les données reçu. Est ce qu'il y aurait moyen de ne pas générer les milliers de requêtes au serveur SQL comme fait le Servlet JSP???