Information Technology Reference
In-Depth Information
3.5.2 Disk Striping
An alternative solution to partition/replication is through the use of striped disk array. The
principle is to distribute pieces of a media object over all the disks in the array so that the
load of each and every media object is equally shared by the disks in the array, illustrated in
Figure 3.8. Physically, the disks in a disk array are just ordinary disks, but managed as a single
logical storage device either by the disk array controller, by the software disk array module in
the operating system, or by the application directly.
If a hardware disk array controller is employed, then the disk array configuration is com-
pletely hidden from the operating system and the media server application. If the operating
system's software disk array function is employed, then the disk array configuration is visible
to and controllable by the operating system, but still hidden from the media server application.
In both cases, the disk array will simply appear to the media server application as a single
logical disk drive with a large storage capacity and throughput as depicted in Figure 3.9.
These approaches eliminate the need to modify the media server software to support the
use of the disk array as it is completely transparent. However, the disk array controller and
the operating system's software disk array module may not have been optimized for media
streaming applications. By contrast, if the media server implements multi-disk storage and re-
trieval functions directly (see Figure 3.10), then it can have complete control over the disk array
configuration (e.g., interleaving block size, disk scheduling, etc.) to optimize for streaming
applications. In the following discussions we assume this third approach, i.e., implementing
the disk array within the media server application, and present efficient ways to schedule the
media data retrieval process.
Media Object
The media object is
first divided into
fixed-size data blocks.
. . .
D
D 0
D 1
D 2
The data blocks are
then distributed to the
disks according to a
placement policy
(e.g., round-robin).
b 0
b 0
b 1
b 1
b 2
b 2
b 3
b 3
b 4
b 4
b 5
b 5
b 6
b 6
b 7
b 7
b 8
b 8
b 9
b 9
b 10
b 10
b 11
b 11
b 12
b 12
b 13
b 13
b 14
b 14
Figure 3.8 Data placement in a striped disk array
Search WWH ::




Custom Search