Episode 55: Refactoring Pt. 2

Topics covered
Popular Clips
Episode Highlights
Schema Changes
Changing database schemas during refactoring can be challenging due to cultural perceptions and technical complexities. highlights the cultural issue where databases are often seen as more permanent than applications, making schema changes difficult to justify 1. suggests that agile practices can facilitate frequent schema changes, using scripts to manage these updates efficiently 2.
We are changing the schema while we are developing not the production schema, but the schema in development, let's say every two or three days, adding stuff and removing stuff, renaming tables, whatever.
---
This approach allows for continuous integration and testing, ensuring that changes are manageable and do not disrupt the production environment.
Data Migration
Data migration is a critical aspect of database refactoring, requiring careful planning and execution. discusses the use of scripts for migrating data alongside schema changes, emphasizing the complexity of handling multiple schema versions 3. He also mentions the potential need for lazy migration strategies, which allow data to be gradually moved from old to new schemas 3.
It becomes more complicated if you have, let's say three or four different schema versions where you have all the loading techniques and you need to migrate the data from schema to schema lazily.
---
These strategies help manage large databases where immediate data migration is impractical, ensuring data integrity and system stability.
Related Episodes


Episode 46: Refactoring Pt. 1
Answers 383 questions

Episode 186: Martin Fowler and Pramod Sadalage on Agile Database Development
Answers 383 questions

Episode 25: Architecture Pt. 2
Answers 383 questions

Episode 43: eXtreme Programming Pt.2
Answers 383 questions

Episode 17: Feedback and Roadmap
Answers 383 questions

Episode 112: Roles in Software Engineering II
Answers 383 questions

Episode 21: Error Handling Pt. 2
Answers 383 questions
Episode 115: Architecture Analysis
Answers 383 questions

Episode 82: Organization of Large Code Bases with Juergen Hoeller
Answers 383 questions

Episode 2: Dependencies
Answers 383 questions

Episode 47: Interview Grady Booch
Answers 383 questions
Episode 173: Feature-Oriented Software Development with Sven Apel – Pt 2
Answers 383 questions

Episode 6: Model-Driven Software Development Pt. 2
Answers 383 questions
Episode 103: 10 years of Agile Experiences
Answers 383 questions

Episode 180: Leading Agile Developers with Jurgen Appelo
Answers 383 questions










