  We study packing LPs in an online model where the columns are presented to
the algorithm in random order. This natural problem was investigated in various
recent studies motivated, e.g., by online ad allocations and yield management
where rows correspond to resources and columns to requests specifying demands
for resources. Our main contribution is a $1-O(\sqrt{(\log{d})/B})$-competitive
online algorithm, where $d$ denotes the column sparsity, i.e., the maximum
number of resources that occur in a single column, and $B$ denotes the capacity
ratio $B$, i.e., the ratio between the capacity of a resource and the maximum
demand for this resource. In other words, we achieve a $(1 -
\epsilon)$-approximation if the capacity ratio satisfies $B=\Omega((\log
d)/\epsilon^2)$, which is known to be best-possible for any (randomized) online
algorithms.
  Our result improves exponentially on previous work with respect to the
capacity ratio. In contrast to existing results on packing LP problems, our
algorithm does not use dual prices to guide the allocation of resources.
Instead, it simply solves, for each request, a scaled version of the partially
known primal program and randomly rounds the obtained fractional solution to
obtain an integral allocation for this request. We show that this simple
algorithmic technique is not restricted to packing LPs with large capacity
ratio: We prove an upper bound on the competitive ratio of
$\Omega(d^{-1/(B-1)})$, for any $B \ge 2$. In addition, we show that our
approach can be combined with VCG payments and obtain an incentive compatible
$(1-\epsilon)$-competitive mechanism for packing LPs with $B=\Omega((\log
m)/\epsilon^2)$, where $m$ is the number of constraints. Finally, we apply our
technique to the generalized assignment problem for which we obtain the first
online algorithm with competitive ratio $O(1)$.
