Parametric Evaluation of Performance Behavior in

0 downloads 0 Views 387KB Size Report
Bianchi, Riccardo. Melen, and Alessandro. Rainoni. Performance of video storage hierarchy in inter- active video services networks. In Proceedings of the 1995 ...
Submitted to International Journal of Performance Evaluation, Elsevier Science

Parametric Evaluation of Performance Behavior in Hierarchical Storage Architecture Youjip Won and Jaideep Srivastava Department of Computer Science, University of Minnesota 200 Union Street S.E #4-192 Minneapolis, MN 55455, USA

[email protected] Abstract In this article, we investigate the performance behavior of a hierarchical storage architecture. Considering both the size of video files and the skewed file access patterns over the available files, it is not cost-effective to store all video files on secondary storage such as disk arrays, since most users may access only a small subset of the available video files. Using tertiary storage, such as a tape library, is a promising solution for achieving the desired cost effectiveness. Though a hierarchical storage structure is desirable, an unbalanced configuration of the storage hierarchy may result in waste of resources and thus degrade overall server throughput. Our effort is focused on investigating the effect of the various system parameters to obtain an optimal configuration of the hierarchical storage. Throughput of the server is defined along with two orthogonal performance metrics, namely expected service time and system congestion and blocking probability. We establish an analytical formulation for the given performance metrics. Hierarchical storage performance is governed by several factors such as user-access pattern, number of tape drives, capacity of secondary storage, transfer rate of tape drives, and transfer rate of disks. It is observed that speeding up the rate of data transfer may in some cases increase the blocking probability and hence degrade overall server performance. We use a queuing model to obtain an analytical formulation of the server’s performance. This enables us to investigate the effects of different configurations of the storage hierarchy and different data access patterns; it also provides a framework to determine the optimal configuration of storage hierarchies. The results of a simulation-based performance evaluation are also presented. Key Words : Modeling, Analysis, Blocking, Hierarchical Storage, Multimedia, Video-On-Demand

1

1 Introduction 1.1 Motivation Tertiary Storage Tape Library

Optical Jukebox

Network

Disk Array Secondary Storage

Main Memory Primary Storage

Figure 1: Hierarchical Storage System Recent advances in computing and communication technologies have made it technically feasible and economically viable to provide on-line access to a variety of information services over high speed networks. Particularly, convergence of various technological factors, namely in the network access and in the video coding and transmission, have recently brought a rapid growth of interest in on-line access to multimedia services. The set of multimedia information which are available to end users is stored in the compressed digitized form at the server. Wide variety of information available at the server is a valuable feature which makes on-line access of multimedia service more attractive than conventional data access service or entertainment provision service such as movie rental. To support a wide variety of selections to end users, the server must store thousands of multimedia files and support hundreds of concurrent streams. The problem of large-scale provision of services has several implications for the design of a storage architecture. Voluminous nature of a multimedia file is one of the primary reasons which makes the design of the server non trivial. With MPEG-2 compression technique, which requires a 4-6 Mega Bit/sec playback bandwidth, a movie file of 110 min length requires more than 3 G bytes of storage space. Storing thousands of files of this size on a disk subsystem requires huge amounts of disk space, not only from the financial point of view but also from the technical point of view. According to user surveys[1], file-access frequency is strictly biased in favor of a small number of popular titles, while the rest of the files are rarely accessed 2

in commercial video rental. This characteristic of the user-access pattern enables the storage architecture designer to exploit the hierarchical storage structure in managing a large volume of information. Hierarchical storage consists of secondary storage, i.e. a disk subsystem and tertiary storage, i.e. is a tape library or optical juke box. Since it is difficult to synchronize the operation of the tape drive to a given data transfer rate, we presume that data file needs to be loaded onto secondary storage to be sent to the end user, as staging disk. A number of parameters govern the performance of the hierarchical storage system, e.g.the number of tape drives in tape library, storage capacity of the disk subsystem, aggregate user load, and user access pattern, etc. Unbalance between the storage hierarchies implies in waste of the resources without a commensurate increase in server performance. The efficiency of hierarchical storage architecture is maximized when the capacity of each hierarchy is well balanced and the behavior of each storage hierarchy is well harmonized. Thus, in configuring hierarchical storage, these system parameters have to be carefully taken into account. In this article, we focus our effort on developing a model for hierarchical storage and investigate the impact of various system parameters to determine the optimal configuration. The model enables us to quantify the efficiency of the storage architecture and is used as a basis for determining the optimal configuration of the storage architecture. Fig. 1 illustrates the architecture of a hierarchical storage-based VOD server. The VOD server in Fig. 1 consists of two levels of storage hierarchies, namely tertiary storage such as a tape library and optical disks, and secondary storage such as a disk subsystem.

1.2 Relation to previous work In recent years there have been a number of studies discussing the issues in multimedia file system design[6, 21, 16]. This literature formulates the timing constraints in the periodic tasks of continous media playback and provide disk scheduling algorithms to guarantee the specified bandwidth for continuous media playback. The issues dealt with in this literature are essential in computerized continuous media support. A disk subsystem is used as secondary storage. To cope with excessive playback bandwidth for continuous media retrieval, disk interleaving, (also known the as disk striping) technique is adopted. A number of ideas are proposed to efficiently place the data over the set of disks[3, 10, 19, 24, 20, 15]. The method used to place the file across a set of disks plays an important rule in effectively exploiting the bandwidth resources of the secondary storage. Little, et al[19] proposed an algorithm on how to place the data on an array of disks to achieve load balancing. Wan et al[24] and Dan et al[10] considered the space constraints as well as the bandwidth constraints of disk arrays, and developed a placement strategy for a set of files of different popularity. Chen, et al[7] devised an idea of data placement that allows users to control the playback in a disk-array based video server. 3

There have been a number of proposals for cost models of the memory hierarchy configuration. Welch[25] wrote one of the earliest articles about performing an analytical study of speed-cost tradeoffs in memory hierarchy design. The study developed an optimization criterion which minimizes memory access time, under a cost constraint, for a hierarchy with given memory sizes and access probabilities. Kienzle, et al[17] has investigated the characteristics of the storage hierarchies when the staging policy is used to managing the files in secondary storage. They focused on the latency of the tertiary and secondary storage. Tetzlaff et al[23] provided guidelines for server design, especially for tertiary storage. They discussed the scaling and cost issues in the server in order to provide information on how to balance server costs against communications cost. Doganata et al[13] investigated cost modeling issues in a VOD server with hierarchical storage. They studied the cost/performance relationship in a large scale VOD server. Both of these studies[13, 17] exploit the hierarchical storage architecture to make a VOD server more cost-effective. Chervenak[8] investigated the effectiveness of tertiary storage in various application environments. Loading a file from the tertiary storage to secondary storage introduces non-trivial amounts of latency due to the mechanical movement of a robot arm in tape loading. Ghandeharizadeh et al.[14] provide a mechanism to minimize the impact of this latency by maintaining a certain fraction of a file on the disk subsystem. In our previous work[29], we have investigated the capacity of the storage hierarchy and blocking of the user requests. We devised a technique of ensuring the duration of a file on the secondary storage to handle multiple requests for it. Distributed extension of hierarchical storage architecture[28, 30, 31, 12, 4, 5, 22] is also one of the emerging technology to maintain excessively large amount of data. In their architectural models, there is a centralized video server which consists of a two-stage hierarchy and a number of relatively small storage systems which are geographically placed in various locations within metropolitan area. Our previous work[28, 30, 31] developed a cost model to quantify the aggregate resouce consumption to service a set of requests and developed an algorithm to strategically replicate the files on the small disk storages based on the given file request information. The objective is to avoid the repeated delivery of the same file to geographically close area and thus to minimize the network resource consumption. Bianchi, et al[4] investigate various cache management policies at the local switch level, which is dedicated to store the heavily requested file. Giovanni, et al[12] investigates the communication link allocation between the central video server and local storages. Sienknecht[22] explores the implication of distributed data on the design of data-storage management systems. Brubeck, et al[5] developed a storage management algorithms stored in the hierarchical storage system. With a finite amount of resources such as tape drives and disks, it is unavoidable that a certain amount of user requests cannot be serviced immediately. The requests can be put into queue when it cannot be serviced

4

immediately. Especially in commercial movie-on-demand server, how to service the requests waiting in the queue is an important concern to minimize the customer loss. Dan, et al[11] and Tsiolis et al[2] have compared the various policies for queue management from the aspect of a number of different metrics such as fairness, throughput, etc.

1.3 Contributions One of the primary goals in designing a VOD server is to maximize its throughput with the given amount of resources. Especially for a commercial product, this is directly relevant to the profitability of the service. In this paper we model the service mechanism of the hierarchical storage and investigate the performance behavior of the hierarchical storage architecture under various combinations of system parameters. Due to fixed number of tape drives and fixed capacity of the staging disks, a VOD server cannot avoid losing some user requests, especially when it is overloaded. We use stochastic modeling to analyze the given hierarchical storage architecture. Finding the steady state probability for performance of the server is computationally intractable for the generalized operating environment. However, by scaling down the system, the analytical model provided in the work enables us to understand the performance behavior of the hierarchical storage architecture under various conditions. We use two metrics to measure the effectiveness of the storage architecture, namely, Expected Service Time and Blocking Probability. Expected Service Time is the time interval between the arrival of the user request and completion of the service for the request. Expected Service Time is a primary importance from the aspect of the individual user. We define blocking probability as the probability that an incoming request is blocked at the VOD server, i.e. cannot be serviced immediately. Blocking probability is used as the criterion to determine the overall performance of the system. Expected Service Time and Blocking Probability is analyzed from the aspect of relative transfer speed, capacity of the storage hierarchy, and user access pattern. Our framework can also be used in determining the settings of other parameters in configuring the storage hierarchy. Our analysis reveals the fact that increasing the data transfer rate from the staging disks may sometimes degrade the overall performance of the server. To date, we are not aware of any studies directly related to the specific problems addressed in this work - configuration analysis in hierarchical storage based VOD server. The remainder of the paper is organized as follows: In section 2, we present an overview of the system modeling and analysis. Sections 3 and 4 provide the model for the performance metric and analyze the effect of the system parameters on performance. In section 5, we provide detailed analytical modeling of the storage hierarchies. In section 6, we discuss the results of a simulation-based evaluation of the policies proposed in this study. Section 7 concludes the paper, and the appendices provide the technical details.

5

2 System Modeling Overview 2.1 Service Mechanism Secondary to End User :Tertiary to Secondary N T Tape Drives

R1

R1

R2 Tape Library

R2 R3

R1

R1 N D Disks (# of Files)

Figure 2: Service Mechanism

Fig. 2 illustrates the hierarchical storage architecture and its service mechanism. When requests arrive at the server, some of the request cannot be service immediately due to the limited capacity of system resources. All files reside permanently in the tertiary storage, which can be in the form of tape cartridges or an optical disk. We consider only the tape library as tertiary storage since tape library and optical juke box share the primary operational characteristics. A file is loaded from the tape library to the disk with an on-demand basis. When the user request arrives at the server, a mechanical device loads the respective tape cartridge into the tape drive. Then, the requested file is loaded from the tertiary storage into the secondary storage, which is a disk subsystem and then is sent to the user. We use T

! D and D ! U to denote the two transfer

operations, respectively. When the contents of the requested file on the disk are completely sent to the user, the disk space occupied by the file is released. There is a possibility of servicing the requested file from the tertiary storage directly to the user. However, in the tape drive different from the random access device such as disk, accessing blocks which are not consecutively placed, introduces significant head repositioning overhead. Thus, it is not possible to support multiple streams for the same file which are interleaved with a certain time intervals. When a real-time playback requirement is imposed, the data rate at which the server sends out the data block must be synchronized with the playback rate. Otherwise, the synchronization needs to be performed at the end user, which requires an additional amount of primary memory or disk space. A non-trivial amount of operational overhead is introduced to synchronize the tape drive operation with a

6

certain data rate which is different from tape transfer rate. The overhead is originated by the interruption and resumption of read operation in the tape drive. Due to these reason, we assume that the file is required to be loaded onto the secondary storage to be sent to the end user. For a frequently accessed video title, it is likely that the new request for the same file will arrive while the file is being serviced to the end user. The tape Library contains hundreds of tape cartridges and it is not reasonable to have as many tape drives as tape cartridges in the tape library. The storage capacity of the tape library is governed by the number of tape cartridges it can hold. Table 1 lists the specification of some Drive

Max Number of Tape Drives

Max. Aggregate Transfer Rate

Capacity

Ampex DST 810

4

60 MByte/sec

6.4 Tera Byte

Exabyte Mammoth

4

24 MByte/sec

3.2 Tera Byte

ACL2640

9

27 MByte/sec

5.2 Tera Bytes

Table 1: Tape Libraries

tape library systems commercially available. The tape loading time for a file of 3.3 GB is as fast as 6 sec for the current state of the art technology. As shown in Table 1, a high performance tape library can hold upto 6.4 tera bytes of data, which corresponds to more than one thousand 110-minute MPEG-2[26] compressed video files1 . After the file is loaded from the tape drive to secondary storage, it is sent to the user with a certain bandwidth D byte/sec. D can be specified by the end user or by the server, depending on the nature of the application. The server allocates D byte/sec bandwidth from the disk subsystem to service the request. There are three states for a file with respect to its operational status, Idle, On Tape Drive, and On Disk. On Tape Drive is the situation where the requested file is being loaded to the disk subsystem from the tape drive. When the incoming request observes that the requested file is On Tape Drive, the request is admitted, and it waits until the file is loaded onto the disk. Then, the request is serviced from the disk. When the incoming request observes that the requested file is On Disk, the service starts immediately. We assume that staging disks are space-bounded rather than bandwidth bounded[10].

2.2 User Characteristics In this article, we focus our interest on investigating the behavior of the server when users are impatient. In case there are no available resources in the system to accommodate a new file upon the arrival of the 1

Assuming 4 - 6 Mbps bandwidth requirement for MPEG-2, a 110 minutes video file is 3.3 Giga Bytes on the average.

7

user request, the request immediately leaves the system. This situation is termed blocking. Especially in providing On-Demand service, the server cannot expect the incoming request to wait until the request get admitted into the system, due to the time criticality of the request or impatience of the user. The user access pattern over the available files is determined by the preference of the user community. There are two attributes that determine the characteristics of a video file for the purpose of this work, namely access frequency and file size. Access frequency represents the relative popularity of a video file. Without loss of generality, we assume that video files are numbered by decreasing order of access frequency, i.e.

i  j , P i  Pj .

The size of a video file determines its service time on each storage hierarchy of the

i be si bytes, tape drive speed and disk speed be T Bytes/sec and D Bytes/sec, respectively. Then, it takes sTi sec. to load mi from tape drive to staging disks, and sDi sec. to transfer mi from staging disks onto the network. A video file on the staging disks is said to be active server. Let the size of the video file

when it is being used to service a customer request. The access pattern can be skewed towards a small set of hot files, or evenly distributed over the set of available video files depending on its application. There are several functions that can be used to approximate the access pattern. Examples are zipf distribution[9] and

normalized geometric distribution[13]. Let Pk be the probability that the incoming request is for the k th video file. Let N be the total number of video files available. For zipf distribution, Pk is defined as follows:

Pk = k(1C? ) where C = Pi=N1 i=1 i

1

? )

(1

(1)

For normalized geometric distribution, Pk is defined as follows:

Pk = (1(1?? ) N ) k

(2)

is a coefficient that determines the skewness of the access pattern. As described in [9], zipf distribution with = 0:271 closely fits commercial video rental patterns. The user access pattern has

In Eq.s 1 and 2,

a significant effect on the performance of the server and thus the study on user access patterns needs to be carefully performed to optimally configure the the storage hierarchy.

2.3 Parametric Description of the Server

We introduce a number of variables to model the server. There are a total of M different files available to the user. We assume that the user community is sufficient large such that the user requests arrive at the server with the Poisson process. The request can be for any of the available files. The aggregate request arrival rate 8

 pi i M

arrival process of video file request : Poisson( ) : movies/min Popularity of video file i.

arrival rate of the request for video file i. i

= Pi .

total number of video files in the tape library, i.e. number of video files available to user

NT LT T LD D ND E (Wi ) ri

Number of Tape Drives in the system Latency time at the tape drives, i.e. Initial Start Up Time Tape Drive service rate : number of video files per min file size , i.e.time to transfer a video file from the staging disks

D

Rate at which the staging disks transfer the video file. : number of files per min Capacity of the staging disks subsystem in number of movies. Expected Duration of video file i on the staging disks Request for video file i Table 2: Notation Used in this Paper

is . pi denotes the probability that incoming request is for file i and it reflects the relative popularity of the file. pi is the request arrival rate for file i. The request arrival for file i follows the Poisson process with rate

pi given that the aggregate request arrival process is Poisson with . The request-handling capacity of the tape library is regulated by the number of tape drives and the data transfer rate of the tape drive. Especially, the number of tape drives in the tape library governs the number of request which the tape library can handle concurrently at an arbitrary time instance.

NT

and T denote the number of tape drives in the tape library

and the speed of the tape drive, respectively. The capacity of secondary storage is represented by the number of files it can hold, namely ND . D denotes the data rate at which the file is sent to the user from secondary

storage. Given T and D and the file size, we can obtain the tape drive service time and the disk service time for a file. Table 2 lists the parameters that we use to characterize the VOD server.

2.4 Queueing Model of Hierarchical Storage Architecture Our objective in this article is to model the hierarchical storage architecture and to analyze its performance under various combinations of system parameters. We propose two metrics to measure the performance of the hierarchical storage, Expected Service Time and Blocking Probability. When a request arrives at the server, a certain amount of data transfer time is required to send the file to end-user. Expected Service Time is the time interval between the arrival of the request and the completion of the service request. This metric bears an important implication, especially when the end user can process the file only after the entire file is 9

received to user’s end. From the point of view of the VOD server as a service provider, the number of service requests it can support determines the throughput of the server, which can be interpreted as a measure of its efficiency. A request made by an impatient customer leaves the system immediately when it observes that the server is congested and thus cannot accommodate a new request. This is called request blocking. It is not possible to avoid blocking with a finite amount of resources in each storage hierarchy. As a means to maximize server throughput, we investigate the effect of the storage configuration on the probability that the incoming request is blocked. We term the probability that the incoming request is blocked the blocking probability, P (Block ). To analyze the hierarchical storage architecture with the given metrics, we first interpret the storage architecture given in Fig. 2 in terms of the queuing model. Fig. 3 illustrates a queuing interpretation of the hierarchical storage architecture. There are arrays of

NT servers, and ND servers and two arrays of servers

are cascaded. A server in the first stage and second stage corresponds to the tape drive and a disk space for a file, respectively. We described the three states of a file in the tape library, Idle, On Tape Drive and On Disk. From the aspect of the queuing model, each state implies the server stage where the file is being processed. It is possible to compute the average service time at the server of each stage. Average service time at the first and second stage correspond to the time needed to load the file from tape drive to secondary storage, and the expected duration of the file on the staging disk, respectively. VOD SERVER Staging Disks SD 1

Tape Drives Blocked

λ

SD 2

TD 1

P(E)

TD 2

TD n

SD m

P(Tape Drive)

P(Disk)

Figure 3: Queuing Representation of Hierarchical Storage Architecture

10

3 Analysis of Expected Service Time Expected Service Time is an interval between the request arrival time and the time at which the requested file has been completely sent to the user. We use the expected service time as one of the performance metrics of the hierarchical storage architecture. In this section, we provide the formulation for expected service time in hierarchical storage architecture and we investigate the effect of the various system parameters on the expected service time.

3.1 Interpretation from Open System’s Perspective

Tape Drives

Disks

λ

LT

LD

Figure 4: Interpretation with Open System’s Perspective

Expected Service Time is a metric from the point of view of the individual user. There are a sufficiently large number of users, and each user request arrives at the server and leaves the system on the completion of the service. To model the expected service time, we interpret the hierarchical storage architecture from the open system’s perspective, as in Fig. 4. Let ri be the request for file i. There are three states for the file in the server, namely On Tape Drive, On Disk and Idle. The file repeats a cyclic transition between three states. Let P (Di ); P (Ti ) and P (Ei ) denote the respective probability for each state for file i. When a request ri is admitted, it observes the requested file in one of the three states. On the arrival of ri , the server examines the status of the requested file to see if

the requested video file is on the disks. If so, the ri gets service directly from the disk.

LD is a time to send

the file from the secondary storage to the end user. It is possible that ri observes file i in the On Tape Drive

state upon its arrival. ri is delayed until the file is loaded in the secondary storage and gets serviced from the disk. When ri observes the file in the On Tape Drive state, the expected waiting time until the file is loaded

on the disk is L2T due to PASTA property[27]. A detailed derivation of this step is provided in Appendix B. 11

Thus, the service time for ri with On Tape Drive is L2T the service time for ri is LT

+ LD .

+ LD . When ri observes the file i in the Idle state,

Using P (Di ); P (Ti ) and P (Ei ) with the service time formulation, we can obtain the expected service time

for ri . Let Si be the total service time for ri . The blocked requests are excluded from computing expected

E (Si admitted) P (ri Admitted) . A request can be admitted when system (1) File is on a tape drive, (2) File is on a disk , or (3) File needs to be loaded and the system is not full. Let P (Di ), P (Ti ), P (Ei ) be the probability of three states, respectively. E (Si ) can be expressed as follows:

service time. Thus,

E (Si ) =

LD P (Di ) + ( L2T + LD )P (Ti ) + (LD + LT )P (Ei ) E (Si ) = P (Ei ) + P (Di ) + P (Ti ) Thus, the expected service time E (S ) can be

(3)

PM p E (S ). i i=1 i

3.2 Effect of System Parameter on the Expected Service Time In the given service model, the service time Si consists of two service stages, tape drive service time and disk service time. The time spent in each stage depends on the state of the requested file upon the arrival of the request. Consequently, the probability for each state,

P (Di ); P (Ti ); P (Ei ) governs the expected

service time for ri . The probability for each state is determined by relative length of expected time interval in each state. We analyze the effect of various combinations of system parameters on the expected service time for a request. Concerning the fact the file should be sent to the end user from secondary storage,

LD

is an important factor which determines the expected service time for a request. In hierarchical storage architecture, the requested file is loaded from the tape drive to the disk and then sent to the end user. The role of the secondary storage is to encourage the file sharing and to avoid frequent loading from the tape drive to disk once the file is in secondary storage. As the disk service time decreases, there is less chance that the incoming ri observes the file i in the On Disk state upon its arrival. Due to this characteristics of the service mechanism, it may be beneficial to increase the disk service time in favor of expected service time

E (Si ). We analyze the effect of the disk service time more precisely. The focus is to visualize the effect of the disk service time on

E (Si).

We consider the system with i.e.

M = 1; NT = 1; ND = 12.

The principal

objective is to model the generic behavior of the hierarchical storage system with the basic configuration and to observe the effect of changing disk service time on the expected service time. In the given system, there are three system states, i.e., Empty, On Tape Drive and On Disk3 . We have provided the formula for 2 3

It can be said that modeling the tape drive is not necessary in this system since there is only one available video file. There is no blocking in this system since there is only one video file available.

12

obtaining the expected service time of the request for file i. For the sake of simplicity, we use denote the expected service instead of E (Si ).

E (S ) to

E (S ) and LD , we formulate E (S ) as a function of LT ; LD and , where the inter-arrival time of the requests follows the exponential distribution with rate . In Eq. 3, we interpret P (E ); P (D ) and P (T ) as a function of LT ; LD and . The file is in one of the states Empty, On To visualize the relationship between

Tape Drive, or On Disk, and it repeats a cyclic transition among these states. The expected duration of each state determines the probability that the given file is in its respective state. When a request arrives in the

empty state, it takes LT time to load the file onto the staging disk. Hence, the expected duration of the On Tape state is LT . Due to the memoryless property of the exponential distribution, the expected time until the

next arrival from any time point is 1 , and thus the expected length of the Idle state is 1 . The file resides on

the disk as long as there is on going service from the file. Careful attention needs to be paid to obtain the the expected time of the file’s On Disk state. The file resides at secondary storage as long as there is ongoing

service. Let W be the random variable which represents the time interval of a file in the On Disk state. The

E (W ) of a file in secondary storage is a function of request arrival rate  and the disk service time LD . Let N , and E (T ) be the number of consecutive requests which are serviced directly from

expected duration

the disk until the file is unloaded from the disk and the inter arrival time between these requests. Then, the

E (W ) corresponds to E (N )  E (T ) + LD . E (N ) and E (T ) is as follows:

E (N ) = eLD ? 1 (4) ? L D E (T ) = 1 ? 1L?D ee?LD (5) E (W ) corresponds to E (N )E (T ) + 1 . With E (N ) and E (T ) in Eq. 4 and Eq. 5, we obtain the formula for expected duration E (W ) of the file as in Eq. 6. LD E (W ) = e  ? 1 (6) A detailed derivation of Eq. 4, Eq. 5, and Eq. 6 is provided in Appendix A. Cumulative distribution of file duration, P (W

< x) is as in Eq. 7. Detailed derivation of Eq. 7 is in Appendix C. F (x) = 1 ? e?(x?D)e?D + e?D e?(x?D)e?D

(7)

P (E ); P (T ) and P (D) is a relative fraction of its respective length over the entire cycle of Idle, On Tape L 1 T , and Le +De? , Drive and On Disk. Thus, P (E ), P (T ), and P (D ) corresponds to L +1eLD , L L T T +eLD T LD respectively. By applying the probabilities to Eq. 3, we obtain the formula for expected service time which is a function of LT ; LD and .

 2  E (S ) = L +1 eLD L2 T + LT + LD T 13

(8)

160 Arrival Rate = 0.5, Tape Transfer Rate = 12 MBps Arrival Rate = 0.5, Tape Transfer Rate = 24 MBps Arrival Rate = 0.5, Tape Transfer Rate = 60 MBps Arrival Rate = 0.1, Tape Transfer Rate = 12 MBps Arrival Rate = 0.1, Tape Transfer Rate = 24 MBps Arrival Rate = 0.1, Tape Transfer Rate = 60 MBps

140

120

100

80

60

40

20

0 0

10

20

30

40

50

60

70

80

90

100

Figure 5: Disk Service Time vs. Expected Service Time

With the formula provided in Eq. 8, we investigate the effect of the disk service time over the expected service time of the file request under a different combination of tape drive service time LT and request arrival

rate . Fig. 5 plots

E (S ) in Eq. 8 as a function of disk service time LD .

The arrival Rate is

0:1/sec and

0.5/sec. We consider three different tape drives whose transfer speeds are 12 M Bytes/sec, 24 M Bytes/sec, and 60 M Bytes/sec, respectively. We consider a file of 3.3 Giga Byte in size. In all cases, the expected service time asymptotically tends to disk service time. For each of three tape drives, the LT corresponds to 275 sec, 137 sec, and 55 sec. Let us first examine the case with a heavy load,i.e.

 is 0.5.

When disk service time is short, the time for

T ! D constitutes the major portion of the entire service time. Because file resides on the disk for a short

period of time, there is less chance that the incoming request observes the file in the On Disk state. Most

LD is very L T short, e.g. LD = 1, expected service time is close to 2 . As disk service time increases, there is a greater of the incoming requests find the file in either the Idle or in the On Tape Drive states. When

chance the incoming request observes that the file is in On Disk state. Subsequently there is greater chance that the request gets the service from the staging disk without waiting for a file to be loaded on the staging disk. Thus configuring the system with the increased disk service time actually decreases a expected service time. In the system with the slower tape drive, i.e. larger

LT , this reduction is more significant.

However,

as the disk service time becomes larger beyond a certain threshold value, the disk service time becomes the 14

dominant factor in the entire service time and thus the expected service time increases. As can be found in

Fig. 5, the expected service time asymptotically tends to the disk service time. Let Lopt D (; LT ) be the disk service time which makes E (S ) minimum. From the aspect of expected service time, the performance of the hierarchical storage architecture is maximized when disk subsystem is properly configured to achieve

opt service time of Lopt D (; LT ). As can be found in Fig. 5, LD (; LT ) increases with LT . Under a relatively light load, i.e.

 = 0.1, a change of expected service time shows the different behavior.

Using the fastest tape drive with a 60 Mega Bytes/sec data transfer rate, there is not minimal point of the expected service time.

E (S ) monotonically increases with LD .

When the arrival rate is less frequent and

the tape drive speed is relatively fast, there is a higher probability that the incoming request will observe the file in the Idle state. Thus, an increase of the disk service time always increases the expected service time. With the slower tape drive, using the staging disk can be beneficial in decreasing the expected service time. We can analytically find the condition where an increase of

differentiate Eq. 8 with respect to LD .

LD can reduce the expected service time.

@ E (S ) = e2LD + eLD  LT ? L2T  + L2 T @LD 2  2

We can find the value of LD which makes @L@D E (S ) become 0.

LD = ? 1 log

?



2 LT ? (L2T )



  2 LT

r

LT 2

+ 1

We

(9)

 LT

3 2 ?



(10) 2 By Examining Eq. 10, we can find that when LD < 6, E (S ) monotonically increase with LD . Thus, when LD > 6, the expected service time can decrease with the increase in the disk service time. A detailed derivation of the differential equation in Eq. 9 and Eq. 10 is provided in Appendix B.

4 Analysis of Congestion and Request Blocking 4.1 Server Congestion and Blocking Probability Along with the expected service time, probability that the incoming request is blocked, P (Block ), is another important metric to measure the performance of the server. When the number of tape drives and the capacity of the disk subsystem is not large enough to accommodate all files, a certain request will be blocked due to server congestion. Considering that the tape library stores hundreds of tape cartridges, it is of no interest to consider the data server with as many tape drives as the number of tape cartridges. In this section, we would like to analyze server congestion and request blocking. It is worth noting that the probability for server 15

Disks Tape Drives

λ

e

λ LD

-1

λ

LT

Figure 6: Interpretation with Closed System’s Perspective

congestion

P (Congestion) is different from the probability of request blocking P (Block). P (Block) is

the probability that the incoming request is blocked due to system congestion. The server is said to be congested when either all tape drives are full or all disk space is full. We define two states of the hierarchical storage architecture, namely Tape Drives Full and Staging Disks Full. The condition Tape Drives Full is true when all the tape drives have tape cartridges in them and are transferring video files. The condition Staging Disks Full is true when there is no space left on the staging disks for a new video file. A tape drive is allowed to start loading only when there is sufficient available space to store an entire file on the staging disks. Thus, when there is not sufficient space left on the disk subsystem, a tape drive can not start file transfer. Under the policy that a tape drive is allowed to start loading optimistically expecting more space to be available, starvation of the request can arise. The server is said to be congested when the server is in either of the two states, i.e. either Tape Drives Full or Disks Full. Thus, P (Congestion) is equivalent

to P (Tape

Drives Full [ Disks Full).

4.2 System Modeling with Closed System’s Perspective In computing server congestion and request blocking probability, we interpret the given system as a closed system with a finite number of customers. Fig. 6 illustrates the system interpretation with closed system’s perspective. With the interpretation of the system from the open system’s perspective in section 3, the customer in the queueing model was the end user. In modeling server congestion probability and blocking probability, the hierarchical storage architecture needs to be viewed from a different perspective. A individual file is viewed as a customer in a given interpretation of the system, and thus there are

M customers in

the system. A file repeats the cyclic transition between the states Idle, On Tape Drive, and On Disk. When a

16

file i is Idle, the arrival rate of file i is i . When a file i is in either On Tape Drive or On Disk, the arrival rate

of file i is 0. In a closed system, the aggregate request arrival rate depends on the number of busy customers. Server congestion probability and blocking probability is a function of disk service time, tape service time, and request arrival rate. When there is more than one file, the user access pattern for a file also affects the server congestion and blocking probability. Through the relatively small scale configuration, we can precisely measure the performance behavior of the hierarchical storage architecture. Let us consider the system with one tape drive, one disk and m files, i.e.

NT = 1; ND = 1 and M = m. The aggregate request arrival rate is  and the request arrival rate for each file is i = pi . pi is the relative popularity of file i. We define qi as the probability that file i is in the system, i.e. either on tape drive or on disk. In this configuration, the maximum number of files in the tape drives or the disk is limited by one. Thus, it is possible to view the tape drive and disk as one abstract server. The customer in this view is a file, not an individual request for a file. Completion of the service implies that the file has released the disk space and tape drive after the entire contents of a file has been sent to the last end user. The expected service time for a file corresponds to LT + E (Wi ). Defining mean service rate as the inverse of mean service time, mean service rate for file i i corresponds to LT +E1 (Wi ) . Let qi be the probability that file i is in the server and q0 be the probability that the server is idle. With the m m given modeling, we build a set of equations as follows: m i=0 qi = 1; q0 i=1 i = i=1 i qi ; i q0 = i qi.

P

P

P

Solving these equations, we obtain qi ’s as follows.

q0 = 1 + Pm ( L1 + ei LD ? 1) (11) i=1 i T  i LD qi = 1 + PmiLT(+Le + e?i L1D ? 1) ; i = 1; : : : ; m (12) i=1 i T P q . When file i is in the system, the request for the The server congestion probability corresponds to M i=1 i file other than file i is blocked. Thus, we can formulate the blocking probability as follows. m i LD X P (Block) = (1 ? pi ) 1 + PmiLT(+Le + e?i L1D ? 1) (13) i=1 i T i=1 Fig. 7 and Fig. 8 illustrates the blocking probability in Eq. 13 under various conditions. In Fig. 7 and Fig. 8, the aggregate request arrival rate is 0.5/sec and 0.05/sec, respectively. The

X and Y

axis denote the disk

service time and request blocking probability, respectively. In Fig. 7, the aggregate request arrival rate is 0.5 per sec. We consider tape drives of three different speeds, 12 MBps, 24 MBps, and 60 MBps. The user access pattern on the available files also affects the throughput of the server. In our work, zipf distribution is used to model the user access pattern. Fig. 7 illustrates the blocking probability under change of disk service

time. It plots the graphs with three different user access pattern, i.e. = 0:1; 0:5 and 1:0. Both of the graphs illustrates the effect of the access pattern over blocking probability. When the user access pattern is evenly 17

1

0.98

0.96

P(Block)

0.94 lambda = 0.5, Tape Speed = 60 MBps, alpha = 1.0 lambda = 0.5, Tape Speed = 24 MBps, alpha = 1.0 lambda = 0.5, Tape Speed = 12 MBps, alpha = 1.0 lambda = 0.5, Tape Speed = 60 MBps, alpha = 0.1 lambda = 0.5, Tape Speed = 24 MBps, alpha = 0.1 lambda = 0.5, Tape Speed = 12 MBps, alpha = 0.1 lambda = 0.5, Tape Speed = 60 MBps, alpha = 0.5 lambda = 0.5, Tape Speed = 24 MBps, alpha = 0.5 lambda = 0.5, Tape Speed = 12 MBps, alpha = 0.5

0.92

0.9

0.88

0.86

0.84 0

50

100

150

200 250 300 Disk Service Time (sec)

350

400

450

500

Figure 7: Disk Service Time vs. P(Block) with heavy load

distributed, i.e.

= 1:0, the blocking probability increases with the increase in the disk service time.

In

the case of a biased user access pattern, blocking probability actually decreases when disk service time is greater than a certain threshold value. As disk service time increases, it is more likely that an incoming request will observe that the disk is occupied with a file. In an uniform access pattern, an incoming request is blocked with equal probability. In the case of an extremely skewed access pattern, the more popular file tends to stays longer on the disk. Thus a request for a popular file has a higher chance of getting admitted in the system while a request for a less popular file has less chance of getting admitted. Due to the skewness of the access pattern, the number of requests for the popular file constitutes the majority of all requests. This phenomenon results in the decrease in the blocking probability with an increase in the disk service time. In the system with a less frequent arrival rate, the benefit of increasing disk service time becomes less significant. The graph tends to a certain asymptotic value as disk service time increases. This value can also be obtained from Eq. 13. Fig. 9 illustrates the blocking probability from the aspect of the arrival rate. We consider 60 Mega Bytes/sec of tape drive data rate and = 0:1. When disk service time is short, the blocking probability is proportional

to the arrival rate. As in Eq. 6, the expected duration of the staging disk increases exponentially with . Thus, with a larger value of , the blocking probability decreases faster with respect due to increase in disk service time. 18

1

0.95

P(Block)

0.9

0.85 lambda = 0.05, Tape Speed = 60 MBps, alpha = 1.0 lambda = 0.05, Tape Speed = 24 MBps, alpha = 1.0 lambda = 0.05, Tape Speed = 12 MBps, alpha = 1.0 lambda = 0.05, Tape Speed = 60 MBps, alpha = 0.1 lambda = 0.05, Tape Speed = 24 MBps, alpha = 0.1 lambda = 0.05, Tape Speed = 12 MBps, alpha = 0.1 lambda = 0.05, Tape Speed = 60 MBps, alpha = 0.5 lambda = 0.05, Tape Speed = 24 MBps, alpha = 0.5 lambda = 0.05, Tape Speed = 12 MBps, alpha = 0.5

0.8

0.75

0.7 0

100

200

300

400 500 600 Disk Service Time (sec)

700

800

900

1000

Figure 8: Disk Service Time vs. P(Block) with light load

0.95 lambda = 0.5 lambda = 0.1 lambda = 0.05 0.9

P(Block)

0.85

0.8

0.75

0.7 0

100

200

300

400 500 600 Disk Service Time (sec)

700

Figure 9: Tape Service Time = 55 sec, = 0.1

19

800

900

1000

Until now, we viewed each file as a customer of the system. This is to obtain the probability that each file is in the system. Let us find the expected service time for the user request in the given system. We provided the formula for the expected service time in Eq. 3. To make Eq. 3 complete, we need to find

P (Ti ) and

P (Di ). When file i is in the system, it resides at a tape drive for LT time and spends the rest of its system residence time in the disk subsystem. Thus we can obtain P (Ti ) and P (Di ) as follows. P (Ti ) = 1 + Pm ( Li LT+ ei LD ? 1) (14) i=1 i T i LD P (Di ) = 1 + Pm (e L ?+ 1ei LD ? 1) (15) i=1 i T By substituting Eq. 11, Eq. 14, and Eq. 15 into Eq. 3, the expected service time for ri can be found. 5 Generalized System Model Our interest is to obtain request blocking probability and expected service time as a performance metric for hierarchical storage architecture. Mathematical analysis of these two performance metrics requires solving the comprehensive formulation for all distinguishable states of the hierarchical storage. It is computationally intractable to obtain the steady state probability for the general model due to the number of states of the hierarchical storage. However, it is of importance to establish the formulation of the hierarchical storage. In this section, we provide the analytical formulation for the request blocking and provide the method to reduce the number of states in the state space.

5.1 Markov Modeling The state of the hierarchical storage server is represented by the set of states of individual video files. We introduce the primitive notations used in this section. Let us denote

 as the state space of the server and

 as state in .  is a vector whose ith element denotes the state of a file i. I , T , and D is set of files in the Idle, On Tape Drive, and On Disk state, respectively in  . Given the aggregate request arrival rate , the expected duration of a file i on the Idle and On Disk state depends on pi . The expected duration of a file on the On Tape Drive state is LT , regardless of its popularity. The finite capacity of the hierarchical storage restricts state space .  in state space  satisfies Eq. 16, Eq. 17, and Eq. 18.

jT j  NT jD j  ND jD j + jT j  ND 20

(16) (17) (18)

We define the service rate for each file state as the inverse of its respective expected duration. Given that the each file has distinct access probability, different combinations of video files on the tape drives and staging disks will place the server in different states. The state changes with the arrival of the new request or with the completion of the service at a certain stage. Given a server state  , we represent the state transition of the file i.

(: : : ; I ; : : : )

i ?! LT ?!

(: : : ; T ; : : : )

(19)

(: : : ; D; : : : )

(20)

(: : : ; D; : : : ) ?????! (: : : ; I ; : : : )

(21)

(: : : ; T ; : : : )

1

i ei LD ?1

 consists of the states 0 ; 1 ; : : : . With Eq. 19, Eq. 20, and Eq. 21, we can build a transition probability matrix P = [pij ] between every server state i and j . Further, if we define vector of steady state probability for each state as  = [0 ; 1 ; 2 ; : : : ], we obtain the P probability for each server state by solving the equation  =  P and i = 1[18].

Without loss of generality, let us assume that

The state i is said to be a congestion state if i satisfies the equality of one of the congestion condition in Eq. 16, Eq. 17, and Eq. 18. Let C denote a set of congestion states. Then, P (Congestion) can be formulated as follows.

P (Congestion) =

X i2C

i

(22)

When the server is in congestion, an incoming request is blocked if the requested file is Idle upon its arrival. Finally, P (Block ) is formulated as in Eq. 23.

P (Block) =

0 1 X@ X A i pj

i 2C

(23)

j 2iI

5.2 Reduction of State Space

 grows exponentially with the in NT , ND , and M . Given that each file has a different access probability, we compute the number of distinguishable states in . Let i and j be the number The size of the state space,

of files in the On Tape Drive state and in the On Disk, respectively. Upto NT files can reside simultaneously

? 

on the tape drives, and there exist Mi combinations for

T .

The number of files on disk, j is limited by ?  M the remaining capacity at the disk, ND ? i, and there exist j?i number of combinations for the files on P n?M   nPND ?i ?M ?ioo. the disk. The total number of distinguishable states in  corresponds to NT

i=0

It is computationally intractable to enumerate all states in 21

i

j =0

j

 and find the steady state probability.

This

intractability is originated from the assumption that each file has distinct access probability. Files with different popularity have different expected service times in the On Disk state and in the Idle state and thus different combinations of the files have to be enumerated separately to compute the steady steady probability for the hierarchical storage architecture. However, popularity of a file is an estimate of user’s access preference based on a certain profile. Thus, it is not unreasonable to classify

M files to G classes,

which will closely approximate the existing user access pattern. The files in the same subclass are considered to have same arrival rate. We introduce a scheme to classify

the files into subclasses, -partitioning scheme. The key idea is if the two files i, and j belong to the same class,

jpi ? pj j is less than  for a given . According to the experiment, partitioning the entire set of files

into ten classes delivers sufficiently close approximation of the blocking probability. In the -scheme,

 is

adjusted to 0.0021 so that one thousand files are partitioned into 10 classes. To examine the effectiveness, we compute the standard deviation of the data. Let xi be the popularity of file i in zipf distribution and let

x0i be the file i’s popularity after classification. For one thousand files with = 0:271, Standard Deviation is 0.013 with the -scheme. In case the user access pattern is uniform, i.e. all files have the same popularity,

PNT PND ?i 1 = 1 (N

the state of the hierarchical storage determined solely by the number of files in each of the three states. The number of distinguishable states corresponds to

i=0

j =0

2

T + 1)(2ND ? NT + 2). According

to our simulation result, classifying one thousand files into ten sub classes is sufficiently close to the user access pattern following zipf distribution with = 0.271 from the aspect of blocking probability.

6 Performance Evaluation In this section, we present performance results obtained from simulations under various combinations of system parameters. Before describing our experimental results, we first discuss some general information about the experiment, including the performance baseline, performance metrics of interest, and parameter settings.

6.1 General Information It is assumed that there are 500 video files available in total. User Request arrives at the server with Poisson arrival. The user access pattern of the incoming requests is also an important factor that affects the performance behavior of the hierarchical storage. In our simulation, we use zipf distribution to assign the access probability for individual files. Zipf distribution is characterized by a skewness factor, namely . We assume that the interconnection between the storage hierarchies has sufficient bandwidth capacity and thus

22

the tape or disk data rate is not governed by the interconnection medium. The file size is 3.3 GB. The Tape Drive Service Time, LT and the Disk Service Time, LD are properly computed based on the bandwidth of the tape drive and the disk subsystem with respect to file size.

6.2 Analysis 1: Effect of Disk Service Time 0.55

Solid Line : L_T = 7.14 min

0.5

Solid Line : L_T = 7.14 min

Dashed Line : L_T = 3.57 min

0.5

0.45

0.3

P(Block)

P(Block)

0.4

Dashed Line : L_T = 3.57 min

0.4

0.35

0.2 0.3

0.1 0.25

0 0

0.05

0.1 0.15 0.2 Data Transfer Rate : mu_D per min

0.2 0

0.25

Figure 10: D and P(Block)

0.05

0.1 0.15 0.2 Data Transfer Rate : mu_D per min

0.25

0.3

Figure 11: D and P(Block)

In this section, we examine the effect of transfer speed on blocking probability. In the simulation environment, there are three tape drives in the tape library and secondary storage can hold upto 8 files. Fig. 10 and Fig. 11 illustrate how the blocking probability is affected by changing the data transfer rate from the disk to the end user. The

X -axis denotes the transfer rate of the disk, and the Y -axis denotes the blocking proba-

bility of the hierarchical storage. In Fig. 10 and Fig. 11, the blocking probability initially decreases with the increase in the disk transfer rate. A faster data transfer rate implies a shorter disk service time for each request and a shorter duration of the file on the disk. It is observed that beyond a certain disk transfer rate, the blocking probability increases again. This phenomenon arises due to the thrashing effect. As the duration of a file on the disk decreases, there is a smaller chance that the incoming request will observe requested file on the disk upon its arrival and tape drives can be more congested. Increase of the request blocking at tape drives dominates the decrease of the blocking at the disk. Consequently,

P (Block) increases.

As the

disk transfer rate further increases, most of the request blocking will be due to congestion in the tape drive. Thus,

P (Block) asymptotically tends to the blocking probability of the tape drives only system with the

increase in the data transfer rate. The aggregate request arrival rate in Fig. 10 and Fig. 11 are 0.5/min and 1.0/min, respectively. Analyzing Fig. 10 and Fig. 11, using the proper disk transfer rate is more important under heavier load. The optimal disk transfer rate which minimizes the blocking probability depends on various system param23

0.14 0.13

0.4

0.35

Dashed Line : L_T = 3.84 min Solid Line : L_T = 5 min

0.3 Minimum Blocking Probability

0.12 0.11 0.1 mu_D

min

Solid Line : L_T = 8.33

Dotted Line : L_T = 3.57 min

0.09 0.08 0.07

Dashed Line : L_T = 5.0 min Dash Dot Line : L_T = 3.84 min Dotted Line : L_T = 3.57 min

0.25

0.2

0.15

0.1 0.06 0.05

0.05 0.04 0.1

0.2

0.3

0.4 0.5 Request Arrival Rate

0.6

0 0.1

0.7

0.2

0.3

0.4 0.5 Request Arrival Rate

0.6

0.7

Figure 13: Request Arrival Rate vs. Minimum

Figure 12: Optimal Staging Disks Transfer rate

Blocking Probability eters such as the aggregate request arrival rate, the number of tape drives, the capacity of the disk, etc. Fig. 12 illustrates the relationship between the optimal disk transfer rate and the aggregate request arrival rate. The optimal disk transfer rate is linearly proportional to , i.e. as the aggregate request arrival rate increases, the disk transfer rate needs to be increased properly to make the hierarchical storage operate under optimal conditions. Fig. 13 illustrates the relationship between the aggregate request arrival rate and the minimum blocking probability with the optimal disk transfer rate. It illustrates the the minimum achievable blocking probability given the request arrival rate, the transfer rate of the tape drives, the number of tape drives and the number of

disk drives. The adjustable parameter is disk service time. As in Fig. 13, the minimum P (Block ) is linearly

proportional to arrival rate , and will asymptotically tends to 1.0 as the arrival rate increases. With the tape drive of faster transfer rate, blocking probability increases slowly.

6.3 Analysis 2:Capacity of Secondary Storage With fixed number of tape drives, increasing capacity of secondary storage brings an improvement on the blocking probability. Fig. 14 and Fig. 15 illustrates the improvement of the blocking probability with the increase in disk capacity. The simulation is performed for two different aggregate request arrival rates. We considered four different number of tape drives, 4, 6, 8 and 10. Initially, the increase of the disk capacity brings an improvement on the blocking probability. Beyond a certain threshold disk capacity, an increase of the disk capacity does not affect blocking probability. This is due to the fact that the tape drive becomes the sole source of request blocking when disk capacity is sufficiently large.

24

Tpae Drive Speed = 24 MBps, Disk Speed = 10 MBps

Tape Drive Speed = 12 MBps, Disk Speed = 20 MBps

0.7

0.7 lambda = 2, N(TD) = 4 lambda = 2, N(TD) = 6 lambda = 2, N(TD) = 8 lambda = 2, N(TD) = 10 lambda = 4, N(TD) = 4 lambda = 4, N(TD) = 6 lambda = 4, N(TD) = 8 lambda = 4, N(TD) = 10

P(Block)

0.5 0.4

lambda = 2, N(TD) = 4 lambda = 2, N(TD) = 6 lambda = 2, N(TD) = 8 lambda = 2, N(TD) = 10 lambda = 4, N(TD) = 4 lambda = 4, N(TD) = 6 lambda = 4, N(TD) = 8 lambda = 4, N(TD) = 10

0.6 0.5 P(Block)

0.6

0.3

0.4 0.3

0.2

0.2

0.1

0.1

0

0 5

10

15 20 Disk Capacity

25

30

5

10

15 20 Disk Capacity

25

30

Figure 14: Effect of Disk Capacity on Blocking

Figure 15: Effect of Disk Capacity on Blocking

Probability

Probability

Let us analyze the vertical distance between the graphs of a different number of tape drives in Fig. 14. When the capacity of the disk is small, vertical distance between the graphs is insignificant. As the capacity of secondary storage becomes larger, the distance becomes more significant. When disk capacity is relatively small compared to the number of tape drives, most of the blocking occurs due to a lack of disk space. Therefore, adding more tape drives does not improve the blocking probability significantly. However, as the capacity of the disk increases, the tape drives become dominant source of request blocking. Under this circumstance, addition of a tape drive brings a significant improvement over the blocking probability. In Fig. 15, a relatively faster disk transfer rate is used in the simulation. With the faster disk transfer rate, the addition of unit disk capacity has a significant effect on blocking probability.

6.4 Analysis 3: Bottleneck Analysis An incoming request is blocked due to the congestion in one of the storage hierarchies. Bottleneck analysis is an important measure to determine the optimal way of improving the system throughput. More resources need to be added to the storage hierarchy which is bottleneck. Fig. 16 illustrates the blocking at each storage hierarchy with respect to the disk capacity. Tape Drive Speed and Disk Speed are 24 MBps and 10 MBps, respectively. The Aggregate request arrival rate is 4/min. The user access pattern follows

= 0:271. There are four tape drives in Fig. 16. P (Block) corresponds to the sum of P (Block at Tape Drives) and P (Block at Disks). As the disk capacity increases, major zipf distribution with

source of the request blocking shifts from the disk subsystem to the tape drives. When the disk capacity is larger than sixteen files, requests blocking happens only at the tape drives. Thus with four tape drives, it is wastage of resource to use larger disk than sixteen files. With disk capacity less than thirteen, secondary storage is a bottleneck in the storage hierarchy. When disk capacity is greater than thirteen, request 25

blocking at the tape drives dominates the request blocking at the disk. With disk capacity of thirteen files,

P (Block at Tape Drives) and P (Block at Disks) contribute equally to blocking probability. With four

tape drives and a disk capacity of thirteen files, the hierarchical storage is balanced, given the system parameters. Fig. 17 to Fig. 22 illustrates

P (Block at Tape Drives) and P (Block at Disks) under different

Tape Drive Speed = 24 MBps, Disk Speed = 10 MBps, Zipf=0.271 0.7 B(Block) P(Block at Tape Drives) 0.6 P(Block at Disks)

Probability

0.5 0.4 0.3 0.2 0.1 0 5

7

9

11

13 15 17 19 Number of Drives

21

23

25

Figure 16: Blocking at each Storage Hierarchy

combinations of system parameters.

6.5 Experiment 4: Effect of Aggregate Arrival Rate and User Access Pattern Lambda = 4, Tape Speed = 12 MBps, Disk Speed = 10 MBps 0.7 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) =4 0.6 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) =6 P(Block at Tape Drives), N(T) = 8 0.5 P(Block at Disk Drives), N(T) = 8 Probability

Probability

Lambda = 2, Tape Speed = 12 MBps, Disk Speed = 10 MBps 0.5 P(Block at Tape Drives), N(T) =4 0.45 P(Block at Disk Drives), N(T) =4 P(Block at Tape Drives), N(T) = 6 0.4 P(Block at Disk Drives), N(T) =6 P(Block at Tape Drives), N(T) = 8 0.35 0.3 0.25 0.2 0.15

0.4 0.3 0.2

0.1 0.1

0.05 0

0 5

10

15 20 Disk Capacity

25

30

5

10

Figure 17: Tape Drive Speed = 12 MBps, = 0:271

26

15 20 Disk Capacity

25

30

Lambda = 4, Tape Speed = 24 MBps, Disk Speed = 10 MBps 0.7 P(Block at Tape Drives), lambda = 4, N(TD)= 4 P(Block at Tape Drives), lambda = 4, N(TD) =6 0.6 P(Block at Tape Drives), lambda = 4, N(TD) =8 P(Block at Disks), lambda = 4, N(TD) =4 P(Block at Disks), lambda = 4, N(TD) = 6 0.5 P(Block at Disks), lambda = 4, N(TD) = 8 Probability

Probability

Lambda = 2, Tape Speed = 24 MBps, Disk Speed = 10 MBps 0.5 P(Block at Tape Drives), N(T) = 4 0.45 P(Block at Disk Drives), N(T) = 4 P(Block at Tape Drives), N(T) = 6 0.4 P(Block at Disk Drives), N(T) = 6 P(Block at Tape Drives), N(T) = 8 0.35 P(Block at Disk Drives), N(T) = 8 0.3 0.25 0.2 0.15

0.4 0.3 0.2

0.1 0.1

0.05 0

0 5

10

15 20 Disk Capacity

25

30

5

10

15 20 Disk Capacity

25

30

Lambda = 2, Tape Speed = 60 MBps, Disk Speed = 10 MBps 0.5 P(Block at Tape Drives), N(T) =4 0.45 P(Block at Disk Drives), N(T) =4 P(Block at Tape Drives), N(T) = 6 0.4 P(Block at Disk Drives), N(T) =6 P(Block at Tape Drives), N(T) = 8 0.35 P(Block at Disk Drives), N(T) = 8 0.3

Lambda = 4, Tape Speed = 60 MBps, Disk Speed = 10 MBps 0.7 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) =4 0.6 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) =6 P(Block at Tape Drives), N(T) = 8 0.5 P(Block at Disk Drives), N(T) = 8 Probability

Probability

Figure 18: Tape Drive Speed = 24 MBps, = 0:271

0.25 0.2 0.15

0.4 0.3 0.2

0.1 0.1

0.05 0

0 5

10

15 20 Disk Capacity

25

30

5

10

15 20 Disk Capacity

25

30

Figure 19: Tape Drive Speed = 60 MBps, =0.271

Probability

Probability

Lambda = 2, Tape Speed = 12 MBps, Disk Speed = 10 MBps 0.6 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) = 4 0.5 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) = 6 P(Block at Tape Drives), N(T) = 8 P(Block at Disk Drives), N(T) = 8 0.4 0.3 0.2

Lambda = 4, Tape Speed = 12 MBps, Disk Speed = 10 MBps 0.8 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) = 4 0.7 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) = 6 0.6 P(Block at Tape Drives), N(T) = 8 P(Block at Disk Drives), N(T) = 8 0.5 0.4 0.3 0.2

0.1

0.1

0

0 5

10

15 20 Disk Capacity

25

30

5

10

15 20 Disk Capacity

Figure 20: Tape Drive Speed = 12 MBps, Uniform Access Pattern

27

25

30

Probability

Probability

Lambda = 2, Tape Speed = 24 MBps, Disk Speed = 10 MBps 0.6 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) = 4 0.5 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) = 6 P(Block at Tape Drives), N(T) = 8 P(Block at Disk Drives), N(T) = 8 0.4 0.3 0.2

Lambda = 4, Tape Speed = 24 MBps, Disk Speed = 10 MBps 0.8 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) = 4 0.7 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) = 6 0.6 P(Block at Tape Drives), N(T) = 8 P(Block at Disk Drives), N(T) = 8 0.5 0.4 0.3 0.2

0.1

0.1

0

0 5

10

15 20 Disk Capacity

25

30

5

10

15 20 Disk Capacity

25

30

Figure 21: Tape Drive Speed = 24 MBps, Uniform Access Pattern

Probability

Probability

Lambda = 2, Tape Speed = 60 MBps, Disk Speed = 10 MBps 0.6 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) = 4 0.5 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) = 6 P(Block at Tape Drives), N(T) = 8 P(Block at Disk Drives), N(T) = 8 0.4 0.3 0.2

Lambda = 4, Tape Speed = 60 MBps, Disk Speed = 10 MBps 0.8 P(Block at Tape Drives), N(T) = 4 P(Block at Disk Drives), N(T) = 4 0.7 P(Block at Tape Drives), N(T) = 6 P(Block at Disk Drives), N(T) = 6 0.6 P(Block at Tape Drives), N(T) = 8 P(Block at Disk Drives), N(T) = 8 0.5 0.4 0.3 0.2

0.1

0.1

0

0 5

10

15 20 Disk Capacity

25

30

5

10

15 20 Disk Capacity

Figure 22: Tape Drive Speed = 60 MBps, Uniform Access Pattern

28

25

30

In this section, we analyze the effect of the aggregate arrival rate and the user access pattern over the blocking probability. We have performed simulation under two types of user access patterns, skewed and uniform. For a pair of the figures in each row, the figure on the left-hand side and right-hand side are a simulation result under aggregate request arrival rate = 2/min and 4/min, respectively. The figures in concern in this section is from Fig. 17 to Fig. 22. Fig. 17 to Fig. 19, the user access pattern is skewed following the commercial video rental pattern. For a given number of tape drives, a certain capacity of the disk is required to balance the configuration of storage hierarchy. For example, with eight number of tape drives in Fig. 17, disk capacity of thirteen and disk capacity of eighteen are required to make the storage configuration balanced with

 = 2 and  = 4,

respectively. By comparing the figures in the left-hand side and the right-hand side of figures from Fig. 17 to Fig. 19, it is observed that under a heavier load, a relatively larger disk capacity is required to balance the storage hierarchy. This phenomenon arises from the fact that the incoming request has a higher chance to observe the requested file on the disk upon its arrival when the traffic is heavier. This is emphasized especially when the access pattern is biased. The overall load from the aspect of request blocking shifts to the secondary storage as the aggregate request arrival rate increases. Thus, relatively larger disk capacity is required to configure the balanced system with the increase in the data rate. The phenomenon of load shift is insignificant when the user access pattern is uniform, as shown in Fig. 20, Fig. 21 and Fig. 22. For example, with eight number of tape drives in Fig. 20, the disk capacity of fifteen and the disk capacity of sixteen make the balanced configuration with respect to

 = 2 and  = 4. Under the

identical storage hierarchy configuration, blocking probability is higher when the access pattern is uniform. This is because the result of loading the file on the disk cannot be as effective as in skewed access pattern. Advantage of adopting hierarchical storage architecture should be emphasized especially when the user access is skewed in favor of small portion of the available files.

7 Conclusion In this work, we introduce the service mechanism for the hierarchical storage architecture where the secondary storage is mainly used for staging purpose. Our effort is focused on investigating the impact of the various system parameters to develop an optimal configuration of the hierarchical storage-based data server. The throughput of the server is defined along with two orthogonal performance metrics, expected service time and system congestion and blocking probability. We developed an analytical model for the given performance metrics. For each performance metric, Expected Service Time and Blocking Probability, hierarchical storage needs to be modeled from different perspectives. To model the expected service time, 29

the storage architecture is viewed from the open system’s perspective where the end user is the customer in the queuing system. The system needs to be viewed from closed system’s perspective to obtain the model for server congestion and blocking probability. In the closed system’s perspective, an individual file is the customer in the queuing system. The performance of hierarchical storage is governed by several factors such as the user access pattern, the number of tape drives, the capacity of secondary storage, the transfer rate of tape drives, and the transfer rate of disks. It is observed that using the faster data transfer rate at secondary storage may not be beneficial to the performance of the storage architecture, and increasing it beyond the threshold may degrade the server throughput. This implies that in a hierarchical storage architecture, relative speed between storage hierarchies plays an important role in the effectiveness of the hierarchical structure. We used a queuing modeling technique to obtain an analytical formulation to model the performance of the server. The performance behavior of the hierarchical storage is also significantly affected by the user access pattern. Especially when the user access pattern is skewed, hierarchical storage is a efficient solution for massive data storage. Framework in this article proposes the methodology of how to configure the storage hierarchy given the various combination of the system parameters.

Acknowledgment The authors would like to acknowledge Yongdai Kim at Ohio State University for his valuable comments and insights.

References [1] Distributions of video viewing frequencies. Video Store Magazine, Dec. 13 1992. [2] Athanassios K. Tsiolis and Mary K. Vernon. Group-Guaranteed Channel Capacity in Multimedia Storage Servers. In SIGMETRICS 97, To Appear. [3] Steven Berson, Richard Muntz, Sharam Ghandeharizadeh, and Xiangyu Ju. ”Staggered Striping in Multimedia Information Systems. In Proc. of ACM-SIGMOD International Conference on Management of Data, pages 79–90, Minneapolis, Minnesota, May 1994. [4] Giuseppe. Bianchi, Riccardo. Melen, and Alessandro. Rainoni. Performance of video storage hierarchy in interactive video services networks. In Proceedings of the 1995 IEEE Global Telecommunications Conference. Part 2 (of 3)., pages 805–810, Singapore, Singapore, 1995. [5] David W. Brubeck and Lawrence A. Rowe. Hierarchical storage management in a distributed VOD system. IEEE Multimedia Magazine, 3(3):37–47, Fall 1996.

30

[6] Mon-Song Chen, Dilip D. Kandlur, and Philip S. Yu. Optimization of the grouped sweeping scheduling(gss) with heterogeneous multimedia streams. In ACM Multimedia ’93, pages 235 – 242, 1993. [7] MS Chen, D. Kandlur, and P. S. Yu. Storage and retrieval methods to support fully interactive playout in a disk-array-based video server. Multimedia Systems, 3(3):126–135, July 1995. [8] Ann Louise Chervenak. Tertiary Storage: An Evaluation of New Applications. PhD thesis, University of California at Berkeley, December 1994. [9] Asit Dan and Dinkar Sitaram. Buffer Management Policy for an On-Demand Video Server. Technical Report IBM Research Report RC 19347, IBM Research Division, T.J. Watson Research Center, Yorktown Heights, NY 10598, 1993. [10] Asit Dan and Dinkar Sitaram. An online video placement policy based on bandwidth to space ratio(bsr). In Proceedings of ACM SIGMOD, pages 376 – 385, 1995. [11] Asit Dan, Dinkar Sitaram, and Perwez Shahabuddin. Scheduling policies for an on-demand video server with batching. In Proc. of ACM Multimedia ’94, pages 15–23, San Francisco, CA, Oct. 1994. [12] De Giovanni, L. and Langellotti, A M. and Patitucci, L M. and Petrini, L. Dimensioning of hierarchical storage for video on demand services. In Proceedings of the 1994 IEEE International Conference on Communications, volume 3, New Orleans, LA, 1994. [13] Y. Doganata and A. Tantawi. Making a cost-effective video server. IEEE Multimedia, pages 22–30, Winter 1994. [14] Ghandeharizadeh, S. and Shahabi, Cyrus. On Multimedia Repositories, Personal Computers, and Hierarchical Storage. In Conf. Proc. ACM Multimedia, pages 407–416, 1994. [15] Harrick M. Vin and Sriram S Rao and Pawan Goyal. Optimizing the Placement of Multimedia Objects on Disk Arrays. In Proceedings of International Conference of Multimedia Computing and Systems, 1995. [16] D.R. Kenchammana-Hosekote and J. Srivastava. Scheduling Continuous Media on a Video-On-Demand Server. In Proc. of International Conference on Multi-media Computing and Systems, Boston, MA, May 1994. IEEE. [17] Martin G. Kienzle, Asit Dan, Dinkar Sitaram, and William Tetzlaff. Using tertiary storage in video-on-demand servers. In Proc. of IEEE COMPCON ’95, 1995. [18] Leonard Kleinrock. Queueing Systems. John Wiley & Sons, Inc., 1975. [19] T.D.C. Little and D. Vankatesh. Popularity-Based Assignment of Movies to Storage Devices in a Video-onDemand System. Multimedia Systems, 2(6):280–287, January 1995. [20] Banu Ozden, Rajeev Rastogi, and Avi Silberschatz. Disk Striping in Video Server Environments. In Proceedings of the International conference on Multimedia Computing and Systems, Hiroshima, Japan, May 1996.

31

[21] P. Rangan, H. Vin, and S. Ramanathan. Designing an on-demand multimedia service. IEEE Communication Magazine, 30(7):56–65, July 1992. [22] Tracy F. Sienknecht, Richard J. Friedrich, Joseph J. Martinka, and Peter M. Friedenbach. Implications of distributed data in a commercial environment on the design of hierarchical storage management. Performance Evaluation, 20(1-3):3–25, May 1994. [23] William Tetzlaff, Martin Kienzle, and Dinkar Sitaram. A Methodology for Evaluating Storage Systems in Distriubted and Hierarchical Video Servers. In Proceedings of COMPCON ’94, pages 430–439, February 1994. [24] Y. Wan and D. Du. Video File Allocation over Disk Arrays for Video-On-Demand. In Proceedings of International Conference for Multimedia Computing and Systems, 1996. [25] Terry A. Welch. Memory hierarchy configuration analysis. IEEE Transactions on Computers, c-27(5):408–413, May 1978. [26] ISO/IEC JTC1/SC29 WG11/602. Coding of moving pictures and associated audio. ISO/IEC 13818-2, Committee Draft, Nov 1993. [27] Ronald W. Wolff. Stochastic Modeling and The Theory of Queues. Number ISBN 0-13-846692-0. Prentice Hall, Englewood Cliffs, J.H. 07632, 1989. [28] Youjip Won and Jaideep Srivastava. Scheduling video delivery in a distributed environment. In I. Miloucheva, editor, Proceedings of Second Conference on Protocols for Multimedia Systems, pages 119–135, Salzberg, Austria, Oct. 1995. [29] Youjip Won and Jaideep Srivastava. Minimizing blocking probability in hierarchical storage based video-ondemand server. In Proc. of IEEE International Workshop for Multimedia Database Management Systems, pages 12 – 19, Blue Mountain Lake, NY, Aug 1996. [30] Youjip Won and Jaideep Srivastava. Distributed Service Paradigm of Remote Video Retrieval Request. In To appear on Proceedings of 6th IEEE International Symposium of High Performance Distributed Computing, Portland, Oregon, Aug 1997. [31] Youjip Won and Jaideep Srivastava. Strategic Replication of Video Files in a Distributed Environment. Internation Journal of Multimedia Tools and Application, To Appear.

A Expected Duration of File on Disk Given Disk Service Time LD , and request arrival , we find the expected duration of a file on the disk. Let

Ti be the inter-arrival time of the (i+1)th customer from the i-th customer. Let N be the number of requests 32

which are serviced from the same file loaded on disk. In order that N and Tk

> L. So we get

= k, T1 < L; T2 < L;    ; Tk?1 < L

Pr(N = k) = Pr(T1 < L; T2 < L;    ; Tk?1 < L and Tk > L) Since each of the inter-arrival Ti0 s is independent,

Pr(N = k) =

kY ?1 i=1

Pr(Ti < L)Pr(Tk > L)

Also the inter-arrival times have the same distribution (that is exponential distribution), hence

Pr(N = k) = (Pr(T1 < L))k?1 (1 ? Pr(T1 < L)) Therefore N follows geometric distribution with the success probability

p = Pr(T1 > L) = e?L . Let W be the random variable of the total playing time of the music box. Conditioning on N , we get

E (W j N = k) = E (T1 + T2 +    + Tk?1 j N = k) + L But E (Ti

j N = k) = E (Ti j Ti < L) for 1  i  k ? 1 . Here

R L xe?xdx

0 E (T1 j T1 < L) = Pr (T1 < L)

ZL 0

L Z L

?te?t + e?t dt 0 0 L 1 ? t ? L = ?Le + ? e  ?0 L  1 ? L = ?Le + 1 ? e

te?t dt =



Hence,

?L E (T1 j T1 < L) = 1 ? 1Le ? e?L Therefore

?L E (W j N ) = (N ? 1)( 1 ? 1Le ? e?L ) + L E (N ? 1) = E (N ) ? 1 and P (N = n) = (1 ? e?L )n?1 e?L . P (N = n) follows the geometric distribution with success rate e?L . Hence, E (N ) = e?1L , and , we get   ?L  E (W ) = e?1L ? 1 1 ? 1Le ? e?L + L ? e?L = 1 e (24) ?L 33

Further, let’s find the expected time between two consecutive starting time of the music, say E (W ). Then,

E (W jN = k) = E (T1 + T2 +    + Tk jN = k) = (N ? 1)E (T1 jT1 < L) + E (T1 jT1 > L) E (T1 jT1 > L) =

Z1

te?t dt=P (T1 > L)

0   1 ? L = e L + =e?L

= L + 1 Hence,

E (W ) =



1 ?1 ? e L

 1

? e?L + 1 = 1 e ?L 





Le?L + L + 1 ?  1 ? e?L 

The variance of W can be obtained by the equation V ar (W ) = V ar (E (W

(25)

j N ))+E (V ar(W j N )).Q:E:D:

B Basic Model We provide an analytical formulation for the simple configuration of a storage hierarchy - NT and M

= 1, ND = 1,

= 1. Let us consider the service time for a request which has arrived at each of the three file states,

Idle, On Tape Drive and On Disk. We obtain the formulation for expected service time for a video request. Let us recall the service mechanism for a request. If a request arrives when the file is in the Idle state, it loads the file from the tape drive to the disk and then transfer it to the end user. If a request arrives when the file is On Tape Drive, it waits until the requested video is loaded into the disk and then transfers the file to

 be the request arrival rate, LT be the tape drive service time, and LD be the disk service time. Let P (I ), P (T ) and P (D ) denote the probability that the request observes that the file is in the Idle, On Tape Drive, and On Disk states. Then the expected service time E (S ) is as follows.

the end user. If a request arrives when the file is in the On Disk state, service starts immediately. Let

E (S ) = P (E )(LT + LD ) + P (LT )(LT ? L0T + LD ) + P (LD )LD

(26)

When a request ri observes that the file is in the On Tape Drive state upon its arrival, it does not have to load the file from the tape drive. It can wait for the tape drive to complete its on-going transfer. Let L0T 34

be the interval between the time when the tape drive to disk transfer starts and arrival of ri . It is known that E (L0T ) is L2T when ri follows the Poisson arrival. Hence, when request observes that the file is in the On Tape Drive state, the expected time until the tape drive service finishes is L2T . In this example, P (E ) + P (LT ) + P (LD ) = 1. P (I ), P (T ) and P (D) is formulated as follows.

1 

P (I ) =

LT + E (W ) + 1 LT P (T ) = LT + E (W ) + 1 E (W ) P (D) = LT + E (W ) + 1

(27) (28) (29)

By substituting Eq. into Eq. 3, we can formulate the expected service time as in Eq. 30.

E (S ) = LT ? LT P (LD ) ? L2T P (LT ) + LD = L (P (E ) + P (L )) ? LT P (L ) + L T

T

T

2

D

L  LT + 1 L T +L T ? = LT D LT + E (W ) + 1 LT + E (W ) + 1 2  L2 L  1 T + T + LD = LT + E (W ) + 1 2 

For a given LT , we would like to find a value of LD that makes E(S) minimum. Let E

G = LT + 1 . Then,

E (S ) = E (WE) + G + LD @ E (S ) = 1 ? @ E (W ) E 2 @LD (E (W ) + G ) @LD

1 = 1 ? (E (W E) + G )2 e?L D @ E (W ) = 1 +  1 ? e?LD @L e?LD D

Hence,

= eLD

0

E (W ) = E (LD ) ? 1

35

(30)

  = L2T + LT and 2

= = = = Let Y

@ @LD E (S ) (LT + (E (LD ))0 1 )2 ? E @L@D E (LD ) (E (LD ) + G )2 !  E (L )0 2  L2 LT  1 D ? 2T +  E (LD )0 LT +  (LT + E (LD ) + 1 )2  1   02  2 1 2 + 2 LT E (LD )0 + (E (LD ) ) ? LT + LT L  2 2  e?LD (LT + E (LD ) + 1 )2 T  L2 L  1   1 1 1 L T 2 LT + 2  e?LD + (e?LD )2 ? 2T + T e?LD 1 2 (LT + E (LD ) +  )

= eLD .

@ E (S ) = Y 2 + Y  LT ? L2T  + L2 T @LD 2  2

Y = = =

? ? ?

Hence,

1

 LT

L2T   ?  2

 LT 

 LT 

r 22

LT 

?

r  LT LT

?

r LT  LT

2

2

2

2



22



2

2

2

2

? L2T ? 4 LT 2

2

2

LT 2 + 



2

? L2T ? 4 LT

2

 LT 2

2

2 2

? 3LT



0 0 1 v 10 1 u 2 u L L 1 3 L L T T T ? @ ? T A  LT u t@ + A @ ? A

LD = ?  log



2

2

2



2



(31)

2

Eq. (31) is the value of LD which makes the E (S ) minimum. It has to be pointed out that the inner part of the square root in Eq.(31) has to be greater than 0. Otherwise Eq. (31) doesn’t have real value. It means E(S) is monotonically increasing. Further, E(S) becomes shorter as the system has a faster disk subsystem.

C Service Time Distribution When the file is loaded on the system, it spends LT on the tape drive and the rest of its system-resident duration on the disk subsystem. This section is devoted to finding the probability distribution of each duration. 36

There are two view points of examining the service in our context: from the aspect of (1) the individual customer who makes the requests and (2) the video files. In this section, we analyze the system from the aspect of the individual video files. We can exemplify the difference between the two. From the aspect of the video file, it takes a constant amount of time, say

LT , to load the file to the tape drive.

However, an

individual customer observes the expected time for tape drive to disk loading as L2T . In this section, service

time is the one which the video file observes.

C.1 Tape Drive Service Time Let Lti and Ldi be a service time of file i on tape drive and disk, respectively.

Fi (Lti ) =

(

1 0

if Lti  D otherwise

(32)

C.2 Disk Drive Service Time

Ldi has a more complicated structure. Once ci is loaded on the disk drive, the minimum amount of service time is defined as D , which is a playback length of ci . For the sake of simplicity, we denote Ldi as LD in this section. Let  be the request arrival rate at the disk. Request Arrival Times are r1 ; r2 ; : : : ; rn and Ti is an inter-arrival time between ri and ri+1 , i.e. ri+1 ? ri . Given that LD consists of n requests, LD is T1 + : : : + Tn?1 + D. P (LD consists of n requests) are Ti < D8i = 1; : : : ; n ? 1 and Tn > D. Let variable X be the duration of the video file on the disk storage. We find the cumulative distribution FX (x). FX (x) = P (X  x) =

1 X

n=1

P (Ti < D; i = 1; : : : ; n ? 1; Tn > D)P (T1 +    + Tn?1 + D < xjTi < D; i = 1; : : : ; n ? 1; Tn > D)

R x  e?x

P (Ti < xjTi < D) = 10? ei ?D ?x = 11 ?? ee?D

(33)

For any probability, Eq. 34 holds.

P (X ) =

M X i=1

P (X \ Yi)

such thatP ([M i=1 Yi ) = 1 37

and Yi \ Yj = ; i 6= j

(34)

Fn(x) as the cumulative probability distribution function for x such that Ti D. Fn (x) implies the c.d.f. for x when x consists of n requests. F (x) can be P F (x) as in Eq. 35. T is defined as 0. Function F (x) and F (x) makes a jump at formulated as 1 0 n n=1 n point x = D . Hence, we partition the domain into x = D and x 2 (D; 1). In case x = D , there can be one and only one request, and thus F (D ) = F1 (D ) = e?D . When x > D , F (x) is defined as in Eq. 35. Let us define

F (x) = = =

1 X i=1

1 X i=2

1 X i=2

Fn (x) Fn (x) + F1 (x) Fn (x) + e?D

Fn(x) = P (X  x [ T1  D [ : : : [ Tn?1  D [ Tn > D) = P (X  xjX = T1 + : : : + Tn?1 + D) fP (T1  D)gn?1 (1 ? P (T1 )) = P (T1 + : : : + Tn?1  x ? D)(1 ? e?D )n?1 e?D

(35)

Pn?1 T

When a variable follows the exponential distribution, the probability distribution for the sum of the variables are known as the Erlang distribution. The probability density function of

i=1 i is defined as in Eq. 36

?x n?2 fT +:::+Tn? (x) = e (n ?(x2)!) Z x?D e?x(x)n?2 P (T1 + : : : + Tn?1 < x ? D) = (n ? 2)! 1

1

0

Hence, Fn (x) can be defined as in Eq. 37.

Fn (x) = (1 ? e?D )n?1 e?D

Z x?D e?x(x)n?2 0

(n ? 2)!

(36)

(37)

Now, F (x) can be represented as in Eq. 38.

F (x) =

1 X

n=1

Fn(x)

X = e?D Fn (x) 1

n=2

Z x?D e?x(x)n?2 1 X ? D n ? 1 ? D ? D = e + (1 ? e ) e ) (n ? 2)! 0 n=2

38

(38)

The integral and summation can be exchanged in Eq. 38.

= = =

1 X

(1 ? e?D )n?1 e?D

(n ? 2)! ?x (x)n?2 (1 ? e?D )n?1 e?D ) e (n ? 2)! n=2

n=2 Z x?D X 1

0

Z x?D

Z x?D e?x(x)n?2 0

(1 ? e?D )e?D e?x

1 X

n?2

) (1 ? e?D )n?2 ((x n ? 2)!

0 n=2 P i 1 By applying the fact that i=0 i! = e , Eq. 39 can be written as follows. Z x?D 1 X )n?2 ? D ? D ? x (1 ? e?D )n?2 ((x (1 ? e )e e = n ? 2)! 0 n=2 Z x?D (1 ? e?D )e?D e?x ex(1?e?D ) = 0 Z x?D ey(1?e?D ) = (1 ? e?D )e?D  0 1 x?D = (1 ? e?D )e?D  ?e?D ey(1?e?D ) 0 ?D ? D ?  ( x ? D ) e = (1 ? e )(1 ? e )

(39)

(40)

Finally, the probability distribution for disk service time F (x); x > D is formulated as in Eq. 41.

F (x) = (1 ? e?D )(1 ? e?(x?D)e?D ) + e?D = 1 ? e?(x?D)e?D + e?D e?(x?D)e?D (41) limx!D F (x) = e?D and thus F (x)is continuous on [D; 1). Applying the Tail Sum Formula theorem, we can find the expected value of disk service time.

E (X ) = = =

Z1 ZD1 ZD1 0

1 ? F (x)dx

e?(x?D)e?D ? e?D e?(x?D)e?D dx e?xe?D ? e?D e?xe?D dx

= (1 ? e?D ) = (1 ? e?D )

? e?D = 1 e ?D

Z1

0

e?xe?D dx

 1 ?D 1 ? xe ? e?D e 0

(42)

39

C.3 Laplace Transformation Laplace transformation of the p.d.f. plays an important role as a convenient tool to obtain various properties of the random variable. First, we find the Laplace transformation of Ti . We computed P (X in Eq33. Thus, fTi (x) is formulated as in Eq.43.

< xjX < D)

?x fTi (x) = 1 e ? e?D

(43)

The Laplace transformation of p.d.f. fTi (x) is as follows.

LTi (s) =

Z D e?x e?sxdx 0 1 ? e?ZD D 1

= 1 ? e?D e?(x+s) dx # "0 D

?x(s+) = 1 ? e?D e s +  0 ?D(s+)  1 ? e = 1 ? e?D s +  Hence, applying Laplace transformation of convolution, LX +Y (s) = LX (s)  LY (s) LT +:::+Tn (s) = fLT (s)gn ! ?D(s+) n 1 ? e  = 1 ? e?D s +  1

1

We also find the first momentum of Eq. 44.



(44)

!n



n d 1 ? e?D(s+) dL  ( s ) = ds T +:::+Tn 1 ? e?D ds s+ ! ! ! n ?D(s+) n?1 De?D(+s) 1 ? e?D(+s) 1 ? e d 1 ? e?D(s+) = n ds s+ s+  + s ? ( + s)2 1

  n 1 ? e?D(s+) !n?1 De?D(+s) 1 ? e?D(+s) ! dL (45) ds T +:::+Tn (s) = 1 ? e?D n s+  + s ? ( + s)2

Hence,

1

d LX (s)js=0 . We can compute the expected value of T1 + : : : + Tn using E (X ) = ? ds

? E (T1 + : : : + Tn) = dsd LT +:::+Tn (s)js=0    1

 

n ?D n?1 De?D 1 ? e?D  1 ? e = 1 ? e?D n   ? 2   ?D = 1 ? ne?D De?D + e  ? 1 40

 (46)

Hence,



?D E (T1 + : : : + Tn) = 1 ? ne?D 1 ? De?D ? e 

 (47)

P (success) = p, the expected number of trials until success is p1 . In our problem, P (Ti > D ) = e?D . Let n be the number of consecutive request arrivals where the inter-arrival time is less than or equal to D . Then, E (N ) = e?1D . Hence, the expected service time X of the disk can In geometric distribution with

be formulated as follows.

E (X ) = E (E (T1 + : : : + Tn?1 jn)) + D = E (T1 + : : : + TE (n)?1 ) + D =







1 ?1 1 1 ? De?D ? e?D e?D 1 ? e?D  

? e?D = 1 e ?D

 (48)

41

Contents 1 Introduction

2

1.1

Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

1.2

Relation to previous work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3

1.3

Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

2 System Modeling Overview

6

2.1

Service Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6

2.2

User Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

2.3

Parametric Description of the Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

2.4

Queueing Model of Hierarchical Storage Architecture

9

3 Analysis of Expected Service Time

. . . . . . . . . . . . . . . . . . . .

11

3.1

Interpretation from Open System’s Perspective . . . . . . . . . . . . . . . . . . . . . . . . 11

3.2

Effect of System Parameter on the Expected Service Time . . . . . . . . . . . . . . . . . . 12

4 Analysis of Congestion and Request Blocking

15

4.1

Server Congestion and Blocking Probability . . . . . . . . . . . . . . . . . . . . . . . . . . 15

4.2

System Modeling with Closed System’s Perspective . . . . . . . . . . . . . . . . . . . . . . 16

5 Generalized System Model

20

5.1

Markov Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

5.2

Reduction of State Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6 Performance Evaluation 6.1

22

General Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

42

6.2

Analysis 1: Effect of Disk Service Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.3

Analysis 2:Capacity of Secondary Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.4

Analysis 3: Bottleneck Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.5

Experiment 4: Effect of Aggregate Arrival Rate and User Access Pattern . . . . . . . . . . . 26

7 Conclusion

29

A Expected Duration of File on Disk

32

B Basic Model

34

C Service Time Distribution

36

C.1 Tape Drive Service Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 C.2 Disk Drive Service Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 C.3 Laplace Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

List of Figures 1

Hierarchical Storage System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

2

Service Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6

3

Queuing Representation of Hierarchical Storage Architecture . . . . . . . . . . . . . . . . . 10

4

Interpretation with Open System’s Perspective . . . . . . . . . . . . . . . . . . . . . . . . . 11

5

Disk Service Time vs. Expected Service Time

6

Interpretation with Closed System’s Perspective . . . . . . . . . . . . . . . . . . . . . . . . 16

7

Disk Service Time vs. P(Block) with heavy load . . . . . . . . . . . . . . . . . . . . . . . . 18

8

Disk Service Time vs. P(Block) with light load . . . . . . . . . . . . . . . . . . . . . . . . 19

9

Tape Service Time = 55 sec, = 0.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

43

. . . . . . . . . . . . . . . . . . . . . . . . 14

10

D and P(Block)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

11

D and P(Block)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

12

Optimal Staging Disks Transfer rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

13

Request Arrival Rate vs. Minimum Blocking Probability . . . . . . . . . . . . . . . . . . . 24

14

Effect of Disk Capacity on Blocking Probability . . . . . . . . . . . . . . . . . . . . . . . . 25

15

Effect of Disk Capacity on Blocking Probability . . . . . . . . . . . . . . . . . . . . . . . . 25

16

Blocking at each Storage Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

17

Tape Drive Speed = 12 MBps, = 0:271 . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

18

Tape Drive Speed = 24 MBps, = 0:271 . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

19

Tape Drive Speed = 60 MBps, =0.271 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

20

Tape Drive Speed = 12 MBps, Uniform Access Pattern . . . . . . . . . . . . . . . . . . . . 27

21

Tape Drive Speed = 24 MBps, Uniform Access Pattern . . . . . . . . . . . . . . . . . . . . 28

22

Tape Drive Speed = 60 MBps, Uniform Access Pattern . . . . . . . . . . . . . . . . . . . . 28

List of Tables 1

Tape Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

2

Notation Used in this Paper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

44

Suggest Documents