  As more and more users begin to use the cloud for their computing needs,
datacenter operators are increasingly pressed to effectively allocate their
resources among these client users. Yet while much work has been done in this
area, relatively little attention has been paid to studying perhaps the
ultimate lever of resource allocation: pricing. Most data centers today charge
users by "bundling" heterogeneous resources together in a fixed ratio and
selling these bundles to their clients. But bundling masks the fact that
different users require different combinations of resources (e.g., CPUs,
memory, bandwidth) to process their jobs. The presence of multiple resources in
fact allows an operator to offer many different types of pricing strategies,
which may have different effects on its revenue. Moreover, to avoid user
dissatisfaction, operators must consider the impact of their chosen prices on
the fairness of the jobs processed for different users. In this paper, we
develop an analytical framework that accounts for the fairness and revenue
tradeoffs that arise in a datacenter's multi-resource setting and the impact
that different pricing plans can have on this tradeoff. We characterize the
implications of different pricing plans on various fairness metrics and derive
analytical limits on the operator's fairness-revenue tradeoff. We then provide
an algorithm to navigate this tradeoff and compare the tradeoff points for
different pricing strategies on a data trace taken from a Google cluster.
