You are designing a data model in a Databricks lakehouse to support multi-dimensional analytics for a retail company. How would you structure the data to optimize for query performance across numerous dimensions such as time, geography, product, and customer demographics?