Distributed Storage Allocation for High Reliability

0 downloads 0 Views 1MB Size Report
May 26, 2010 - Distributed Storage Allocation for High Reliability. ICC 2010 2010-05-26. A thirsty lion wanders across the savanna in search of water .
Distributed Storage Allocation for High Reliability Derek Leong1 1

2

Alex Dimakis2

Tracey Ho1

Department of Electrical Engineering California Institute of Technology Pasadena, California, USA

Department of Electrical Engineering University of Southern California Los Angeles, California, USA

ICC 2010 2010-05-26

Introduction Motivating Example

A Water Analogy

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example A thirsty lion wanders across the savanna in search of water ...

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example ... he needs at least 1ℓ of water to survive ...

≥ 1

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example ... suddenly, he finds five abandoned jerrycans ...

≥ 1

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example ... he chooses three jerrycans at random and starts chewing them open ...

≥ 1

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example

Budget of 1.5ℓ Survival Probability

Allocation A

1

1 2

0

0

0

?

B

1 3

1 3

1 3

1 3

1 6

?

C

1 2

1 2

1 2

0

0

?

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example

Allocation A 3-Subset

1

1 2

0

0

0

(i)

1

0

0

0

(ii)

1

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

(iii)

1

(iv)

1

(v)

1

(vi)

1

(vii)

1

(viii)

1

(ix)

1

(x)

1

Distributed Storage Allocation for High Reliability

P

≥ 1?

" " " " " " % % % %

ICC 2010 2010-05-26

Introduction Motivating Example

Allocation A 3-Subset

1

1 2

0

0

0

(i)

1

0

0

0

(ii)

1

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

(iii)

1

(iv)

1

(v)

1

(vi)

1

(vii)

1

(viii)

1

(ix)

1

(x)

1

Distributed Storage Allocation for High Reliability

P

≥ 1?

" " " " " " % % % %

ICC 2010 2010-05-26

60% Survival Probability

Introduction Motivating Example

Allocation B 3-Subset

1 3

1 3

1 3

1 3

1 6

(i)

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 6

(ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x)

Distributed Storage Allocation for High Reliability

P

≥ 1?

" " % " % % " % % %

ICC 2010 2010-05-26

Introduction Motivating Example

Allocation B 3-Subset

1 3

1 3

1 3

1 3

1 6

(i)

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3

1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 6 1 6

(ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x)

Distributed Storage Allocation for High Reliability

P

≥ 1?

" " % " % % " % % %

ICC 2010 2010-05-26

40% Survival Probability

Introduction Motivating Example

Allocation C 3-Subset

1 2

1 2

1 2

0

0

(i)

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

(ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x)

Distributed Storage Allocation for High Reliability

P

≥ 1?

" " " " " % " " % %

ICC 2010 2010-05-26

Introduction Motivating Example

Allocation C 3-Subset

1 2

1 2

1 2

0

0

(i)

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

(ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x)

Distributed Storage Allocation for High Reliability

P

≥ 1?

" " " " " % " " % %

ICC 2010 2010-05-26

70% Survival Probability

Introduction Motivating Example

Budget of 1.5ℓ Survival Probability

Allocation A

1

1 2

0

0

0

60%

B

1 3

1 3

1 3

1 3

1 6

40%

C

1 2

1 2

1 2

0

0

70%

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example

Water ≈ Coded Data

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example

Water ≈ Coded Data

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Motivating Example

Water ≈ Coded Data storage node 1

x1

t1

storage node 2

r1

...

...

s

x2

storage node n

xn

Distributed Storage Allocation for High Reliability

r2 ICC 2010 2010-05-26

t2

Introduction Key Question

storage node 1

x1

storage node 2

...

x2

...

s

r

t

Given a limited storage budget, how should we store a data object over a set of nodes so that it can be recovered with maximum reliability?

storage node n

xn

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Key Question

storage node 1

x1

storage node 2

...

x2

...

s

r

t

Given a limited storage budget, how should we store a data object over a set of nodes so that it can be recovered with maximum reliability?

storage node n

xn

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Key Question

storage node 1

x1

storage node 2

...

x2

...

s

r

t

Given a limited storage budget, how should we store a data object over a set of nodes so that it can be recovered with maximum reliability?

storage node n

xn

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Introduction Key Question

storage node 1

x1

storage node 2

...

x2

...

s

r

t

Given a limited storage budget, how should we store a data object over a set of nodes so that it can be recovered with maximum reliability?

storage node n

xn

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Storage Allocation

A source has a data object of unit size which it can code and store over a set of n storage nodes Let 1 , 2 , . . . , n be the amount of coded data stored in node 1, 2, . . . , n

storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

Although any amount of data can be stored in each node, the total amount of storage used must not exceed a given budget T , i.e. n X

 ≤ T

=1

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Storage Allocation

A source has a data object of unit size which it can code and store over a set of n storage nodes Let 1 , 2 , . . . , n be the amount of coded data stored in node 1, 2, . . . , n

storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

Although any amount of data can be stored in each node, the total amount of storage used must not exceed a given budget T , i.e. n X

 ≤ T

=1

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Storage Allocation

A source has a data object of unit size which it can code and store over a set of n storage nodes Let 1 , 2 , . . . , n be the amount of coded data stored in node 1, 2, . . . , n

storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

Although any amount of data can be stored in each node, the total amount of storage used must not exceed a given budget T , i.e. n X

 ≤ T

=1

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Access by a Data Collector

A data collector subsequently attempts to recover the original data object by accessing only a random subset r of the nodes, where r is to be specified by the assumed access model or failure model

storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

By using an appropriate code, successful recovery occurs when the total amount of data in the accessed nodes is at least the size of the original data object, i.e. X

 ≥ 1

∈r

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Access by a Data Collector

A data collector subsequently attempts to recover the original data object by accessing only a random subset r of the nodes, where r is to be specified by the assumed access model or failure model

storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

By using an appropriate code, successful recovery occurs when the total amount of data in the accessed nodes is at least the size of the original data object, i.e. X

 ≥ 1

∈r

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Objective

storage node 1

x1

storage node 2

...

x2

...

s

r

t

For a given budget T , we seek the optimal allocation {1 , 2 , . . . , n } that maximizes the probability of successful recovery   X P    ≥ 1 ∈r

storage node n

xn

This optimization problem is difficult in general because the objective function is discrete and nonconvex, and there is a large space of feasible allocations to consider

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Objective

storage node 1

x1

storage node 2

...

x2

...

s

r

t

For a given budget T , we seek the optimal allocation {1 , 2 , . . . , n } that maximizes the probability of successful recovery   X P    ≥ 1 ∈r

storage node n

xn

This optimization problem is difficult in general because the objective function is discrete and nonconvex, and there is a large space of feasible allocations to consider

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Related Work

Discussion between R. Karp, R. Kleinberg, C. Papadimitriou, E. Friedman, and others at UC Berkeley, 2005 storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

S. Jain, M. Demmer, R. Patra, K. Fall, “Using redundancy to cope with failures in a delay tolerant network,” SIGCOMM 2005 LDH, “Distributed storage allocation problems,” NetCod 2009 M. Sardari, R. Restrepo, F. Fekri, E. Soljanin, “Memory allocation in distributed storage networks,” ISIT 2010

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Related Work

Discussion between R. Karp, R. Kleinberg, C. Papadimitriou, E. Friedman, and others at UC Berkeley, 2005 storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

S. Jain, M. Demmer, R. Patra, K. Fall, “Using redundancy to cope with failures in a delay tolerant network,” SIGCOMM 2005 LDH, “Distributed storage allocation problems,” NetCod 2009 M. Sardari, R. Restrepo, F. Fekri, E. Soljanin, “Memory allocation in distributed storage networks,” ISIT 2010

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Related Work

Discussion between R. Karp, R. Kleinberg, C. Papadimitriou, E. Friedman, and others at UC Berkeley, 2005 storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

S. Jain, M. Demmer, R. Patra, K. Fall, “Using redundancy to cope with failures in a delay tolerant network,” SIGCOMM 2005 LDH, “Distributed storage allocation problems,” NetCod 2009 M. Sardari, R. Restrepo, F. Fekri, E. Soljanin, “Memory allocation in distributed storage networks,” ISIT 2010

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

General Problem Description Related Work

Discussion between R. Karp, R. Kleinberg, C. Papadimitriou, E. Friedman, and others at UC Berkeley, 2005 storage node 1

x1

storage node 2

...

x2

...

s

storage node n

xn

r

t

S. Jain, M. Demmer, R. Patra, K. Fall, “Using redundancy to cope with failures in a delay tolerant network,” SIGCOMM 2005 LDH, “Distributed storage allocation problems,” NetCod 2009 M. Sardari, R. Restrepo, F. Fekri, E. Soljanin, “Memory allocation in distributed storage networks,” ISIT 2010

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Problem Description Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Problem Description Maximize recovery probability for a given budget T storage node 1

x1

(n, r, T) :

storage node 2

...

...

s

x2

r

t

X

maximize 1 ,...,n

storage node n

xn

r⊂{1,...,n}: |r|=r

  X  €nŠ ·    ≥ 1

1 r

∈r

subject to Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

n X

 ≤ T

=1

 ≥ 0

∀  ∈ {1, . . . , n}

For the trivial budget T = 1, the optimal allocation is {1, 0, . . . , 0}

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Problem Description Minimize budget required to achieve a given recovery probability PS storage node 1

x1

0 (n, r, PS ) :

storage node 2

...

x2

...

s

r

storage node n

xn

t

minimize

T

1 ,...,n

subject to

 Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

X



r⊂{1,...,n}: |r|=r

Distributed Storage Allocation for High Reliability

X



  n

  ≥ 1 ≥ PS

r

∈r n X

 ≤ T

=1

 ≥ 0

ICC 2010 2010-05-26

∀  ∈ {1, . . . , n}

Access to a Fixed-Size Subset of Nodes Some Numerical Results (n, r) = (5, 3) maximum 1.0 recovery 0.9 probability

max Ps

0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

0.2

0.4

0.6

0.8

1.0

budget T Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

1.2

1.4

1.6

Access to a Fixed-Size Subset of Nodes Some Numerical Results (n, r) = (5, 3) maximum 1.0 recovery 0.9 probability

max Ps

1 1 1 1 1 {0,0,0,0,0} 3 3 3 3 3

0.8

1 1 1 {0,0,0,0,0} 2 2 2

0.7 0.6

{1,0,0,0,0}

0.5 0.4 0.3 0.2 0.1 0

0.2

0.4

0.6

0.8

1.0

budget T Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

1.2

1.4

1.6

Access to a Fixed-Size Subset of Nodes Some Numerical Results (n, r) = (6, 2) maximum 1.0 recovery 0.9 probability

max Ps

0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

0.5

1.0

1.5

2.0

budget T Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

2.5

3.0

Access to a Fixed-Size Subset of Nodes Some Numerical Results (n, r) = (6, 2) maximum 1.0 recovery 0.9 probability

max Ps

1 1 1 1 1 1 {0,0,0,0,0,0} 2 2 2 2 2 2

0.8

1 1 1 1 1 {0,0,0,0,0,0} 2 2 2 2 2

0.7 0.6

{1,1,0,0,0,0}

0.5 0.4 0.3 0.2

{1,0,0,0,0,0}

0.1 0

0.5

1.0

1.5

2.0

budget T Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

2.5

3.0

Access to a Fixed-Size Subset of Nodes Special Case of Probability-1 Recovery

storage node 1

x1

Theorem: Probability-1 Recovery

storage node 2

...

x2

...

s

r

t

The allocation

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

 =

1 r

,

 = 1, . . . , n,

minimizes the budget if probability-1 recovery is required.

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability

storage node 1

Theorem: Case of r | n

storage node 2

Suppose that n is a multiple of r . The allocation

x1

...

...

s

x2

r

t

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

 =

1 r

,

 = 1, . . . , n,

minimizes the budget if and only if the required recovery probability exceeds

Distributed Storage Allocation for High Reliability

r 1−

. n

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Theorem: Case of r - n Suppose that n is not a multiple of r . The allocation

storage node 1

x1

storage node 2

...

x2

...

s

r

t

 =

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

1 r

,

 = 1, . . . , n,

minimizes the budget if the required recovery probability exceeds

1−

gcd(r, r 0 ) α gcd(r, r 0 ) + r 0

where n = α r + r 0 , α ∈ Z+ , 0 0 and r ∈ {r + 1, . . . , 2r − 1}.

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

,

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). Begin with the case of probability-1 recovery... storage node 1

x1

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

0 (n = 4, r = 2, PS = 1) : minimize

T

1 ,2 ,3 ,4

subject to

1 + 2 ≥ 1

2 + 3 ≥ 1

1 + 3 ≥ 1

2 + 4 ≥ 1

1 + 4 ≥ 1

3 + 4 ≥ 1

T ≥ 1 + 2 + 3 + 4 1 ≥ 0 2 ≥ 0 3 ≥ 0 4 ≥ 0

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). 1 1 Optimal allocation is 1 = 2 = 3 = 4 = r = 2 , n which gives T = r = 2.

storage node 1

x1

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

0 (n = 4, r = 2, PS = 1) : minimize

T

1 ,2 ,3 ,4

subject to

1 + 2 ≥ 1

2 + 3 ≥ 1

1 + 3 ≥ 1

2 + 4 ≥ 1

1 + 4 ≥ 1

3 + 4 ≥ 1

T ≥ 1 + 2 + 3 + 4 1 ≥ 0 2 ≥ 0 3 ≥ 0 4 ≥ 0

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). This allocation remains optimal even after dropping some r -subset constraints...

storage node 1

x1

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

0 (n = 4, r = 2, PS = 1) : minimize

T

1 ,2 ,3 ,4

subject to

1 + 2 ≥ 1

2 + 3 ≥ 1

1 + 3 ≥ 1

2 + 4 ≥ 1

1 + 4 ≥ 1

3 + 4 ≥ 1

T ≥ 1 + 2 + 3 + 4 1 ≥ 0 2 ≥ 0 3 ≥ 0 4 ≥ 0

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). n We still need T ≥ 2 = r in order to satisfy the highlighted r -subset constraints...

storage node 1

x1

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

0 (n = 4, r = 2, PS = 1) : minimize

T

1 ,2 ,3 ,4

subject to

1 + 2 ≥ 1

2 + 3 ≥ 1

1 + 3 ≥ 1

2 + 4 ≥ 1

1 + 4 ≥ 1

3 + 4 ≥ 1

T ≥ 1 + 2 + 3 + 4 1 ≥ 0 2 ≥ 0 3 ≥ 0 4 ≥ 0

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). n We still need T ≥ 2 = r in order to satisfy the highlighted r -subset constraints...

storage node 1

x1

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

0 (n = 4, r = 2, PS = 1) : minimize

T

1 ,2 ,3 ,4

subject to

1 + 2 ≥ 1

2 + 3 ≥ 1

1 + 3 ≥ 1

2 + 4 ≥ 1

1 + 4 ≥ 1

3 + 4 ≥ 1

T ≥ 1 + 2 + 3 + 4 1 ≥ 0 2 ≥ 0 3 ≥ 0 4 ≥ 0

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). n We still need T ≥ 2 = r in order to satisfy the highlighted r -subset constraints...

storage node 1

x1

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

0 (n = 4, r = 2, PS = 1) : minimize

T

1 ,2 ,3 ,4

subject to

1 + 2 ≥ 1

2 + 3 ≥ 1

1 + 3 ≥ 1

2 + 4 ≥ 1

1 + 4 ≥ 1

3 + 4 ≥ 1

T ≥ 1 + 2 + 3 + 4 1 ≥ 0 2 ≥ 0 3 ≥ 0 4 ≥ 0

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). Each r -subset constraint appears in exactly one “partition”...

storage node 1

x1

r -subset Constraints

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

“Partitions”

1 + 2 ≥ 1 1 + 3 ≥ 1 1 + 4 ≥ 1

{1 + 2 ≥ 1, 3 + 4 ≥ 1}

{1 + 3 ≥ 1, 2 + 4 ≥ 1}

2 + 3 ≥ 1 2 + 4 ≥ 1

{1 + 4 ≥ 1, 2 + 3 ≥ 1}

3 + 4 ≥ 1 Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). For each r -subset constraint removed, we deactivate at most one “partition”...

storage node 1

x1

r -subset Constraints

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

“Partitions”

1 + 2 ≥ 1 1 + 3 ≥ 1 1 + 4 ≥ 1

{1 + 2 ≥ 1, 3 + 4 ≥ 1}

{1 + 3 ≥ 1, 2 + 4 ≥ 1}

2 + 3 ≥ 1 2 + 4 ≥ 1

{1 + 4 ≥ 1, 2 + 3 ≥ 1}

3 + 4 ≥ 1 Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). To deactivate all 3 “partitions”, we need to remove at least 3 r -subset constraints...

storage node 1

x1

r -subset Constraints

storage node 2

...

x2

...

s

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

“Partitions”

1 + 2 ≥ 1 1 + 3 ≥ 1 1 + 4 ≥ 1

{1 + 2 ≥ 1, 3 + 4 ≥ 1}

{1 + 3 ≥ 1, 2 + 4 ≥ 1}

2 + 3 ≥ 1 2 + 4 ≥ 1

{1 + 4 ≥ 1, 2 + 3 ≥ 1}

3 + 4 ≥ 1 Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). To deactivate all 3 “partitions”, we need to remove at least 3 r -subset constraints

storage node 1

x1

storage node 2

...

...

s

x2

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

In other words, we will have at least one active “partition” if fewer than 3 r -subset constraints are removed Therefore, if the required recovery 3 1 probability exceeds 1 − 6 = 2 , then we will n need T ≥ 2 = r , that is, the allocation

1 = 2 = 3 = 4 = 1r = 12 is optimal

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). To deactivate all 3 “partitions”, we need to remove at least 3 r -subset constraints

storage node 1

x1

storage node 2

...

...

s

x2

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

In other words, we will have at least one active “partition” if fewer than 3 r -subset constraints are removed Therefore, if the required recovery 3 1 probability exceeds 1 − 6 = 2 , then we will n need T ≥ 2 = r , that is, the allocation

1 = 2 = 3 = 4 = 1r = 12 is optimal

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Proof Idea: Consider (n, r) = (4, 2). To deactivate all 3 “partitions”, we need to remove at least 3 r -subset constraints

storage node 1

x1

storage node 2

...

...

s

x2

r

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

t

In other words, we will have at least one active “partition” if fewer than 3 r -subset constraints are removed Therefore, if the required recovery 3 1 probability exceeds 1 − 6 = 2 , then we will n need T ≥ 2 = r , that is, the allocation

1 = 2 = 3 = 4 = 1r = 12 is optimal

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Regime of High Recovery Probability Intervals of recovery probability PS over which 1 the allocation  = r ,  = 1, . . . , n, is optimal, for n = 40 recovery probability

Ps

1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0

5

10

15

20

25

subset size r Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

30

35

40

Access to a Fixed-Size Subset of Nodes Summary

storage node 1

x1

1

We are able to describe the optimal allocation in the regime of high recovery probability

2

Question: For the general problem, how much will we lose if we were to consider only symmetric allocations?

3

Question: What is the optimal symmetric allocation?

storage node 2

...

...

s

x2

r

t

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Summary

storage node 1

x1

1

We are able to describe the optimal allocation in the regime of high recovery probability

2

Question: For the general problem, how much will we lose if we were to consider only symmetric allocations?

3

Question: What is the optimal symmetric allocation?

storage node 2

...

...

s

x2

r

t

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Access to a Fixed-Size Subset of Nodes Summary

storage node 1

x1

1

We are able to describe the optimal allocation in the regime of high recovery probability

2

Question: For the general problem, how much will we lose if we were to consider only symmetric allocations?

3

Question: What is the optimal symmetric allocation?

storage node 2

...

...

s

x2

r

t

storage node n

xn

Data collector accesses an r -subset of storage nodes, selected uniformly at random from the collection of all possible r -subsets, where r is a constant

Distributed Storage Allocation for High Reliability

ICC 2010 2010-05-26

Thank you!

Table of Contents 1

2

3

Introduction Motivating Example Key Question General Problem Description Storage Allocation Access by a Data Collector Objective Related Work Access to a Fixed-Size Subset of Nodes Problem Description Some Numerical Results Special Case of Probability-1 Recovery Regime of High Recovery Probability Summary

Suggest Documents