Your temporal partition idea is spot on. But instead of dropping old partitions, you can instead archive them.