Separate table with one variance Using the example of a 'likes' feature, whereby you can like (for example), a blog, comment, etc, is it better to have a separate table for each section (likes_blog, likes_comment, etc) or simply have a special row in table 'likes' (row 'section')? 

By better, I am referring to scaling - millions of records, indexing, select, insert, etc. 

I would presume it's better to have separate tables for each section as each will be relatively smaller, which might inherently bring with it less issues. Is this a correct assumption?
Will you ever need to show a user's likes of different types all at once? If so, I would keep it in one table. If you run into scale issues, you can always start partitioning by the like type column and basically have separate tables on the back end.