Please take this survey to help us learn more about how you use third party tools. Your input is greatly appreciated!
Query distribution & understanding explain command output
Hi all, We are trying to understand and ideally optimize some queries. We use a common db layout which consist in one big fact table and multiple small dimension tables to join against. The fact table is segmented on all nodes (using its composite key fields for the hashing as suggested by the dbd) and the dimension tables are unsegmented on all nodes (as suggested by dbd as well). My understanding is that the segmentation of the fact table allow our reporting queries hitting the fact table to be distributed on every node so that the joining with the dimension tables can occur on every node if necessary. However when I look at the projections fired by the query using the EXPLAIN command I can see that only the unsegmented *node0001 projections are being used when it comes to joining (which is the node on which I fired the query). However when the query is ran the IO rising on all our nodes suggest they are all being used to answer. What is happening ? Does the joining only occur on node 1 ?