For the most common and data-intensive report queries, always look to eliminate any unnecessary intermediate relationships between dimension tables and fact tables.
In the following example, the Reseller table must filter a hidden intermediate table (Reseller Keys) prior to filtering the Reseller Sales fact table:
Removing the intermediate table (connecting flight), Reseller Keys in this example, significantly improves performance by reducing the scan operations required of the DAX query engine. The performance benefit is particularly acute with larger fact tables and dimensions with many unique values. For small fact tables, such as a budget or plan table of 3,000 rows, intermediate tables can be used without negatively impacting performance.