Novel Latency Bounds for Distributed Coded Storage Jean-Francois - - PowerPoint PPT Presentation

novel latency bounds for distributed coded storage
SMART_READER_LITE
LIVE PREVIEW

Novel Latency Bounds for Distributed Coded Storage Jean-Francois - - PowerPoint PPT Presentation

Novel Latency Bounds for Distributed Coded Storage Jean-Francois Chamberland Parimal Parag Electrical and Computer Engineering Texas A&M University Electrical Communication Engineering Indian Institute of Science Information Theory and


slide-1
SLIDE 1

1/ 17

Novel Latency Bounds for Distributed Coded Storage

Jean-Francois Chamberland Parimal Parag

Electrical and Computer Engineering Texas A&M University Electrical Communication Engineering Indian Institute of Science

Information Theory and Applications Feb 13, 2018

slide-2
SLIDE 2

2/ 17

Building a Stronger Cloud

Cloud Readiness Characteristics

◮ Network access and broadband ubiquity ◮ Download and upload speeds ◮ Delays experienced by users are due to high network and server latencies Reducing delay in delivering packets to and from the cloud is crucial to delivering advanced services

slide-3
SLIDE 3

3/ 17

Inspirational Prior Work

  • x

x

  • Power of 2 Choices

◮ FIFO; Info – d queues ◮ 1 copy w/o feedback ◮ Exponential gain, d = 2

e.g.: Karp, Luby, Meyer auf der Heide, (1992); Adler, Chakrabarti, Mitzenmacher, Rasmussen (1995); Vvedenskaya, Dobrushin, Karpelevich (1996); Mitzenmacher (2001)

Redundancy-d Systems

◮ FIFO; Info – none ◮ d copies w cancellation ◮ Exact queue distribution

e.g.: Gardner, Zbarsky, Doroudi, Harchol-Balter, Hyyti¨ a, Scheller-Wolf (2015); Gardner, Harchol-Balter, Scheller-Wolf, Velednitsky, Zbarsky (2016)

slide-4
SLIDE 4

4/ 17

Duplication versus MDS Coding

⋆ ⋆

⋆ ⋆ ⋆ ⋆

⋆ ∗

⋆ ⋄ ∗ ∗ ∗

  • Queueing Analysis

◮ Minimize expected delay ◮ MDS outperforms Repetition ◮ Elusive exact expression

Canonical Example

◮ Four servers ◮ Two distinct pieces of information ◮ Find bounds

e.g.: Joshi, Liu, Soljanin (2012, 2014), Shah, Lee, Ramchandran (2013), Joshi, Soljanin, Wornell (2015), Sun, Zheng, Koksal, Kim, Shroff (2015), Kadhe, Soljanin, Sprintson (2016), Li, Ramamoorthy, Srikant (2016)

slide-5
SLIDE 5

5/ 17

Model Variations for Distributed Storage

Centralized MDS Queue without Replication ⋄ ⋆ ∗

⋄ ∗

∗ ⋆

⋆ ⋄ ∗

  • Distributed (n, k) Fork-Join Model with MDS Coding

⋄ ⋆ ∗

⋆ ⋄ ⋄ ∗ ∗

⋆ ∗

  • e.g.: Lee, Shah, Huang, Ramchandran (2017)
slide-6
SLIDE 6

6/ 17

Mean Sojourn Time

0.2 0.4 0.6 0.8 1 100 100.5 101 101.5 Arrival Rate λ (Load) Mean Sojourn Time W Mean Sojourn Time for (9, 3) Repetition Code Block Service QBD Reservation-3 Upper Bound Simulation Approximation Lower Bound QBD Violation-3 0.2 0.4 0.6 0.8 1 100 100.5 101 101.5 Arrival Rate λ (Load) Mean Sojourn Time W Mean Sojourn Time for (9, 3) MDS Code Block Service QBD Reservation-3 Upper Bound Simulation Approximation Lower Bound QBD Violation-3

◮ MDS coding significantly outperforms replication ◮ Bounding techniques are only meaningful under light loads ◮ Approximation is accurate over range of loads

slide-7
SLIDE 7

7/ 17

Adopted Model: Priority Policy with MDS Coding

⋄ ⋆ ∗

⋄ ∗ ⋆ ⋄ ∗

⋄ ∗

⋄ ∗

  • Assumptions

◮ FIFO, k out of n copies ◮ Information: global loads ◮ Feedback: cancellation ◮ MDS or replication

Challenges

◮ Intricate QBD Markov process ◮ Infinite states in n dimensions ◮ Tightly coupled transitions

Parimal Parag, JFC (ITA 2013, ITA 2018), Parimal Parag, Archana Bura, JFC (ITA 2017, INFOCOM 2017) gratias: Kannan Ramchandran, Salim El Rouayheb

slide-8
SLIDE 8

8/ 17

Establishing Lower and Upper Bounds

⋄ ⋆ ∗

⋆ ∗ ⋆ ⋄ ∗

⋄ ∗

⋆ ∗

∗ ⋆

⋆ ⋄ ∗

  • MDS-Reservation(t)

◮ Restriction on depth of scheduler ◮ Reduces dimension of chain ◮ Upper bound on E[T]

MDS-Violation(t)

◮ Unconstrained servers ◮ Equivalent to resource pooling without coding ◮ Lower bound on E[T]

Shah, Lee, Ramchandran (2013), Lee, Shah, Huang, Ramchandran (2017)

slide-9
SLIDE 9

9/ 17

Aggregate System – Level Abstraction

1 C2 A0 2 A2 A0 3 A2 A0 A2 A0

Transition Operator

       C1 C2 · · · A0 A1 A2 · · · A0 A1 A2 · · · A0 A1 A2 · · · . . . . . . . . . . . . . . . ...       

◮ Block partitioning far more important than entries of submatrices ◮ C1 and C2 account for boundary conditions

slide-10
SLIDE 10

10/ 17

Aggregate System – Stationary Distribution

⋄ ⋄ ∗ ⋄ ∗ 1 C2 A0 ⋄ ∗ ⋄ ∗ ⋄ ∗ ⋆ 2 A2 A0 ⋄ ⋄ ⋆ ⋄ ∗ ⋆ A2 A0

Chapman-Kolmogorov Equations

Stationary distribution, denoted π = (π0, π1, π2, . . . , ) with πq =

  • Pr(s1, q), . . . , Pr(sk, q)
  • is unique solution to balance equations

πq = πq−1A2 + πqA1 + πq+1A0

slide-11
SLIDE 11

11/ 17

The Cautionary Tale of Braess’s Paradox

A B Start N = 4000

45 min N/100 min

Destination

w/o 65 min w/ 80 min N/100 min 45 min “For each point of a road network, let there be given the number of cars starting from it and the destination of the cars. Under these conditions, one wishes to estimate the distribution of traffic flow. [...] If every driver takes the path that looks most favorable to them, the resultant running times need not be minimal. Furthermore, it is indicated by an example that an extension of the road network may cause a redistribution of the traffic that results in longer individual running times.”

slide-12
SLIDE 12

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

slide-13
SLIDE 13

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

slide-14
SLIDE 14

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

  • ×+

⋄ ⋆ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

  • ×+

⋄ ⋆ ∗

slide-15
SLIDE 15

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋆

slide-16
SLIDE 16

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋆

slide-17
SLIDE 17

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

  • ×+

⋄ ⋆ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

  • ×+

⋄ ⋆ ∗

slide-18
SLIDE 18

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

slide-19
SLIDE 19

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

⋄ ∗

  • ×+

⋄ ⋆ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

slide-20
SLIDE 20

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

⋄ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

slide-21
SLIDE 21

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

⋄ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄ ∗

slide-22
SLIDE 22

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

⋄ ∗

⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

slide-23
SLIDE 23

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

⋄ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

slide-24
SLIDE 24

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

⋄ ∗

⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

slide-25
SLIDE 25

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ∗

⋆ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ⋆

slide-26
SLIDE 26

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ∗

⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

slide-27
SLIDE 27

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ∗

⋆ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄

⋆ ⋆

slide-28
SLIDE 28

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ⋆ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄ ⋆

slide-29
SLIDE 29

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄

slide-30
SLIDE 30

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗

⋆ ⋆

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

⋆ ⋄

slide-31
SLIDE 31

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗ ⋄ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

∗ ⋆ ⋆ ⋄

slide-32
SLIDE 32

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗ ⋄ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

  • ×+

⋄ ⋆ ∗

∗ ⋄ ⋆ ∗

slide-33
SLIDE 33

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗ ⋄ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

slide-34
SLIDE 34

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ∗ ⋄ ∗

⋆ ⋆

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆ ∗

slide-35
SLIDE 35

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

⋄ ∗ ⋄ ∗

⋆ ⋄ ⋆

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

∗ ⋄ ⋆

⋆ ⋄

slide-36
SLIDE 36

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

⋄ ⋄ ∗

⋄ ⋆

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋄ ⋆

slide-37
SLIDE 37

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

⋄ ⋄ ∗

⋆ ⋄ ⋆

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋄ ⋆

⋆ ⋄

slide-38
SLIDE 38

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

∗ ⋄

⋆ ⋄ ⋆

⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄ ⋄

slide-39
SLIDE 39

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋄ ⋄

slide-40
SLIDE 40

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄ ⋄

slide-41
SLIDE 41

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄ ∗ ⋆ Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

⋆ ⋄ ∗ ⋄

slide-42
SLIDE 42

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

slide-43
SLIDE 43

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

Eviction/Violation Lower Bound ⋄ ⋆ ∗

⋆ ∗

slide-44
SLIDE 44

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

slide-45
SLIDE 45

12/ 17

Sample Path Failure of Eviction/Violation Bound

Regular Distributed Coded Storage ⋄ ⋆ ∗

⋆ ∗

⋄ ⋆

  • Eviction/Violation Lower Bound

⋄ ⋆ ∗

⋆ ∗

⋄ ⋄

slide-46
SLIDE 46

13/ 17

Beyond Sample-Path Dominance – System Model

File storage

◮ Media file partitioned into k pieces of equal size ◮ Data is encoded and stored

  • n cloud servers

Arrivals Process

◮ Every request wants entire media file ◮ Poisson arrival process with rate λ

Completion Time

◮ Elapsed time form request to completion of service

Service Structure

◮ Independence across servers ◮ Renewal process ◮ Exponentially service distribution ◮ Normalized rate

slide-47
SLIDE 47

14/ 17

State Space Structure

⋆ ⋄ ∗

  • ⋆ ⋄

⋆ ∗ ⋆ • ⋄ ∗ ⋄ • ∗ • ⋆ ⋄ ∗ ⋆ ⋄ • ⋆ ∗ • ⋄ ∗ •

Keeping Track of Partially Fulfilled Requests

◮ State of partially fulfilled requests becomes large ◮ MDS coding and priority scheduling induce special structure: newer request have subset of older requests ◮ Leverage symmetry and focus on number of users with given number of pieces

slide-48
SLIDE 48

15/ 17

State Space Collapse

Y(t) = (Y0(t), Y1(t), . . . , Yk−1(t)) where Yi(t) is number of requests with i symbols

Results

◮ Y(t) is Markov ◮ Define φj(y) = j

i=0 yi

◮ Define workload dominance (partial order) y ≤w ˜ y iff φj(y) ≤ φj(˜ y) ∀j

slide-49
SLIDE 49

16/ 17

State Transitions of Collapsed System

Preservation of Workload Dominance

Workload dominance for two system states is preserved under coincident arrival of new requests, and concurrent delivery of data fragments at a same level in respective chains of useful servers

Expected Queue Lengths

For distributed storage with symmetric coding, fork-join queues, and FCFS service, expected queue length of QBD Violation-θ process E [Y (t)1] is less than or equal to expected queue length

  • f original process E [Y (t)1] at any t ≥ 0
slide-50
SLIDE 50

17/ 17

Summary and Discussion

Main Contributions

◮ Showcase that QBD-Violation, QBD-Eviction need not be sample path lower bounds ◮ Identify fundamental structure of coded storage systems under symmetric coding ◮ Introduce suitable partial order for system comparison ◮ Establish lower and upper bounds for expected queue lengths