Using matrix approximation for high-dimensional discrete optimization problems: Server consolidation based on cyclic time-series data

We consider the assignment of enterprise applications in virtual machines to physical servers, also known as server consolidation problem. Data center operators try to minimize the number of servers, but at the same time provide sufficient computing resources at each point in time. While historical workload data would allow for accurate workload forecasting and optimal allocation of enterprise applications to servers, the volume of data and the large number of resulting capacity constraints in a mathematical problem formulation renders this task impossible for any but small instances. We use singular value decomposition (SVD) to extract significant features from a large constraint matrix and provide a new geometric interpretation of these features, which allows for allocating large sets of applications efficiently to physical servers with this new formulation. While SVD is typically applied for purposes such as time series decomposition, noise filtering, or clustering, in this paper features are used to transform the original allocation problem into a low-dimensional integer program with only the extracted features in a much smaller constraint matrix. We evaluate the approach using workload data from a large data center and show that it leads to high solution quality, but at the same time allows for solving considerably larger problem instances than what would be possible without data reduction and model transform. The overall approach could also be applied to similar packing problems in service operations management.

[1]  Jerome A. Rolia,et al.  A capacity management service for resource pools , 2005, WOSP '05.

[2]  Gerhard Wäscher,et al.  An improved typology of cutting and packing problems , 2007, Eur. J. Oper. Res..

[3]  Alberto Caprara,et al.  Improved approximation algorithms for multidimensional bin packing problems , 2006, 2006 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS'06).

[4]  Martin W. P. Savelsbergh,et al.  Branch-and-Price: Column Generation for Solving Huge Integer Programs , 1998, Oper. Res..

[5]  Refael Hassin,et al.  Allocation of bandwidth and storage , 2002 .

[6]  Xianggui Qu,et al.  Multivariate Data Analysis , 2007, Technometrics.

[7]  Daniele Vigo,et al.  Approximation algorithms for the oriented two-dimensional bin packing problem , 1999, Eur. J. Oper. Res..

[8]  Martin Bichler,et al.  Short-term performance management by priority-based queueing , 2010, Service Oriented Computing and Applications.

[9]  Teodor Gabriel Crainic,et al.  TS2PACK: A two-level tabu search for the three-dimensional bin packing problem , 2009, Eur. J. Oper. Res..

[10]  Robert H. Halstead,et al.  Matrix Computations , 2011, Encyclopedia of Parallel Computing.

[11]  Andrew Warfield,et al.  Live migration of virtual machines , 2005, NSDI.

[12]  Sarbani Palit,et al.  On multiple pattern extraction using singular value decomposition , 1995, IEEE Trans. Signal Process..

[13]  Barbara Panicucci,et al.  Energy-Aware Autonomic Resource Allocation in Multitier Virtualized Environments , 2012, IEEE Transactions on Services Computing.

[14]  C. Eckart,et al.  A principal axis transformation for non-hermitian matrices , 1939 .

[15]  Petros Drineas,et al.  An Experimental Evaluation of a Monte-Carlo Algorithm for Singular Value Decomposition , 2001, Panhellenic Conference on Informatics.

[16]  Fan Li Singular value decomposition expansion for electrical demand analysis , 2000 .

[17]  Rajkumar Buyya,et al.  Adaptive threshold-based approach for energy-efficient consolidation of virtual machines in cloud data centers , 2010, MGC '10.

[18]  Flavien Quesnel,et al.  Cooperative Dynamic Scheduling of Virtual Machines in Distributed Systems , 2011, Euro-Par Workshops.

[19]  Martin Bichler,et al.  A Mathematical Programming Approach for Server Consolidation Problems in Virtualized Data Centers , 2010, IEEE Transactions on Services Computing.

[20]  Alan M. Frieze,et al.  Fast monte-carlo algorithms for finding low-rank approximations , 2004, JACM.

[21]  Jonathan D. Cryer,et al.  Time Series Analysis , 1986 .

[22]  Andreas Wolke,et al.  Virtual machine re-assignment considering migration overhead , 2012, 2012 IEEE Network Operations and Management Symposium.

[23]  Harald Dyckhoff,et al.  A typology of cutting and packing problems , 1990 .