Designing Databases When Data Sources Disagree

Designing Databases When Data Sources Disagree

When Your Data Sources Disagree: Designing a Database That Preserves the Truth A company is preparing to replace three old systems with one new database. The CRM says customer 1842 is called Northstar Labs. The billing system says Northstar Laboratories Ltd. A...
How to Model Historical Relationships in a Database

How to Model Historical Relationships in a Database

When “Current” Lies: How to Model Relationships That Change Over Time A support manager opens a customer record and sees that the account belongs to the Enterprise plan. Nothing looks wrong. Then finance asks a different question: “Which plan was this customer on when...
Database Design: How Schema Choices Shape Real Products

Database Design: How Schema Choices Shape Real Products

The Schema Is Where Your Product Makes Its Promises A database does not merely store what your application has already decided. It decides what your application is allowed to believe. That sounds dramatic until a simple product feature turns into a week of awkward...