The schema was tight. The data was clean. And then the product team asked for one more thing: a new column.
Adding a new column should be simple. But in production, it carries weight. Schema changes touch storage, performance, indexes, constraints, and downstream consumers. A poorly planned column addition can break queries, slow reads, or force rewrites in dependent services.
The right approach begins with understanding what the column needs to store. Choose the smallest viable data type. Avoid nullable fields unless they are essential, as they can complicate queries and indexing. If the column will be indexed, measure the trade-offs between INSERT speed and SELECT performance.
Rolling out a new column in a live database requires a migration strategy. For large tables, adding the column directly can lock writes. Use an online schema change tool or break the process into steps: