MySQL table architecture
Why do you want to partition? Is you performance not good, or do you have other reasons? 

I don't see an index for the lastupdatetime column, and you wrote that you query for it a lot. 

An alternative to partitioning could be creating tables for each year, and use merge tables to access the subsets you need. 

Would have just left a comment, alas, not enough reputation.