Glossary Business Intelligence services

What Is a Star Schema?

A star schema is the dimensional modelling pattern in which a central fact table containing numeric measures connects directly to a set of denormalised dimension tables — producing a structure optimised for analytical query performance and BI tool compatibility, at…

A star schema is the foundational dimensional data model for analytical workloads — a central fact table containing numeric measures and foreign keys surrounded by a set of flat, denormalised dimension tables that each join to the fact table in a single hop. The name describes the visual shape of the entity-relationship diagram: the fact table at the centre, dimension tables radiating outward like star points. The defining characteristic that distinguishes it from a normalised OLTP schema is not just structure — it is the deliberate trade-off of storage efficiency for query performance. Each dimension table may carry redundant data (country appearing on every row of a geography dimension rather than being normalised to a separate country table), but that redundancy eliminates the multi-table joins that make analytical queries slow against normalised schemas.

How It Works

A typical finance BI star schema places the GL transaction or budget record in the fact table — with grain at the account-entity-period-cost-centre level — and surrounds it with dimension tables for Account, Entity, Time, Cost Centre, and Scenario. A query asking “what was operating expense for the UAE entities in Q3?” translates to a single join pattern: fact to Entity (filter UAE), fact to Account (filter OPEX accounts), fact to Time (filter Q3), aggregate the Measure column. The query engine evaluates this with a small number of highly selective joins against flat dimension tables — a pattern that columnar query engines (Microsoft Analysis Services, Oracle Autonomous Data Warehouse, Snowflake, BigQuery) execute very efficiently through predicate pushdown and column pruning.

Design Decisions and Trade-offs

The primary design decision in a star schema is grain — the level of detail at which each row in the fact table is stored. Grain too fine (every GL journal line) produces a fact table with billions of rows that is expensive to query for high-level reports. Grain too coarse (monthly account totals) makes detailed transaction drill-through impossible. The grain decision must reflect the minimum level of detail that any BI consumer will require — because grain cannot be recovered at query time; it can only be summarised upward from the fact table’s stored grain.

Dimension table design carries its own decisions: should a dimension include all attributes of the entity, or only those used in BI filtering and grouping? Including all attributes increases the dimension table size and the ETL surface area; excluding needed attributes means they must be added later, which requires ETL changes and potentially invalidates cached queries.

Common Implementation Errors

The most common star schema implementation error in finance BI is mixing additive and non-additive measures in the same fact table without flagging them differently. Additive measures — revenue, cost, headcount — can be summed across any dimension. Semi-additive measures — closing balance, headcount at a point in time — can be summed across some dimensions but not time. Non-additive measures — ratios, percentages — should not be stored in the fact table at all; they should be computed at query time. When a balance sheet closing balance is stored as an additive fact, summing across months produces a nonsensical total that BI users present to management as a valid number. The error is not a calculation mistake; it is a model design mistake that produces confidently wrong outputs.

How Loop Wise Solutions Designs for This

We classify every measure in the finance data model as additive, semi-additive, or non-additive before the fact table schema is finalised, and we configure the semantic layer (Oracle Analytics Cloud, Power BI, or equivalent) to apply the correct aggregation function for each measure type — preventing the BI tool from summing a closing balance across months even if a user constructs a query that would produce that result. Measure classification is a data model governance decision, not a BI layer configuration afterthought.

← Back to glossary

Need help implementing Star Schema?

Our team works with enterprise organizations across Egypt and the GCC. Tell us about your situation.