|
|
|
|
|
|
|
simultaneously (Figure 9.28). |
|
|
|
|
|
|
|
|
2. Files may be distributed across multiple disks so that a particular file may be accessed concurrently by reading from the designated disks (Figure 9.29). |
|
|
|
|
|
|
|
|
3. The disks may be synchronized so that reads and writes to the disk are automatically interleaved across multiple disks (Figure 9.30). Synchronized disks are matched so that each disk head is over the same data sector for all the disks. |
|
|
|
|
|
|
|
|
Approach (3) is actually a hardware version of (2). |
|
|
|
|
|
|
|
|
In dealing with ensembles of disks, we can attempt to improve performance by interleaving blocks across drives or by synchronizing drives to create a parallel access mechanism. |
|
|
|
|
|
|
|
|
The second technique, called file striping or distributed disks (dd), simply places successive blocks on different drives up to some limit. The third technique synchronizes several drives (ds) so that they act in parallel. Consecutive bytes from a record are distributed over the drives up to the ds limit. Following Reddy and Banerjee [244], we notate these combinations as (q, s), where q indicates the distribution limit and s the number of disks synchronized in a cluster. For a 16-disk system, (16,1) indicates maximum (dd) distribution16-block files (or larger) are distributed across all 16 drives. Combined arrangements are possiblefor example, an (8,2) system. Here, long files (more than 8 blocks) are distributed over eight pairs of ds drives. Other configurations are possible, varying from a completely synchronized system (1,16) to 16 independent (1,1) drives. Distributing files across multiple drives has the effect of lowering the number of independent disk server mechanisms, m. Thus, distributing files reduces the service time but increases the occupancy (hence, the waiting time). |
|
|
|
|
|
|
|
|
Occupancy depends on service time and m, the effective number of independent disk clusters in the system. For the moment suppose the request rate l splits uniformly over the m independent servers. We compute traffic and occupancy on a per-server basis. Suppose a system consists of l drives. If the system consists of l multiple independent drives (1,1), then |
|
|
|
 |
|
|
|
|
m = l. |
|
|
|
|
|
|
|
|
If a system consists of an ensemble of l disks clustered into units of s synchronized (1,s) disks (see Figure 9.31), then |
|
|
|
|
|
|
|
|
For a system of l disks clustered into units of (q,1) distributed disks, the effective number of independent servers depends on characteristics of the user file. If the user file access pattern consisted only of single block file accesses, then the file accesses would be distributed across the l disks and there would be l servers, as in the independent disk case. If all file accesses were of q blocks or greater, then we would have l/q independent servers, so m depends on the access pattern (Figure 9.32). In order to describe user access behavior on distributed disks, we define the following terms (see Figure 9.33): |
|
|
|
|
|