3 ms·
So, problem: schema does not accommodate enough use cases. Solution 1: refactor schema Solution 2: abandon schema The truth is that you can’t really abandon
by DenisM 6y ago
So, problem: schema does not accommodate enough use cases.
Solution 1: refactor schema
Solution 2: abandon schema
The truth is that you can’t really abandon schema, it’s just spread through the code base now, and any violation of the schema will blow up not when you write malformed data but when you read it later.
- thedudeabides5 6y agoTruth. Anyone know any good tools to manage the evolution in schemas to address this problem?
- DenisM 6y agoAt the lower level I’ve found ActiveMigration from ruby inspirational. Not using ruby but the idea is solid and I have built a similar system for C# and SQL Server. You still need something higher level to oversee the schema, but I didn’t look closely - my schema is small enough I can keep track of it in my head.
- ric2b 6y agoFlyway is a good tool if you don't want to be tied to a specific language. The community version (open-source/free) does have a few important limitations that may or may not matter to you.
- Trisell 6y ago+1 for flyway. Used it at two companies. Ability to fully reimplement schema from any version to the most recent version is amazing. Also the ability to review a schemas structure at a given git commit is super useful.