As far as directory layout goes, currently LCIO just lay it out on a per-process basis, all files are created under p_rankid. This is overly naive and won't scale when we have billions of files - as it literally put hundreds of millions of file under a SINGLE directory. In short, we need a non-trivial directory layout scheme. Maybe also drawn from a distribution.