Information Processing Letters



Similar documents
Models and Algorithms for Stochastic Online Scheduling 1

Halloween Costume Ideas for the Wii Game

An Innovate Dynamic Load Balancing Algorithm Based on Task

Online Bagging and Boosting

Reliability Constrained Packet-sizing for Linear Multi-hop Wireless Networks

Data Set Generation for Rectangular Placement Problems

arxiv: v1 [math.pr] 9 May 2008

Applying Multiple Neural Networks on Large Scale Data

Partitioned Elias-Fano Indexes

ON SELF-ROUTING IN CLOS CONNECTION NETWORKS. BARRY G. DOUGLASS Electrical Engineering Department Texas A&M University College Station, TX

Efficient Key Management for Secure Group Communications with Bursty Behavior

An Approach to Combating Free-riding in Peer-to-Peer Networks

Searching strategy for multi-target discovery in wireless networks

Machine Learning Applications in Grid Computing

Resource Allocation in Wireless Networks with Multiple Relays

The Research of Measuring Approach and Energy Efficiency for Hadoop Periodic Jobs

Position Auctions and Non-uniform Conversion Rates

This paper studies a rental firm that offers reusable products to price- and quality-of-service sensitive

RECURSIVE DYNAMIC PROGRAMMING: HEURISTIC RULES, BOUNDING AND STATE SPACE REDUCTION. Henrik Kure

Media Adaptation Framework in Biofeedback System for Stroke Patient Rehabilitation

Software Quality Characteristics Tested For Mobile Application Development

Analyzing Spatiotemporal Characteristics of Education Network Traffic with Flexible Multiscale Entropy

REQUIREMENTS FOR A COMPUTER SCIENCE CURRICULUM EMPHASIZING INFORMATION TECHNOLOGY SUBJECT AREA: CURRICULUM ISSUES

Cooperative Caching for Adaptive Bit Rate Streaming in Content Delivery Networks

Evaluating the Effectiveness of Task Overlapping as a Risk Response Strategy in Engineering Projects

Preference-based Search and Multi-criteria Optimization

CRM FACTORS ASSESSMENT USING ANALYTIC HIERARCHY PROCESS

An Optimal Task Allocation Model for System Cost Analysis in Heterogeneous Distributed Computing Systems: A Heuristic Approach

A framework for performance monitoring, load balancing, adaptive timeouts and quality of service in digital libraries

Fuzzy Sets in HR Management

Energy Proportionality for Disk Storage Using Replication

Airline Yield Management with Overbooking, Cancellations, and No-Shows JANAKIRAM SUBRAMANIAN

On Computing Nearest Neighbors with Applications to Decoding of Binary Linear Codes

A quantum secret ballot. Abstract

Real Time Target Tracking with Binary Sensor Networks and Parallel Computing

Research Article Performance Evaluation of Human Resource Outsourcing in Food Processing Enterprises

Data Streaming Algorithms for Estimating Entropy of Network Traffic

Load Control for Overloaded MPLS/DiffServ Networks during SLA Negotiation

Exploiting Hardware Heterogeneity within the Same Instance Type of Amazon EC2

Botnets Detection Based on IRC-Community

Reconnect 04 Solving Integer Programs with Branch and Bound (and Branch and Cut)

6. Time (or Space) Series Analysis

SOME APPLICATIONS OF FORECASTING Prof. Thomas B. Fomby Department of Economics Southern Methodist University May 2008

How To Get A Loan From A Bank For Free

PREDICTION OF POSSIBLE CONGESTIONS IN SLA CREATION PROCESS

( C) CLASS 10. TEMPERATURE AND ATOMS

Factored Models for Probabilistic Modal Logic

Part C. Property and Casualty Insurance Companies

Optimal Resource-Constraint Project Scheduling with Overlapping Modes

Evaluating Inventory Management Performance: a Preliminary Desk-Simulation Study Based on IOC Model

ASIC Design Project Management Supported by Multi Agent Simulation

A Fast Algorithm for Online Placement and Reorganization of Replicated Data

Capacity of Multiple-Antenna Systems With Both Receiver and Transmitter Channel State Information

Dynamic right-sizing for power-proportional data centers Extended version

International Journal of Management & Information Systems First Quarter 2012 Volume 16, Number 1

Extended-Horizon Analysis of Pressure Sensitivities for Leak Detection in Water Distribution Networks: Application to the Barcelona Network

Pricing Asian Options using Monte Carlo Methods

2. FINDING A SOLUTION

INTEGRATED ENVIRONMENT FOR STORING AND HANDLING INFORMATION IN TASKS OF INDUCTIVE MODELLING FOR BUSINESS INTELLIGENCE SYSTEMS

Binary Embedding: Fundamental Limits and Fast Algorithm

Online Appendix I: A Model of Household Bargaining with Violence. In this appendix I develop a simple model of household bargaining that

Implementation of Active Queue Management in a Combined Input and Output Queued Switch

HOW CLOSE ARE THE OPTION PRICING FORMULAS OF BACHELIER AND BLACK-MERTON-SCHOLES?

Non-Price Equilibria in Markets of Discrete Goods

The Application of Bandwidth Optimization Technique in SLA Negotiation Process

Use of extrapolation to forecast the working capital in the mechanical engineering companies

Managing Complex Network Operation with Predictive Analytics

Adaptive Modulation and Coding for Unmanned Aerial Vehicle (UAV) Radio Channel

An Integrated Approach for Monitoring Service Level Parameters of Software-Defined Networking

Protecting Small Keys in Authentication Protocols for Wireless Sensor Networks

Image restoration for a rectangular poor-pixels detector

Design of Model Reference Self Tuning Mechanism for PID like Fuzzy Controller

Endogenous Credit-Card Acceptance in a Model of Precautionary Demand for Money

Performance Evaluation of Machine Learning Techniques using Software Cost Drivers

The Benefit of SMT in the Multi-Core Era: Flexibility towards Degrees of Thread-Level Parallelism

Network delay-aware load balancing in selfish and cooperative distributed systems

An Improved Decision-making Model of Human Resource Outsourcing Based on Internet Collaboration

PERFORMANCE METRICS FOR THE IT SERVICES PORTFOLIO

ADJUSTING FOR QUALITY CHANGE

Leak detection in open water channels

CLOSED-LOOP SUPPLY CHAIN NETWORK OPTIMIZATION FOR HONG KONG CARTRIDGE RECYCLING INDUSTRY

Impact of Processing Costs on Service Chain Placement in Network Functions Virtualization

A CHAOS MODEL OF SUBHARMONIC OSCILLATIONS IN CURRENT MODE PWM BOOST CONVERTERS

Method of supply chain optimization in E-commerce

SAMPLING METHODS LEARNING OBJECTIVES

Modeling operational risk data reported above a time-varying threshold

Transcription:

Inforation Processing Letters 111 2011) 178 183 Contents lists available at ScienceDirect Inforation Processing Letters www.elsevier.co/locate/ipl Offline file assignents for online load balancing Paul Dütting a, Monika Henzinger b, Ingar Weber c, a Ecole Polytechnique Fédérale de Lausanne EPFL), Station 14, CH-1015 Lausanne, Switzerland b University of Vienna, Faculty of Coputer Science, Universitaetsstrasse 10, A-1090 Wien, Austria c Yahoo! Research Barcelona, Av. Diagonal 177, E-08003 Barcelona, Spain article info abstract Article history: Received 20 August 2009 Received in revised for 19 July 2010 Accepted 25 Noveber 2010 Available online 30 Noveber 2010 Counicated by Wen-Lian Hsu Keywords: Load balancing On-line algoriths Inforation retrieval File distribution We study a novel load balancing proble that arises in web search engines. The proble is a cobination of an offline assignent proble, where files need to be copied and) assigned to achines, and an online load balancing proble, where requests ask for specific files and need to be assigned to a corresponding achine, whose load is increased by this. We present siple deterinistic algoriths for this proble and exhibit an interesting trade-off between the available space to ake file copies and the obtainable akespan. We also give non-trivial lower bounds for a large class of deterinistic algoriths and present a randoized algorith that beats these bounds with high probability. 2010 Elsevier B.V. All rights reserved. 1. Introduction In the online load balancing with restricted assignent proble a set of achines has to execute a sequence of requests, arriving one by one. Every request has a load and ust be placed on exactly one of a subset of achines. The assignent of a request to a achine increases the load on this achine by the load of the request. The goal is to iniize the akespan, i.e., the axiu load placed on any achine. When neither the load of each request nor the set of achines a request can be assigned to are under the control of the algorith, then no online load balancing algorith can achieve a copetitive ratio better than log 2, see [1]. In this paper we study the following variant of this proble which consists of two phases. In the offline phase, n files need to be assigned to identical achines with the possibility, given space, to copy soe or all of the files. In the online phase, a sequence of requests arrives. Each request t asks for one file f j and has to be placed on one of the achines i to which a copy of) this file was as- signed. That achine s load ML i is then increased by lt). FL j denotes the su of the loads of all the requests for file f j. The goal is still to iniize the akespan, i.e., the axiu achine load ML = ax i ML i. In this odel the position of the algorith is strengthened: by placing the files intelligently it can influence the set of achines a request can be assigned to. However, it still does not control the load of each request nor the file the request asks for. Also note that the akespan will generally depend on the nuber of file copies ade by the algorith. In our odel, each achine has s slots which can be used to store copies of) files. We require s n/ because if s < n/ it is ipossible to store all of the n files on the achines. We call an algorith for both the offline and the online phase a dual-phase algorith. To analyze the quality of a dual-phase algorith there are two sensible points of reference. First, one could copare ML to the akespan OPT s of the optial offline 1 algorith for the sae paraeter s. Such an analysis ephasizes the optiality gap while caring less about how good the optial solution * Corresponding author. E-ail address: ingar@yahoo-inc.co I. Weber). 1 By an offline algorith we ean an algorith which is given the sequence of requests tbeforeassigning files to achines. 0020-0190/$ see front atter 2010 Elsevier B.V. All rights reserved. doi:10.1016/j.ipl.2010.11.022

P. Dütting et al. / Inforation Processing Letters 111 2011) 178 183 179 actually is. Second, one could copare ML to the average akespan AVG := t lt)/ = j FL j/ which corresponds to a perfect load balance. In this approach the ephasis is less on the optiality gap, as even the optial offline algorith ight not be able to achieve AVG. To see this, consider the following two exaples for the case s = n/ : 1)Forn = 2 and = 3OPT n/ can only copy one of the two files and cannot achieve a akespan of less than L := in j FL j, copared to AVG = 2L/3 for equal file loads. 2) For n = 5 and = 3 OPT n/ can again only copy one of the files and one achine has only unshared 2 files leading to a akespan of at least 2L, copared to AVG = 5L/3 for equal file loads. Of course, for any s we always have OPT s AVG and so copetitive ratios with respect to AVG lead to copetitive ratios with respect to OPT s. However, as far as lower bounds are concerned we still keep AVG as a reference point as we ultiately care ore about the quality of the solution = How far fro perfect load balance is it? ) than about the quality of the algorith = How far fro the optial solution for the given s is it? ). Even with the sequence of requests given in advance it is tricky to find an optial assignent as i) the loads for the different files can differ widely, leading to a packing proble to level out these differences, and ii) individual requests can be large, aking it difficult to spread one file s load across several achines. To factor out these two difficulties, we introduce the following paraeters: We define α to be the sallest value such that j, k : FL j 1 + α)fl k, or equivalently, such that j : L FL j 1 + α)l where L := in j FL j. We define β := ax t lt) to be the axiu request load. As a consequence we state the bounds on the akespan in ters of n,, α, and β. To suarize, the differences between our new odel and the previous odels are: 1) The online phase is preceded by an offline phase, where a file assignent is coputed. This assignent deterines where requests can be placed in the online phase. 2) The loads are paraetrized. Individual requests have load at ost β and the load of all requests for two distinct files differs by a factor of at ost 1 + α. The structure of the reaining paper is as follows. Section 1.1 discusses an application of the studied proble and Section 1.2 briefly discusses results concerning classical load balancing. In Section 2, we present soe observations related to the inherent difficulty of the proble. The following three sections, Sections 3 5, discuss algoriths for different values of s, going fro the inial s = n/ to a tunable value. Finally, in Section 6 we present two lower bounds for deterinistic dual-phase algoriths. 1.1. Application to web search engines One application for our proble arises in web search engines. Every web search engine builds a data structure, called inverted) index [2,3]. In current web search engines the size of this data structure is in the order of hundreds of TeraBytes. The index is broken into a large nuber n of equally-sized files f j which are distributed over ultiple achines. This split is usually done using a docuent-based partitioning where each file contains the inforation for a subset of docuents [3]. With this partitioning, each query has to access all the files. Thus one query is broken into n requests, each request having to access one specific file. The tie it takes to answer the request for a given file depends on the query ters in the request, but also on the file itself as soe files ight contain any atching docuents. However, search engines usually tie-out requests that cannot be answered in a fixed tie liit, e.g. a second. Thus, the axiu load β of an individual request for file f j is uch saller than the total file load FL j of f j. In addition, when a search engine splits the index into files it tries to build the files in a way so that over a long enough sequence of requests the different file loads differ only by a sall constant factor 1 + α with α < 1. We also coputed α experientally using the 05/2007 crawl of the Stanford WebBase project with about 20 illion pages. Fro this crawl we constructed an index for Lucene 3 of about 500 GB and divided it into 20, 40 and 80 equally-sized indices according to a rando docuentbased partitioning as described above. Afterwards, we ran two query logs, one fro AllTheWeb and one fro AltaVista, with 0.5 illion queries against each of the indices using a Quad-Core AMD Septron 280 with 2.4 GHz and 8 GB RAM. In average it took about 1230 s, 689 s, and 419 s to run all queries of one query log against a single index. This tie varied by at ost a factor of 1.08, 1.12, and 1.15 between two distinct indices and individual queries took at ost 12 s, 7 s, and 5 s. Thus, α was about 0.08, 0.12, and 0.15 while β was about 1% of the average file load. 1.2. Related work There is a large body of work on online load balancing. See [4 6] for excellent surveys. For space reasons we ention here only the results that are directly related to our proble. If the assignent of each request is unrestricted, i.e., each request can be assigned to every achine, then there exist constant upper and lower bounds. The earliest result is due to Graha [7,8] who showed that the Greedy algorith which always places the request on the least loaded achine) has a copetitive ratio of exactly 2 1. The best algorith known today is 1.92-copetitive [9]. The lower bound currently stands at 1.88 [10]. If the assignent of each request is restricted to a subset of the achines, then the Greedy algorith achieves a copetitive ratio of log 2 +1 and no online load balancing algorith can be better than log 2 copetitive [1]. 2 Afile f j is called unshared if it only resides on a single achine i. 3 http://lucene.apache.org/.

180 P. Dütting et al. / Inforation Processing Letters 111 2011) 178 183 2. Preliinaries Generally, the reason that an online load balancing algorith cannot achieve AVG is two-fold. The first reason is an integrality gap which rules out the possibility of leveling out the discrete loads across a sall set of slots. This proble also exists for OPT s see previous exaples). However, assuing that β is sall enough, this integrality gap disappears already for OPT n/ see the offline result of Theore 2) and it always vanishes asyptotically as n and and n/) becoe large as then β/avg 0. The second reason is a knowledge gap which suarizes the fact that an online algorith will not know in advance which files are big load equal to 1 + α)l) and which are sall load equal to L). Therefore it could end up with all big file loads on one achine and that all of these files are unshared. This proble can be avoided by OPT s which knows the whole input sequence before distributing the files. This proble also vanishes for a randoized algorith with an oblivious adversary, see Theore 1. As far as upper bounds are concerned, we ake the following observation. Observation. Any reasonable two-phase load balancing algorith achieves n ML 1 + α)/ n AVG 1 + ) 1 + α) AVG. n Even with the inial space per achine of s = n and without aking any copies at all we obtain the bound above which corresponds to the case where all files on one achine have the axial load 1 + α)l. Thisobservation shows that upper bounds on the akespan of an algorith are essentially only interesting if ii) they are of the for 1 + o1)α) AVG when n and get large or if ii) they are of the for 1 + α) AVG + O1) without requiring n and to be large. Our result in Theore 1 is of the first for, whereas Theores 2 and 3 give results of the second for. 3. Minial space: s = n/ To store all n files on the achines a iniu space of s = n/ per achine is required. When does not divide n then there are still n/ n spare slots which could be used to store copies of the files. If n then at least 2n n/ files are unshared and when n/ n < /2, i.e., there are less than /2 freeslots, then there will always be one achine without any shared files. If all files on this achine have a load of 1 + α)l while all other files have L, then no deterinistic algorith can be substantially better than 1 + α)avg, see Theore 4. However, with an oblivious adversary and a randoized algorith the case of inial space can still be solved asyptotically optially by the following algorith called Randoized. Randoized. Randoized sorts the n files randoly s.t. each perutation has equal probability. It then distributes the files in a round-robin anner to the achines. Requests are assigned to the unique achine storing the corresponding file. Theore 1. Let k N + be such that n/k = and k 2 ln). Then Randoized uses exactly s = n/ = kslots per achines and assigns requests to achines such that with probability at least 1 1 ML 1 + 1 ) α AVG. The proof of Theore 1 akes use of the following lea [11]. Lea 1 Hoeffding s inequality). Let X 1,...,X k be independent rando variables such that X i [a i, b i ] for 1 i k. Let S = i X i. Then, for any positive value t, Pr S E[S] ) kt exp 2k 2 t 2 i b i a i ) 2 Proof of Theore 1. Instead of placing k = n/ randoly chosen files on each achine, we could conceptually first split the files randoly into k groups of size and then randoly place one file of each group on each achine. Let X i, j be the rando variable that represents the file load of the j-th file not necessarily f j ) that is placed on achine i.foragivenachine i the X i, j have different distributions for different values of j, depending on the rando split into k groups of size. However,once the distributions have been fixed by the rando split) X i,1,...,x i,k are independent. Note that X i, j [L,1+α)L] for all i and j. LetS i = j X i, j. We choose t = α 1 n E[S i], i.e., kt = α 1 E[S i], and apply Lea 1 to get Pr S i E[S i ] α 1 ) E[S i] exp 2k2 α 1 n E[S i]) 2 ) kαl) 2 exp ). 2k 1 n 2 E2 [S i ] L 2 Since E[S i ] kl and k 2 ln) we get PrS i E[S i ] α 1 E[S i]) exp 2k 3 1 ) = exp 2k 1 ) 1 n 2 2 2. Now let E i be the event that S i E[S i ] α 1 E[S i] and let E = i E i. We get PrE) = Pr i E i) i PrE i) 1. Hence S i E[S i ] α 1 E[S i] for all achines i with probability at least 1 1. In that case ML = ax i ML i = ax i S i ax i 1 1 α)e[s i]. SinceOPT 1 i S i = 1 i E[S i] and E[S i ]=E[S j ] for all i and j, we have that OPT E[S i ] for all i. It follows that with probability at least 1 1 ML 1 1 α)opt. If does not divide n then we can introduce up to 1 duy files with a load of L. This artificially increases AVG to AVG AVG + L AVG 1 + /n) and one obtains the following corollary. Corollary 1. Let k N + be such that n/k = and k 2 ln). Then Randoized uses at ost s = n/ slots per ).

P. Dütting et al. / Inforation Processing Letters 111 2011) 178 183 181 achines and assigns requests to achines such that with probability at least 1 1 ML 1 + 1 ) α 1 + 1 ln) 4. Slightly ore space: s = n/ +1 ) AVG. Even with only one additional slot per achine the proble already becoes easier and the following Fractional algorith can be applied. Fractional. Fractional associates with each file f j a projected load PFL j and tries to balance this projected load across all achines. When used as an offline algorith it sets the projected load PFL j of each file f j to FL j. When used as an online algorith it siply sets PFL j = 1forall files f j. Afterwards it assigns the files and their projected load to the achines such that 1) no achine is assigned ore than n/ +1 files, 2) the projected load of every file is assigned copletely, and 3) every achine is assigned the sae aount of projected load j PFL j/. If we use fr i j) [0, 1] to denote the fraction of f j s projected load PFL j that is assigned to i, then this can be foralized as follows: i) i fr i j) = 1forallfiles f j and ii) j fr i j) PFL j = 1 j PFL j for all achines i.inthe online phase, Fractional assigns the requests in a way such that the total load ML i j) placed on i by requests for f j is roughly equal to fr i j) FL j. Details of the offline phase: Assign the files in ascending order of FL j in a round-robin anner to the achines. At the end, soe achines will have n files and soe will have n files. Copute the projected load for each file where, initially, the projected load of a achine equals the total load of its assigned files. Split the achines into three groups. First, achines whose assigned projected load equals AVG. Call these achines closed. Second, achines whose assigned projected load surpassed AVG. Call these achines overloaded. And third, achines whose assigned projected load is saller than AVG. Call these achines underloaded. While there are any overloaded achines pick an arbitrary one i. Copy its largest file, i.e. the file that was assigned to it last, to an underloaded achine i. Here, pick an underloaded achine i which was previously overloaded itself, if one exists, or otherwise pick an arbitrary one. Then assign just enough of i s largest file load to i such that i reaches AVG and becoes closed. Details of the online phase: Fractional keeps track of the load FL t 1 of f j j generated during the first t 1requests and the part ML t 1 j) of FL t 1 that is placed on i j i.the t-th request for f j is assigned to a achine i storing f j s.t. i) lt) fr i j) ML t 1 i j) if such a achine exists, else ii) fr i j) >ML t 1 j) and i i stores no other shared files, or else iii) fr i j) FL t 1 is largest. j Theore 2. Fractional uses s = n +1 slots per achine and assigns requests to achines such that 1) ML AVG + β in offline ode, and 2) ML 1 + α) AVG + β in online ode. Proof. We will prove the result for the offline ode where PFL j = FL j. The result for the online ode then follows easily by considering the worst case where all files on one achinehavealoadof1 + α) L and all other files have aloadofl. Without loss of generality let us assue that files are already sorted by their load, i.e., FL 1 FL 2 FL n.let FL v,w be the coplete) load of the w-th file placed on achine v. Fro the round-robin assignent we know that FL v,w = FL w 1)+v.Letn i be the nuber of files assigned to achine i in the first part of the offline phase, before files are copied. We know that n i n i 1 and that i < i n i n i. Clai 1. At any tie during the offline phase any overloaded achine i can close any underloaded achine i. By close we ean that the reaining assigned load fr i j) of i s biggest/last file f j is bigger than AVG ni w=1 FL i,w. This clai then iplies that any achine has at ost two shared files as an initially overloaded achine can only becoe underloaded once. Clai 1 follows fro the following clai. Clai 2. At any tie during the offline phase the socket c i of any underloaded achine i is no lower than the socket c i of any overloaded achine i. Here the socket of an underloaded achine equals its total assigned file load c i = j fr i j) FL j and the socket of an overloaded achine is defined as c i = n i 1 w=1 FL i,w. This clai then proves Clai 1 as whenever the load of the last file on i was big enough to extend fro c i past AVG, then this load will certainly suffice to extend fro c i to AVG to close this achine. Proof of Clai 2. We will first show that the clai holds initially before any overloaded achine becoes underloaded. Until this happens we always have c i = ni w=1 FL i,w for all underloaded achines i and the relevant fr i j) are all 0 or 1. If n i = n i and i is overloaded, then we ust have i < i and c i = n i w=1 FL i,w > ni w=2 FL i,w n i 1 w=1 FL i,w = c i, using FL i,w+1 FL i,w. If n i = n i + 1, then we have c i = n i w=1 FL i,w ni 1 w=1 FL i,w = c i, using FL i,w FL i,w as i < i or otherwise n i n i ). Now when an overloaded achine i becoes underloaded itself the coputation of c i changes and we have c i = j fr i j) FL j > n i 1 w=1 FL i,w. In fact, if i is initially overloaded and i is underloaded we know that n i 1 w=1 FL i,w n i w=1 FL i,w = c i.butas i has enough additional load x reaining on top of this s.t. x + n i 1 w=1 FL i,w > AVG we obtain c i = n i 1 w=1 FL i,w + x

182 P. Dütting et al. / Inforation Processing Letters 111 2011) 178 183 AVG c i )>c i. Here x AVG c i ) is exactly the additional reaining load of the top file on i after i is closed. Thus the clai follows for i since it held for i before the update. Clai 3. Any shared file is stored on at ost two achines storing another shared file. Proof of Clai 3. Observe that each tie an underloaded achine gets closed it gets closed in one chunk. As we preferentially close underloaded achines which were previously overloaded, at any tie there is at ost one underloaded achine which was previously overloaded. This ensures that any shared file is stored on at ost two achines storing other shared files. One of these two achines can be the achine which, after the round robin assignent, stores the single copy of the file and the second achine can be the achine that the initially overloaded achine closes first. Clai 4. 1) If achine i only stores a single shared file f j then for all t ML t i j) fr i j) + β. 2) If achine i stores f j as well as another shared file f j then for all t ML t i j) fr i j) + β/2. 3) ForunsharedfileswehaveforalltML t i j) fr i j), where equality holds at the end of the online phase. Proof of Clai 4. During the online phase, we first assign a request to a achine where it still fits. When we go above the projected file load we first pick achines without any other shared files. Here, in case 1) above, we can exceed the projected file load up to a factor β. Ifweexceed the projected file load for a achine which has two shared files then we only do this as a last resort, i.e. all other achines storing no other shared files are already full and the only reaining holes are, according to Clai 3, on the two achines with other shared files. Note that all holes cobined are always big enough to accoodate the reaining file load which is still to coe and so the bigger of the two holes will always be big enough to accoodate lt)/2. This ensures that in case 2) above whenever there is a request t with load lt) for file f j, there is a achine i s.t. ML t i j) + lt)/2 fr i j). 5. Variable space: n/ s n If the aount of space s per achine is not liited then by copying all files onto all achines one can obtain AVG + β by assigning each request to the least loaded achine. More generally, the following algorith called Cluster akes a certain space-perforance tradeoff possible, see Theore 3. Cluster. In addition to the regular input, Cluster is given q N + such that q and q n. In the offline phase, Cluster divides the set of files and the set of achines into q equally-sized clusters F 1,...,F q and M 1,...,M q. Afterwards, it assigns each of the n/q files in F l to each of the /q achines in M l. In the online phase, it assigns each request to the least-loaded perissible achine. Theore 3. If there exists q N + such that q n andq, then the deterinistic dual-phase algorith Cluster uses exactly s = n/q slots per achines and assigns requests to achines such that [ ML 1 + 1 1 + α q + α ) ] α AVG + β. Note that within each cluster c the assignent is unrestricted and so AVG c + β can be achieved by a greedy approach. Here AVG c denotes the average load of achines in the cluster. The worst case corresponds to the setting where one cluster has only files of size 1 + α)l whereas all other clusters have files of size L. An analysis of this case gives the bound above. If we assue that the desired q is constant then asyptotically as n, and n/ the condition that q divides both and n can be dropped in a siilar fashion to Corollary 1. Concretely, we can i) use duy files with load L to increase the nuber of files by at ost q to ensure q n and ii) choose not to use at ost q achines to ensure that q. This then leads to a new average satisfying AVG AVG+qL AVG+qAVG/n q q 1+q/n +n ) AVG = 1 + q ) AVG = 1 + o1)) AVG. 1 q/ n nq Corollary 2. Given any constant q N +, Cluster uses s = n/q slots per achine and, for large n and, has a akespan of [ ML 1 + 6. Lower bounds 1 1 + α q + α ) ] α 1 + o1) ) AVG + β. Next we give lower bounds for any deterinistic dualphase algorith. Theore 3 with q = 1) showed that without any unshared files we can obtain ML AVG + β and so the bounds depend on the nuber of unshared files. Theore 4. Let A be a deterinistic dual-phase algorith that produces a file assignent where at least one achine stores n unshared files. Then, for all n and there exists a sequence of requests such that [ ML 1 + 1 1 + α ) ] α AVG. + α The proof follows in a straightforward way fro an analysis of the case where the n unshared files on one achinehaveafileloadof 1 + α)l, whereas all the other files have L. In this case ML = n 1 + α) L and AVG = n + n α ) L. Dividing these two expressions and using the bounds n n n n + 1 and n+ leads to the stated result. For settings where there are even ore unshared files, we can get lower bounds of the for 1 + Ω )) AVG for the typical case of α < n. n

P. Dütting et al. / Inforation Processing Letters 111 2011) 178 183 183 Theore 5. Let A be a deterinistic dual-phase algorith that has at least ɛn unshared files, where 0 < ɛ 1. For all n 3 and α 0 there exists a sequence of requests such that 1) ML AVG if α n, 2 and 2) ML in1 + 12n α, 1 + 1 ɛ ɛ α) AVG if α < n. 2n Proof. In this proof let k = n/ 1, which does not need to be an integer. Case 1. α n. SinceA uses less than 2n slots there exists an unshared file. The adversary gives a file load of 1 +α)l to this file and L to every other file. Then ML 1 + α)l and AVG = kl+αl/. Thus,ML /AVG 1+α)/k+α/), which is at least /2 forα n. Case 2. α < n. We consider two cases depending on the file assignent. Case 2.1. There exists a achine with k unshared files. By Theore 4, ML [1 + 1 +α 1+α )α] AVG, which is at least 1 + α/4k) for α < n and 3. Case 2.2. There does not exist a achine with k unshared files. It follows that every achine has at ost k 1 any unshared files. 4 Thus, at least ɛn/ k 1) achines have at least one unshared file. The adversary first sends a sequence of requests that gives equal load of L to all files. Depending on the achine loads after these requests the adversary proceeds as follows. Case 2.2.1. There exists a achine with an unshared file f and total load of at least kl αl/2. In this case the adversary sends another sequence of requests, each requesting f and having a total load of αl. As a consequence has final load at least kl + αl/2 and AVG = kl + αl/. ThusML /AVG k + α/2)/k + α/) = 1 + α 2)/2n+2α), which is at least 1+α/12k) for 3 and α < n. Case 2.2.2. Every achine with an unshared file has at this pointatotalloadofatostkl αl/2. In this case the adversary sends no further requests. Thus, AVG = kl. LetS be the set of achines with at least one unshared file. Then the total load on the achines in S is at ost S kl αl/2). Thus on the reaining S achines there is a load of at least nl S kl αl/2) = S )kl+ S αl/2. Thus there exists a achine not in S with load at least kl + S αl/2 S )). Since S ɛn/ k 1) and S / S ) increases onotonically in S, it follows that has a load of at least kl + ɛαl/21 ɛ)). Thus, ML /AVG 1 + α 1 ɛ ɛ 1 2k. References [1] Y. Azar, J. Naor, R. Ro, The copetiveness of online assignents, in: Proc. 3rd ACM SIAM Syposiu on Discrete Algoriths, 1992, pp. 203 210. [2] L.A. Barroso, J. Dean, U. Hoelzle, Web search for a planet: the Google cluster architecture, IEEE Micro 23 2003) 22 28. [3] J. Zobel, A. Moffat, Inverted files for text search engines, ACM Coput. Surv. 38 2) 2006) 6. [4] Y. Azar, On-line load balancing, in: A. Fiat, G.J. Woeginger Eds.), Online Algoriths: The State of the Art, in: Lecture Notes in Coputer Science, vol. 1442, Springer-Verlag, Berlin, 1998, pp. 178 195. [5] S. Albers, Online algoriths: a survey, Matheatical Prograing 97 2003) 3 26. [6] A. Borodin, R. El-Yaniv, Online Coputation and Copetitive Analysis, Cabridge University Press, Cabridge, 2005. [7] R. Graha, Bounds for certain ultiprocessing anoalies, Bell Syste Technical Journal 45 1966) 1563 1581. [8] R. Graha, Bounds on ultiprocessing tiing anoalies, SIAM Journal of Applied Matheatics 17 1969) 263 269. [9] R. Fleischer, M. Wahl, Online scheduling revisited, Journal of Scheduling 3 2000) 343 353. [10] J.F. Rudin III, R. Chandrasekaran, Iproved bounds for the online scheduling proble, SIAM Journal on Coputing 32 2003) 717 735. [11] W. Hoeffding, Probability inequalities for sus of bounded rando variables, Journal of the Aerican Statistical Association 1963) 13 30. 4 When k =1, then n = and Case 2.1 arises. Thus we can assue that k 2.