I've managed to solve all my use cases using all three with equal effort, time and with comparable outcomes.
There's value in compression and faster serialization/deserializarion formats when and only when micro-performance becomes an issue. Other then that, I think programmers spend way too much time debating over these, where I don't see any one of them providing an ROI advantage over the others.