Data Base Design Principles for Striping and Placement of

Delay-Sensitive Data on Disks

Stavros Christodoulakis and Fenia Zioga*

Laboratory of Distributed Multimedia Information Systems and Applications (MU.S.I.C.),

Technical University of Crete (TUC)

e-mail: (stavros, fenia)@ced.tuc.gr

 

 

 

 

 

*work done in the context of the ESPRIT LTR Project HERMES (Foundations of High Performance Multimedia Information Management Systems), # 9141

 

 

 

Presentation Outline

 

 

 

 

 

Overview

 

 

Majorization Theory & Schur Functions

Majorization:

Then: holds if

Schur Functions:

if Schur convex& then

if Schur concave& then

Example:

f is a cost function and its argument is the vector of disk partition probabilities

f is Schur-concave. Let alternative disk partition probability vectorssuch that

Then, the cost function is maximized when partition probabilities are as uniform as possible

 

The Striping Performance Model

The Striping Model

Assumptions

Placement & Retrieval of Striped Data

The Striping Performance Model (cont’d)

Hiccup-free Playback Condition:

 

 

Maximum #Concurrent Streams:

Capacity S(n) of an n disk partition: or

Minimum #disks to support k streams:

The Striping Performance Model (cont’d)

Impact of Striping Parameters on Performance

The Striping Performance Model (cont’d)

Impact of Striping Parameters on Performance (cont’d)

Data Prefetching in the Client

Bandwidth Requirement:

Capacity:

 

 

The Striping Performance Model (cont’d)

Impact of Striping Parameters on Performance (cont’d)

Data Prefetching in the Client (cont’d)

Disk Allocation for Striping Two DS Objects

We seek the allocation accomplishing the maximum number of concurrent streams

Partitioned vs. Unpartitioned Striping

Unpartitioned striping may outperform paritioned striping when the object probabilities have a variance

 

 

Disk Allocation for Striping Two DS Objects (cont’d)

Allocation of Striping Partitions

Problem Definition: Let n1 n2:the #disks to stripe the 1st and the 2nd object.

Given:: access probabilities of the DS objects ()

C : consumption rate

B : round block size

Find

:

Problem Solution:

  1. If no incoming requests are rejected the maximum #streams k1 is when:
  2. If some requests are rejected :

Disk Allocation for Striping Two DS Objects (cont’d)

Allocation of Striping Partitions (cont’d)

Allocation Algorithm: Optimal vs. Random allocations

(assumes )

Begin

If then

Allocate and

else

if then

allocate and

else

allocate and

End.

Disk Allocation for Striping r DS Objects (cont’d)

Allocation of Striping Partitions (cont’d)

Allocation Algorithm: (assumes )

If then

Allocate to each partition (i=1,..r)

else

for i=1 to r do

if then

allocate to the ith partition

else

allocate to the remaining partitions (k=i,..r)

Next i

Grouping of DS Objects across Two Disk Partitions

Such grouping may be useful e.g.

The grouping must achieve maximum number of concurrent streams

Objects with Equal Consumption Rates

Theorem: The function ,

gives the maximum #streams for two objects withstriped across two partitions

Theorem: F(p1, p2) is Schur concave with respect to

Conclusion: Grouping of objects must produce as equal cumulative probability of access as possible in the two partitions

Grouping of DS Objects across Two Disk Partitions (cont’d)

Objects with Different Consumption Rates

Given:

Pi: access probability of the ith DS object, (i=1,..r)

Ci , consumption rate of the ith DS object, (i=1,..r)

n1,n2 partition sizes

The optimal grouping must assign:

To the 1st partition objects such that: =

To the 2nd partition objects such that: =

Summary

The Striping Model

In our striping model the performance of striping is expressed as #concurrent streams supported

The performance of striping is affected by:

Allocation of Striping Partitions

For fixed access probabilities of the objects, partitioned striping is more efficient than unpartitioned

When the system rejects clients, constructing equally sized partitions for striping the objects supports more clients simultaneously

For objects with equal bandwidth requirement, objects must be grouped so that the cumulative probabilities of the striping partitions are as equal as possible