This is one cool post.
It’s a shame that MySQL doesnt have the ability to automatically add partitions based upon date. For example, if result of a function should generate a new partition:
PARTITION BY YEARWEEK(MyDateTimeCol)
And hey presto, a bunch of new partitions would appear every time you insert new data thats in a new range. YEARWEEK()
may be too course for your massive amount of data – perhaps TO_DAYS()
. Perhaps it’s not that massive a data set, so just YEAR()
would suffice. But having the new partitions created upon INSERT
of data that matches would be great. As would deletion of partitions when a partion is empty. Nice bit of housekeeping.