Definition

Data storage management, as one of the important functions in database management systems, is to manage data on disk in an efficient way to support data retrieval and data update. Multimedia data storage management is to manage continuous media data (audio/video) on disk. The uniqueness of multimedia data storage management is, in a multiuser environment, how to arrange the data storage to support a continuous retrieval of large continuous media data from disk to be displayed on screen, at a pre-specified rate, without any disruptions, which is also called hiccup-free display.

Historical Background

In a multimedia environment, the continuous media needs to be retrieved and displayed continuously. As magnetic disks are used as the mass storage device for multimedia data, zoning is one approach to increase the storage capacity of magnetic disks. Here, zones of a disk drive are different regions of the disk drive that usually have different transfer rates. A number of studies have investigated techniques to support a hiccup-free display of continuous media (video/audio) using magnetic disk drives with a single zone [1, 2, 9, 10] in the early 1990s. These studies assume a fixed transfer rate for a disk drive. These techniques can be possibly adopted to design a multi-zone disk system, but such a multi-zone disk system is then forced to use the minimum transfer rate of the zones for the entire disk, in order to guarantee a continuous display of continuous media objects. Such an approach is called Min-Z-tfr.

In the late 1990s and early 2000s, many new techniques are proposed to deal with the storage of continuous media in multi-zone disks [4, 5]. In [4], VARB and FIXB are proposed to place media objects on the multi-zone disks. VARB and FIXB techniques provide the average transfer rate of zones while ensuring a continuous display, compared with Min-Z-tfr, which is forced to use the minimum transfer rate of zones. VARB and FIXB increase the throughput of the system, while they also (i) increase startup latency, (ii) waste disk space, and (3) increase the amount of memory required to support more simultaneous displays. A configuration planner is proposed to decrease the drawbacks of VARB and FIXB, in order to meet the performance requirements of applications [4]. As VARB and FIXB [4] take account of a single media type only, RP, MTP, and MVP are proposed in [5] to support multiple media types with different bandwidth requirements. In [4, 5], the discussions focus on multimedia data placement across disk drives to support continuous display requirement.

Foundations

Hiccup-Free Display

The size of continuous media, especially videos, can be very large. The transmission of data must be just-in-time. In other words, data must be retrieved from disks and transmitted to the display in a timely manner that prevents hiccups. A cycle-based data retrieval technique [6, 12] is designed to provide continuous display for multiple users. As shown in Fig. 1, it is a cycle-based data retrieval technique to support hiccup-free display [5]. Consider a constant-bit-rate (CBR) media. In order to guarantee a continuous display of a continuous media A, the system needs to retrieve the block of Ai before its immediate previous block Ai−1 completes its display. For each block Ai, there are two tasks, namely, block retrieval and display initialization. This process of block retrieval and display initialization repeats in a cyclic manner until all A blocks have been displayed. If the time to retrieve a block, termed block retrieval time, Tp (as indicated in Fig. 1), is smaller than or equal to the time period to display a block, then the whole display process will be hiccup free [5]. The time interval between the time a request of A arrives and the time the display of A starts is called startup latency.

Multimedia Data Storage, Fig. 1
figure 1357figure 1357

A hiccup free display (Fig. 3 in [5])

FIXB and VARB

Modern disk drivers are produced with multiple zones to meet the demands for a higher storage capacity [11]. A zone is a contiguous collection of disk cylinders where the tracks in the cylinders are supposed to have the same storage capacity. The outer zones have a higher transfer rate in comparison with the inner zones. Two approaches, FIXB and VARB, are proposed in [4] to support a continuous display of continuous media using a single disk with multi-zones. Suppose that the disk consists of m zones, Z1, Z2, …, Zm, and the transfer rate of zone Zi is Ri. Assume that each object X is partitioned into f blocks: X1, X2, …, Xf.

With FIXB (Fixed Block Size), the blocks of an object X are rendered equi-sized, i.e., Xi = Xj, for any i and j. The system assigns the blocks of X to the zones in a round-robin manner. FIXB is designed to support a predetermined number of simultaneous displays (N). The retrieval process of this system is to scan the disk in one direction, for example, starting with the outermost zone moving inward, visiting one zone at a time and multiplexing the bandwidth of that zone among N block reads. A sweep is a scan of the zones. The time to perform one such a sweep is denoted as TScan. The time of reading N blocks from zone Zi, denoted TMUX (Zi), is dependent on the transfer rate of zone Zi. As the transfer rate of zones varies, the time to read blocks from different zones also varies. To support hiccup-free displays, the system uses buffers to compensate for the low transfer rates of innermost zones.

VARB makes TMUX (Zi) to be identical for all zones, using variable block sizes. The size of a block, B(Zi), is a function of the transfer rate of the zone Zi. This results in an identical transfer time for all the blocks, Tdisk, i.e., \( {T}_{disk}=\frac{B\left({Z}_i\right)}{R_i}=\frac{B\left({Z}_j\right)}{R_j} \), for any i and j. Like FIXB, VARB assigns the blocks of an object to the zones in a round-robin manner. Unlike FIXB, with VARB, the blocks of an object X have different sizes depending on which zones the blocks are assigned to. Also, like FIXB, VARB employs memory to compensate for the low bandwidth of innermost zones.

With FIXB, the blocks of an object is equi-sized, whereas VARB renders the blocks in different sizes, which depends on the transfer rate of its assigned zone. FIXB is easy to be implemented in compared with VARB. But VARB requires a lower amount of memory and incurs a lower latency as compared to FIXB.

RP, MTP, and MVP

Based on zoning, there are different data transfer rates (Ri) to retrieve data from a disk. When a server is required to support multiple media types with different bandwidth requirements, the block reading time varies widely depending on the block size and its assigned zone. Suppose that there are n different media types to be supported. The block size of a media type i object is determined by Bi = Tp × Di where Di is the bandwidth requirement of the media type i, and Tp is a fixed time period which is set to be the same for all the media types. The transfer time (service time) to retrieve a block of a media type i object in zone Zj is \( {s}_{i,j}=\frac{B_i}{R_j} \). Suppose that there are b blocks, the average service time is computed as

$$ \overline{s}=\sum \limits_{i=1}^b{F}_i\sum \limits_{j=1}^n{P}_{i,{B}_j}\sum \limits_{k=1}^m\frac{P_{i,{Z}_k}{B}_j}{R_k} $$

where Fi is the access frequency of block i, for 1 ≤ ib, \( {P}_{i,{B}_j} \) is the probability that the size of block i is Bj, and \( {P}_{i,{Z}_k} \) is the probability that this block is assigned to zone Zk. The variance of service time is:

$$ {\sigma}_s^2=\sum \limits_{i=1}^b{F}_i\sum \limits_{j=1}^n\sum \limits_{k=1}^m{P}_{i,{B}_j}{P}_{i,{Z}_k}{\left({s}_{j,k}-\overline{s}\right)}^2 $$

Three approaches are proposed in [5]: RP, MTP, and MVP. RP (Random Placement) assigns blocks to the zones in a random manner. MTP (Maximizing Throughput Placement) sorts blocks based on their size and frequency of access (Fi × Bi). The blocks are assigned to the zones sequentially starting with the fastest zone, i.e., block i with the highest Fi × Bi value is assigned to the fastest zone. With MVP (Minimizing Variance Placement), a block of size Bi is placed on the zone Zj (with Rj) which has the closest \( \frac{B_i}{R_j} \) value to the average block reading time \( \left({\overline{T}}_B\right) \):

$$ {\overline{T}}_B=\frac{average\, block\, size}{average t\, transderrate}=\frac{\frac{1}{n}\sum_{i=1}^n{B}_i}{\frac{1}{m}\sum_{i=1}^m{R}_i} $$

Performance studies in [5] demonstrate that both MTP and MVP are superior to RP. MVP outperforms MTP regarding the average service time and/or variance of service time. One advantage of MVP is that it is not sensitive to the access frequency of objects.

Data Placement Across Disk Drivers

The bandwidth of a single disk is insufficient for the multimedia applications that strive to support thousands of simultaneous displays. One approach is to employ a multi-disk architecture. Assuming a system with D homogeneous disks, the data is striped across the disks in order to distribute the load of a display evenly across the disks [2, 3, 8].

The striping technique is as follows (Fig. 2). First, the disks are partitioned into k disk clusters where each cluster consists of d disks: \( k=\frac{D}{d} \). An object X is partitioned into f blocks, X1, X2,…, Xf, and the blocks of X are assigned to the k disk clusters in a round-robin manner, starting with an arbitrarily chosen disk cluster and zone, for example, zone Zj in disk cluster Ci. In a disk cluster, each block of X, Xi, is declustered [7] into d fragments, Xi,j, where each fragment is assigned to a different disk in the disk cluster. As shown in Fig. 2, the X0 block is assigned to the disk cluster C0, and its two declustered fragments, X0,0 and X0,1 are assigned to the zone Z0. Note that the fragments of a block need to be assigned to the same zone on the d disks in the disk cluster where the block is assigned to. In the retrieval of objects, one zone of all disks in a disk cluster is active per time period. To display object X of Fig. 2, it needs to access zone Z0 in disk cluster C0, when the disk cluster is idle, followed by accessing zone Z1 in disk cluster C1. This process repeats to retrieve/display all blocks of the object X.

Multimedia Data Storage, Fig. 2
figure 1358figure 1358

Three clusters with two logical zones per cluster (Fig. 12 in [4])

Key Applications

Multimedia information systems have emerged as an essential component in many application domains ranging from library information systems to entertainment technology. The data storage management is the basis to support a continuous display of multimedia objects.

Cross-References