You may never directly see the underlying database structure that holds your company’s valuable data but what you can’t see may be unnecessarily costing you time and money. Database “normalization” is a technical term which describes how the tables, fields, and data relationships are structured in a database. Databases can be under-normalized or over-normalized and finding the right balance of normalization is essential when designing a custom database solution.
Why should you care about normalization? Under-normalized databases typically represent business data relationships poorly and commonly have individual pieces of data duplicated in multiple locations. This means that poorly designed databases cost more to maintain! If you ever found that you had to maintain one piece of data in more than one place in your application then you may have an under-normalized database.
Over-normalized databases typically represent data “too well.” How is that possible? The data in an over-normalized database is typically spread out over many tables in a very abstract way which can result in database activity being very inefficient. If you notice your database seems slow, even when performing simple tasks such as reporting, you may be over-normalized!
Checking a database’s normalization is a key component of Entrance Software’s Software Audit and provides great insight into the design and quality of a software application.