> [!METADATA]+ > **Type**:: [[Conference Talk]] > **Conference**:: [[RailsConf 2019]] > **Authors**:: [[@David Copeland]] > **Links**:: [Recording](https://youtu.be/1VsSXRPEBo0) ## Notes - DB design is how we ensure our database is the source of truth - what facts do we want to **record** - The act of DB design is really about understanding the requirements very clearly so the first step is to write them down. - **Anomalies** when the data model prevents the storage of certain facts, allows ambiguity to exist, or requires deleting one fact to delete another. - **Normalization** is the process by which we remove anomalies from our design.