[Mondrian] Understanding queries: "products"."product_name" = 'Locations.Countries'

Pedro Alves pedro at neraka.no-ip.org
Mon Feb 16 08:05:51 EST 2009



Hello everyone.


In the endless effort of trying to optimize mondrian's performance, there's
an issue that's been bugging me for a while.


It's very normal to see mondrian querying for different dimensions, like in
[mondrian.rolap.RolapUtil] SqlMemberSource.getMemberChildren]:


select 
    "products"."product_name" as "c0"
from 
    "products" as "products"
where 
    "products"."product_name" = 'Locations.Countries'
group by 
    "products"."product_name"
order by 
    "products"."product_name" ASC
, exec+fetch 500 ms, 0 rows


While 500ms on it's own is not important (ok, I'm lying, it is :) ), the
sum of all this type of queries is very relevant. I'm sure the schema is
correct - at least to the best of my knowledge. The query is very simple
too:


 with set a as 
'([Date].[All].[2009].[1].[14].[2009-01-14] :
 [Date].[All].[2009].[2].[13].[2009-02-13])'
  member [Date].[Date Range] as 'Aggregate([a])'
  member [Measures].[Avg] as 'Avg([a], [Measures].[Total Requests])'
  set rowSet as '{[a]}'
  set colSet as '{Order(Descendants([Locale Codes], [Locale Codes].[Code]), Avg([a], [Measures].[Total Requests]), BDESC)}'
  set rowFilter as '[rowSet]'
  set colFilter as '[colSet]'
select [colFilter] ON COLUMNS,
  NON EMPTY [rowFilter] ON ROWS
from [BlockList Analysis]
where [Products].[All].[Firefox]



Any insights here? Am I forgetting any property?


Thanks




-- 
Pedro Alves
pmgalves-at-gmail.com




More information about the Mondrian mailing list