If you use multiple workers an inplace manipulation of your Dataset won’t be saved as far as I know, since each worker will get a copy of your Dataset.
We had a similar discussion about caching some data and I’ve created a small example using shared arrays here 169.
Maybe this could also help in your case.