Explain the concept of database normalization and discuss when you might intentionally denormalize a table in a data warehouse.