I am developing a plugin which relies on external data to be fetched from time to time. To speed things up, I´d like to cache the received data and refresh it in intervals of 10 or 15 minutes.
This will be no big problem because the external server will only refresh the data in intervals somewhat like that, too.
But I think it will on the one hand take quite some load from the external server and also improve the speed of the local site, because the data is already there.
At the beginning I was pretty sure that WP Transients would be the best way to go, but I´m not sure about that anymore. I´ve always seen that lots of plugins use their own tables for storing whatever data, and I´m wondering whether I should push my external data through Transients API into the _options
-table or if a dedicated table structure would be suited better for this case.
Is there some objective, measurable point in using a table over Transients or vice versa?
Update 1: The data is XML-like structured data with a regional context. So users could theoretically be in need of fetching dozens of datasets, but that won´t probably happen for a lot of them. Also there are "combined" datasets right on the server side which you can fetch, like in "city datasets" and "area datasets".
(Ask me anything if it´s unclear.)