Forum Discussion

MARUI0827's avatar
MARUI0827
New Member
2 years ago

Dual table strange behavior

My model has a dimension table with dual storage mode A and a compute table B,I created A 1-to-many one-way relationship for A and B,like this:

The query is:

 

EVALUATE
SUMMARIZECOLUMNS(
	'Dim B'[ProdKey],
	"result",[result]
)

 

I found that the performance was not good enough.

By checking the query plans, I found that SE did not directly aggregate results based on the dimensions of table B,instead, two xmsql's are executed.

The first xmsql queries the prodkey of table B,the second xmsql aggregated results from the dimensions of table A, and then in FE,executed TreatAs and CrossApply:

 

When I create a table C whose storage mode is also DUAL,FE does not require executed  TreatAs and CrossApply,it becomes very simple.

 

I don't understand why this is happening,I would like to ask if anyone has encountered a similar situation and knows the reason. Thank you very much for your reply.

 

1 Reply