title: How to handle ever changing database structure
body: <p>I am working on my masters thesis. For my implementation I have some MySQL tables. </p>
  
  <p>With every iteration my table structure will differ (adding, removing columns etc). I was wondering what the best way is to handle the ever changing structure, without changing old code too much.</p>
  
  <p>I read that Facebook has a version control system where the can specify exactly what kind of code/feature is available and for what user. As far as I know that must mean that they manage many different database structures at once. How does their old code work along side their new code with respect to their database? Do they do a lot of testing? Did they abandon MySQL all together?</p>
  
  <p>Personally I like <a href="http://backchannel.org/blog/friendfeed-schemaless-mysql" rel="nofollow">FriendFeeds Solution</a> a lot. However I am wondering if it is too much for me.</p>