how useful is old information?

32
How Useful is Old Information? On the Management and Efficiency of Cloud Based Services seminar MICHAEL MITZENMACHER 2010 Computer Science facul Alexander Zlotnik IEEE Transactions on Parallel and Distributed Systems, 1997

Upload: shona

Post on 23-Feb-2016

41 views

Category:

Documents


0 download

DESCRIPTION

How Useful is Old Information?. IEEE Transactions on Parallel and Distributed Systems, 1997. MICHAEL MITZENMACHER. On the Management and Efficiency of Cloud Based Services seminar. Alexander Zlotnik. November 2010 Computer Science faculty Technion. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: How Useful is Old Information?

How Useful is Old Information?

On the Management and Efficiency of Cloud Based Services seminar

MICHAEL MITZENMACHER

November 2010 Computer Science faculty Technion

Alexander Zlotnik

IEEE Transactions on Parallel and Distributed Systems, 1997

Page 2: How Useful is Old Information?

Amazon Elastic Load Balancing

• Share Incoming Traffic• Scale Up• Scale Down • Detect & shutdown unhealthy EC2 instances• Balance single/multiple Availability Zones• Reports• $0.025 per hour [$18/month] + Traffic

Page 3: How Useful is Old Information?

Background

• What is this paper not– Real system– Scale up/down system– Groups/AZ balancing

Page 4: How Useful is Old Information?

Background

• Supermarket model & benefits1. On incoming task, poll d queues for their load2. Send the task to the shorter queue

- For d = 2 the service time is exponentially shorter- Further d = 3, 4, … the improvement is linear

Page 5: How Useful is Old Information?

Background

• Load Balancing Types– Centralized/Distributed– Static/Dynamic(adaptive)

Page 6: How Useful is Old Information?

Setting

• n nodes• Tasks Arrival: Poisson (λn)• Task is forwarded to a node for execution• Execution rate is distributed Exp(µ) – Normalized to µ=1

• Every T time units a bulletin board is updated with the current loads of all nodes

Page 7: How Useful is Old Information?

Policy

• Look at d random entries on the board, send the task to the shortest queue

• d=1– M/M/1

• d=n– Shortest queue

Static

Page 8: How Useful is Old Information?

Periodic updates0 T 2T 3T Tt

Node Posted Load True Load

0 4 4

1 0 0

2 3 3

n-1 2 2

True Load

3

1

2

3

True Load

2

2

3

1

True Load

3

1

2

0

True Load

1

1

2

3

Posted Load

1

1

2

3

Page 9: How Useful is Old Information?

Definitions• Pi,j(t) – Fraction of queues with posted load i,

but have true load j• qi(t) - Rate of arrivals at a queue of size i

Node Posted Load True Load

0 4 4

1 0 0

2 3 3

n-1 2 2

0 1 2 3 4 … J

0

1

2

3

4

I

Posted Load

True LoadPi,j(t)

Page 10: How Useful is Old Information?

Between board updates

0 1 2 3 4 … J

0

1

2

3

4

I

Posted Load

True Load

µ

qi

µ

qi

Pi,j(t)

Page 11: How Useful is Old Information?

On board update

0 1 2 3 4 … J

0

1

2

3

4

I

Posted Load

True Load

Pi,j(t)

00

πi

bi

Page 12: How Useful is Old Information?

0 1 2 3 4 … J

0

1

2

3

4

I

Posted Load

True Load

Pi,j(t) bi

Σ

• bi (t) – Fraction of queues with load i posted

Page 13: How Useful is Old Information?

• bi (t) – Fraction of queues with posted load i• Arrival rate to a queue with posted load i:

Tasks arrivalChance that d selected queues have load i or moreChance that a queue of size i is selectedSame chance for all queues of size i

Page 14: How Useful is Old Information?

Fixed Cycle

• Hope: Convergence to a fixed point– State that there is no “motivation” to exit from–

• Periodic Updates– “Jump” on bulletin board updates, t=kT– Fixed cycle: bi do not change• Or, for k≥k0, P(kT) = P(k0T)

Page 15: How Useful is Old Information?

Fixed Cycle

0 1 2 3 4 … J

0

1

2

3

4

I

Posted Load

True Load

Pi,j(t) bi

Σ

πi

Σ

If π((k-1)T)= π(kT), the next phase will be the same

Page 16: How Useful is Old Information?

Fixed Cycle – finding vector π • Method A

Run the system until changes in π are small• Method B

mi,j(T) – Probability for M/M/1 queue to start with i tasks and after time T to have j tasks

Solving a system of equations:

• Method A on truncated system of differential equations

Page 17: How Useful is Old Information?

Fixed Cycle – finding vector π • Method B

mi,j(T) – Probability for M/M/1 queue to start with i tasks and after time T to have j

tasks– Solving a system of equations:

Iterating

0 1 2 … J012…I

π – Iteration start

=x

π – Iteration end

Until small changes in π

Page 18: How Useful is Old Information?

Fixed Cycle – finding vector π • Method B

mi,j(T) – Probability for M/M/1 queue to start with i tasks and after time T to have j

tasks– Iterating a system of equations:

i

dij j

dij j

i b

bbq

)()(

n

n

n xnn

xB2

0 2)!(!)1()( Bessel function of the first kind

Page 19: How Useful is Old Information?

Fixed Cycle – finding vector π

• Method A on truncated system of differential equations– Bound I, J– Iterate on

– Until small changes in π

Page 20: How Useful is Old Information?

Results

Page 21: How Useful is Old Information?
Page 22: How Useful is Old Information?
Page 23: How Useful is Old Information?

More complex Centralized Strategies• Time based– Split T into subintervals– At subinterval [tk,tk+1) tasks sent to random server

with load at most k

0 1 2 3 4 5 60

0.2

0.4

0.6

0.8

1

1.2

Distribution of queues by waiting tasks

[t0,t1)[t1,t2)[t2,t3)[t3,t4)[t4,t5)[t5,t6)[t6,t7)

Tasks in queue

Frac

tion

of to

tal q

ueue

s

Page 24: How Useful is Old Information?

More complex Centralized Strategies

• Record-insert– Upon task arrival:

• Sent to random server of servers with lowest load• Server’s load is incremented on bulleting board• Task ending not updated (until end of phase)

– Uses real loads, not expectation• Always better than time-based

Page 25: How Useful is Old Information?

More complex Centralized Strategies

Page 26: How Useful is Old Information?

Continuous Update

Page 27: How Useful is Old Information?

Continuous Updates

• Tasks benefit on occasional accurate info– Supported by other graphs too

• Partial accurate info – not helpful– If not known which data is up to date

Page 28: How Useful is Old Information?

Individual Updates

Page 29: How Useful is Old Information?

Conclusions

• Load Balancing is useful even with stale information

• Choosing least loaded of 2 nodes is better than shortest or 3 or more

• More complex policies can further help load balancing (like time-based or record-insert)

Page 30: How Useful is Old Information?

Open Questions

• Additional metrics• Different theoretical frameworks• More realistic arrival patterns (heavy-tailed)

Page 31: How Useful is Old Information?

Personal review

• Powerful theoretical framework• Interesting and relevant results• Cons– Too few loads scenarios– No comparison between the amount of needed

bandwidth to load balancing benefit

Page 32: How Useful is Old Information?

Relevant Information

• More references– Collection of works:

• “The power of Two Random Choices: A Survey of Techniques and Results” M. Mitzenmacher et al 2001

• Not covered in this presentation:– Deviation of simulating differential equations instead of full

system [Sections 3.4, 3.5]– Theory of some systems, but their results are– Competitive Scenarios [Section 6]– Small number of servers