OLTP systems often normalize (3NF) to avoid update anomalies: customers in one table, orders in another.
Analytics systems often denormalize selected attributes into wide facts/marts so BI queries avoid heavy multi-join graphs.
OLTP: customers >< orders >< order_items >< products BI mart: fct_order_items with product_name, category already joined
Denormalization trades storage and some update complexity for read speed and simpler dashboards.
Caution
If a product name changes and you denormalized it into historical facts, decide whether facts keep the name at order time (usually yes) or always show the latest name.
Interview tip: "Normalize for writes; denormalize carefully for reads." Tie it to star schemas and mart layers.