Distributed array of arrays

I’m wondering how to manage shared memory for a distributed process that fills a matrix of vectors - where each process works on a separate vector but finally combines them into the matrix of vectors.

I was imagining @distributed was the way to do this, and maybe with a DistributedArray for the matrix, but how should the vectors be handled so that they are all accessible on the controlling processor?