  A new, constructive proof with a small explicit constant is given to the
Erd\H{o}s-Pyber theorem which says that the edges of a graph on $n$ vertices
can be partitioned into complete bipartite subgraphs so that every vertex is
covered at most $O(n/\log n)$ times. The theorem is generalized to uniform
hypergraphs. Similar bounds with smaller constant value is provided for
fractional partitioning both for graphs and for uniform hypergraphs. We show
that these latter constants cannot be improved by more than a factor of 1.89
even for fractional covering by arbitrary complete multipartite subgraphs or
subhypergraphs. In the case every vertex of the graph is connected to at least
$n-m$ other vertices, we prove the existence of a fractional covering of the
edges by complete bipartite graphs such that every vertex is covered at most
$O(m/\log m)$ times, with only a slightly worse explicit constant. This result
also generalizes to uniform hypergraphs. Our results give new improved bounds
on the complexity of graph and uniform hypergraph based secret sharing schemes,
and show the limits of the method at the same time.
