Star schemas are optimized for querying large data sets and are used in data warehouses and data marts to support olap cubes, business intelligence and analytic applications, and adhoc queries.
A star schema may be partially normalized snowflaked, with related information stored in multiple related dimension tables, to support specific data warehousing needs.
Of courses fewer tables will make Qlikview perform faster but within QV as long as you avoird circuar referenes and resolve synthetic keys, every kind of modeling is possible, think "associative", one selection in a QV model impact the whole schema then organize your data to meet performances and business requirements that's the best I can advise you.
Before starting creating the Datamodel, do some rough work like
- Identify the Fact tables
- Identity the Dimension tables and their relation with Fact tables
- Identity the columns to be loaded into the datamodel, don't load unnecessary columns into your datamodel
- Restrict your datamodel to Star schema, because it has a good performance, during runtime less number of joins required.
- Do all possible calculations in the script itself.
- Load only the required data, ie.,, if user wants to analyse last 5 year transactions load only that data by using where condition.
- Using KEEP remove dimension values which has no transactions.
Hope this helps you.