code: public static <E> PCollection<E> partition(PCollection<E> collection,
                                               View<E> view,
                                               int numWriters) {
      return partition(collection, view, numWriters, 1);
    }
docs: Partitions {@code collection} to be stored efficiently in {@code View}.
  <p>
  This restructures the parallel collection so that all of the entities that
  will be stored in a given partition will be processed by the same writer.
  <p>
  If the dataset is not partitioned, then this will structure all of the
  entities to produce a number of files equal to {@code numWriters}.
  
  @param collection a collection of entities
  @param view a {@link View} of a dataset to partition the collection for
  @param numWriters the number of writers that should be used
  @param <E> the type of entities in the collection and underlying dataset
  @return an equivalent collection of entities partitioned for the view
  @see #partition(PCollection, View)
  
  @since 0.16.0