Store large dataset in WordPress installation temporary

Transient names are limited to 172 characters; the data held in a transient can be much, much larger.

set_transient() documentation

Under the hood, transients are stored in the same table as options, and some WordPress code manages their lifetimes and expiry. You should easily be able to store 1MB of data in a transient.

Autoloading

In response to a comment asking about autoloading:

NB: transients that never expire are autoloaded, whereas transients with an expiration time are not autoloaded. Consider this when adding transients that may not be needed on every page, and thus do not need to be autoloaded, impacting page performance.

So as long as you set an expiry date, your transients will not autoload.

// Sets a transient with a week-long lifetime.
set_transient( 'my_transient_name', $data, WEEK_IN_SECONDS );