17.05.2014 Views

Matching Application Access Patterns to Storage Device ...

Matching Application Access Patterns to Storage Device ...

Matching Application Access Patterns to Storage Device ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

14 · <strong>Matching</strong> <strong>Application</strong> <strong>Access</strong> <strong>Patterns</strong> <strong>to</strong> S<strong>to</strong>rage <strong>Device</strong> Characteristics<br />

configurable parameters that must be manually tuned <strong>to</strong> a specific device [IBM<br />

Corporation 2000; McKusick et al. 1984; Shriver et al. 1998].<br />

2.3.1 Disk-specific knowledge<br />

Much recent related work has promoted zone-based allocation and detailed diskspecific<br />

request generation for small requests. The Tiger video server [Bolosky<br />

et al. 1996] allocated primary copies of videos <strong>to</strong> the outer portions of each disk’s<br />

LBN space in order <strong>to</strong> exploit the higher bandwidth of the outer zones. Secondary<br />

copies were allocated <strong>to</strong> the lower bandwidth zones. VanMeter [1997] suggested<br />

that there was general benefit in changing file systems <strong>to</strong> understand that different<br />

regions of the disk provide different bandwidths.<br />

By utilizing even more detailed disk information, several researchers have<br />

shown substantial decreases in small request response times [Chao et al. 1992; English<br />

and Stepanov 1992; Huang and cker Chiueh 1999; Wang et al. 1999; Yu et al.<br />

2000]. For small writes, these systems detect the position of the head and re-map<br />

data <strong>to</strong> the nearest free block in order <strong>to</strong> minimize the positioning costs [Huang<br />

and cker Chiueh 1999; Wang et al. 1999]. For small reads, the SR-Array [Yu et al.<br />

2000] determines the head position when the read request is <strong>to</strong> be serviced and<br />

reads the closest of several replicas.<br />

The Gamma database system [DeWitt et al. 1990] accessed data in tracksized<br />

I/Os by simply knowing the number of sec<strong>to</strong>rs per track. Unfortunately,<br />

simple mechanisms like this are no longer possible because of high-level device<br />

interfaces and built-in firmware functions. For example, zoned geometries and<br />

advanced defect management in current disks result in cylinders being composed<br />

of tracks with variable number of sec<strong>to</strong>rs (see Table 3.1). No single value for the<br />

number of sec<strong>to</strong>rs per track is correct across the device.<br />

Using disk drive track size <strong>to</strong> set the RAID stripe unit size improves I/O performance.<br />

Chen and Patterson [1990] developed a method for determining proper<br />

stripe unit for a disk array and concluded that a stripe unit near track size is<br />

optimal. Similar <strong>to</strong> the database case, however, a single value is not sufficient for<br />

modern multi-zoned disks; it does not realize the full potential of modern disk<br />

drives. Using values that exactly match track size, on the other hand, can do so as<br />

illustrated in Section 5.7.6. At the file system level, aligning access <strong>to</strong> stripe unit<br />

boundaries and writing full stripes avoids expensive read-modify-write operations<br />

for RAID 4 and RAID 5 configurations [Chen et al. 1994; Hitz et al. 1994].

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!