Algorithms for storage allocation based on client preferences

We consider a packing problem arising in storage management of Video on Demand (VoD) systems. The system consists of a set of video files (movies) and several servers (disks), each having a limited storage capacity, C, and a limited bandwidth (load capacity), L. The goal in the storage allocation problem is to assign the video files to the servers and the bandwidth to the clients. The induced class-constrained packing problem was studied in the past assuming each client provides a single request for a single movie. This paper considers a more general and realistic model—in which each client ranks all the movies in the system. Specifically, for each client j and movie i, it is known how much client j is willing to pay in order to watch movie i. The goal is to maximize the system’s profit. Alternatively, the client might provide a ranking of the movies and the goal is to maximize the lexicographic profile of the solution.We prove that the problem is NP-complete and present approximation algorithms and heuristics for systems with a single or multiple disks. For a single disk we present an (1−1/e)-approximation algorithm that is extended for systems with storage costs, and for k-round broadcasting, in which each client might be serviced multiple times. For multiple disks we present a (C−1)(e−1)/Ce-approximation algorithm, two heuristics for determining the storage allocation, and an optimal bandwidth-allocation algorithm.In our simulation of a VoD system, we compared the performance of the suggested heuristics for systems with variable parameters and clients with variable preference distributions. We focused on systems in which client preferences and payment are power-law distributed: a few movies are very popular and clients are willing to pay significantly more for watching them.Our results can be applied to other packing and subset selection problems in which clients provide preferences over the elements.

[1]  Philip S. Yu,et al.  Scheduling Issues in Video-on-Demand Systems , 1996 .

[2]  Seokhoon Kang Video-on-Demand System Using Multicast and Web-Caching Techniques , 2003, GCC.

[3]  Hadas Shachnai,et al.  Approximation Schemes for Generalized 2-Dimensional Vector Packing with Application to Data Placement , 2003, RANDOM-APPROX.

[4]  Thomas D. C. Little,et al.  Popularity-based assignment of movies to storage devices in a video-on-demand system , 1995, Multimedia Systems.

[5]  Donald F. Towsley,et al.  Continuous Media Sharing in Multimedia Database Systems , 1995, DASFAA.

[6]  Maxim Sviridenko,et al.  A note on maximizing a submodular set function subject to a knapsack constraint , 2004, Oper. Res. Lett..

[7]  Richard E. Ladner,et al.  Off-line and on-line guaranteed start-up delay for media-on-demand with stream merging , 2003, SPAA '03.

[8]  Jonathan C. L. Liu,et al.  Efficient video file allocation schemes for video-on-demand services , 1997, Multimedia Systems.

[9]  Richard E. Ladner,et al.  Scheduling Techniques for Media-on-Demand , 2003, SODA '03.

[10]  George Kingsley Zipf,et al.  Human behavior and the principle of least effort , 1949 .

[11]  John C. S. Lui,et al.  A performance study of dynamic replication techniques in continuous media servers , 1999, SIGMETRICS '99.

[12]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[13]  László Lovász,et al.  Semi-matchings for bipartite graphs and load balancing , 2003, J. Algorithms.

[14]  Samir Khuller,et al.  Algorithms for non-uniform size data placement on parallel disks , 2003, J. Algorithms.

[15]  Toshihide Ibaraki,et al.  Resource allocation problems - algorithmic approaches , 1988, MIT Press series in the foundations of computing.

[16]  Richard E. Ladner,et al.  Efficient Algorithms for Optimal Stream Merging for Media-on-Demand , 2004, SIAM J. Comput..

[17]  M. Klein A Primal Method for Minimal Cost Flows with Applications to the Assignment and Transportation Problems , 1966 .

[18]  Tami Tamir,et al.  Polynominal time approximation schemes for class-constrained packing problem , 2000, APPROX.

[19]  Samir Khuller,et al.  Approximation algorithms for data placement on parallel disks , 2000, SODA '00.

[20]  Shahram Ghandeharizadeh,et al.  Design and Implementation of Scalable Continuous Media Servers , 1998, Parallel Comput..

[21]  M. L. Fisher,et al.  An analysis of approximations for maximizing submodular set functions—I , 1978, Math. Program..

[22]  On Approximation Algorithms for Data , 2002 .

[23]  Philip S. Yu,et al.  Disk load balancing for video-on-demand systems , 1997, Multimedia Systems.

[24]  Ben Y. Zhao,et al.  Understanding user behavior in large-scale video-on-demand systems , 2006, EuroSys.

[25]  Samir Khuller,et al.  The Budgeted Maximum Coverage Problem , 1999, Inf. Process. Lett..

[26]  Hadas Shachnai,et al.  On Two Class-Constrained Versions of the Multiple Knapsack Problem , 2001, Algorithmica.

[27]  Cheng-Zhong Xu,et al.  Optimal video replication and placement on a cluster of video-on-demand servers , 2002, Proceedings International Conference on Parallel Processing.