3 ms·
As always, it depends. When requirements change, there are a few things that change altogether - and only some of them should affect the database: 1. The data
by brentjanderson 6y ago
As always, it depends. When requirements change, there are a few things that change altogether - and only some of them should affect the database:
1. The data at rest (in your relational database) - database migrations are the solution to this problem, in one way or another. Migrations are well understood, and are not hard - just tricky to get right depending on the complexity of the change.
2. Rules about how to turn that persisted data into something you can reason about at runtime (aka hydration logic)
3. Rules about how to change data from one form or another due to business rules (aka business logic)
If your database is an implementation detail and not the heart of how you reason about your system, then the difficulty in making the migration from one form of data at rest to another should be easier. If you rely on your database for storage and business logic, then you may have a more difficult time.