QKnober: A Knob-Based Fairness-Efficiency Scheduler for Cloud Computing with QoS Guarantees

Fairness and efficiency are generally two important metrics for users in modern cloud computing. Due to the heterogeneous resource demands of CPU and memory for users’ tasks, it cannot achieve the strict 100% fairness and the maximum efficiency at the same time. Quantitatively showing the fairness degradation/loss becomes essentially important in the design of any fairness-efficiency tradeoff scheduler. Existing fairness-efficiency schedulers (e.g., Tetris) can balance such a tradeoff elastically by relaxing fairness constraint for improved efficiency using the knob. However, their approaches are insensitive to the fairness degradation under different knobs, which makes several drawbacks. First, it cannot quantitatively tell how much relaxed fairness can be guaranteed (i.e., QoS of fairness guarantee) given a knob value. Second, it fails to meet several essential properties such as sharing incentive. To address these issues, we propose a new fairness-efficiency scheduler, QKnober, to balance the fairness and efficiency elastically and flexibly using a tunable fairness knob. QKnober is a fairness-sensitive scheduler that can maximize the system efficiency while guaranteeing the \(\theta \)-soft fairness by modeling the whole allocation as a combination of fairness-purpose allocation and efficiency-purpose allocation. Moreover, QKnober satisfies fairness properties of sharing incentive, envy-freeness and pareto efficiency given a proper knob. We have implemented QKnober in YARN and evaluated it using real experiments. The results show that QKnober can achieve good performance and fairness.

[1]  Bingsheng He,et al.  An Adaptive Efficiency-Fairness Meta-Scheduler for Data-Intensive Computing , 2019, IEEE Transactions on Services Computing.

[2]  John E. Beasley,et al.  A Genetic Algorithm for the Multidimensional Knapsack Problem , 1998, J. Heuristics.

[3]  Baochun Li,et al.  On the Fairness-Efficiency Tradeoff for Packet Processing with Multiple Resources , 2014, CoNEXT.

[4]  Seyong Lee,et al.  PUMA: Purdue MapReduce Benchmarks Suite , 2012 .

[5]  Arjun Singh,et al.  A practical algorithm for balancing the max-min fairness and throughput objectives in traffic engineering , 2012, 2012 Proceedings IEEE INFOCOM.

[6]  Carlo Curino,et al.  Apache Hadoop YARN: yet another resource negotiator , 2013, SoCC.

[7]  Richard P. Brent,et al.  Efficient implementation of the first-fit strategy for dynamic storage allocation , 1989, TOPL.

[8]  Bu-Sung Lee,et al.  Long-Term Multi-Resource Fairness for Pay-as-you Use Computing Systems , 2018, IEEE Transactions on Parallel and Distributed Systems.

[9]  Bu-Sung Lee,et al.  Long-term resource fairness: towards economic fairness on pay-as-you-use computing systems , 2014, ICS '14.

[10]  Bu-Sung Lee,et al.  Fair Resource Allocation for Data-Intensive Computing in the Cloud , 2018, IEEE Transactions on Services Computing.

[11]  H. Varian Equity, Envy and Efficiency , 1974 .

[12]  Scott Shenker,et al.  Delay scheduling: a simple technique for achieving locality and fairness in cluster scheduling , 2010, EuroSys '10.

[13]  Ariel D. Procaccia,et al.  Beyond Dominant Resource Fairness , 2015, ACM Trans. Economics and Comput..

[14]  Benjamin Hindman,et al.  Dominant Resource Fairness: Fair Allocation of Multiple Resource Types , 2011, NSDI.

[15]  Scott Shenker,et al.  Spark: Cluster Computing with Working Sets , 2010, HotCloud.

[16]  Srikanth Kandula,et al.  Multi-resource packing for cluster schedulers , 2014, SIGCOMM.

[17]  Peter J. Varman,et al.  Balancing fairness and efficiency in tiered storage systems with bottleneck-aware allocation , 2014, FAST.

[18]  Baochun Li,et al.  Dominant resource fairness in cloud computing systems with heterogeneous servers , 2013, IEEE INFOCOM 2014 - IEEE Conference on Computer Communications.

[19]  Mung Chiang,et al.  Multiresource allocation: fairness-efficiency tradeoffs in a unifying framework , 2013, TNET.

[20]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[21]  Benoît Dageville,et al.  SQL Memory Management in Oracle9i , 2002, VLDB.

[22]  He Bingsheng,et al.  Elastic Multi-resource Fairness: Balancing Fairness and Efficiency in Coupled CPU-GPU Architectures , 2016 .

[23]  Bo Li,et al.  Coflex: Navigating the fairness-efficiency tradeoff for coflow scheduling , 2017, IEEE INFOCOM 2017 - IEEE Conference on Computer Communications.