Andrew, what happens if you back out those changes on your development instance that has loaded data?
What about populating the caches asynchronously e.g. in another thread? Or cache lazily i.e. after a site-node has indeed been hit. Or just add the new site-nodes to the cache?