A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage...

35
A Comprehensive Model of Tertiary-storage Jukeboxes Maria Eva Lijding, Sape Mullender, Pierre Jansen Distributed and Embedded Systems Group (DIES) Fac. of Computer Science, University of Twente P.O.Box 217, 7500AE Enschede, The Netherlands [email protected] 9th October 2002 Abstract This paper presents an analytical hardware model for tertiary-storage jukeboxes. A jukebox can store large amounts of data in a cost-effective way, which makes it eminently suitable for applications that handle large amounts of continuous-media files, large databases and backups. However, to use a jukebox effectively it is important to schedule the jukebox resources. In order to build accurate schedules we need good predictions of the jukebox performance, which are provided by the hardware model. We also use this model to simulate jukeboxes. 1 Introduction A jukebox, also called a Robotic Storage Library (RSL), is a large tertiary stor- age device whose removable storage media (RSM) 1 —e.g. CD-ROM, DVD-ROM, magneto-optical disk, tape—are loaded and unloaded from multiple drives by one or more robots Jukeboxes provide cost-effective near-line storage. A jukebox can store a large amount of data, which makes it eminently suitable for applications large amounts of continuous-media files, large databases and backups. They are especially useful for accessing data which is not very frequently accessed or very bulky and therefore keeping it on-line, in secondary storage, is too expensive. In order to use a jukebox effectively it is important to schedule the jukebox resources. On the one hand, a jukebox is not a random-access device: the RSM switching times are in the order of seconds or tens of seconds, which implies that multiplexing between two files stored in different RSM is many orders of mag- nitude slower than doing the same in secondary storage. On the other hand, the 1 The acronym RSM stands both for the singular and the plural. 1

Transcript of A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage...

Page 1: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

A Comprehensive Model of Tertiary-storageJukeboxes

Maria Eva Lijding, Sape Mullender, Pierre JansenDistributed and Embedded Systems Group (DIES)

Fac. of Computer Science, University of Twente

P.O.Box 217, 7500AE Enschede, The Netherlands

[email protected]

9th October 2002

Abstract

This paper presents an analytical hardware model for tertiary-storagejukeboxes. A jukebox can store large amounts of data in a cost-effectiveway, which makes it eminently suitable for applications that handle largeamounts of continuous-media files, large databases and backups. However,to use a jukebox effectively it is important to schedule the jukebox resources.In order to build accurate schedules we need good predictions of the jukeboxperformance, which are provided by the hardware model. We also use thismodel to simulate jukeboxes.

1 Introduction

A jukebox, also called a Robotic Storage Library (RSL), is a large tertiary stor-age device whose removable storage media (RSM)1—e.g. CD-ROM, DVD-ROM,magneto-optical disk, tape—are loaded and unloaded from multiple drives by oneor more robots

Jukeboxes provide cost-effective near-line storage. A jukebox can store a largeamount of data, which makes it eminently suitable for applications large amountsof continuous-media files, large databases and backups. They are especially usefulfor accessing data which is not very frequently accessed or very bulky and thereforekeeping it on-line, in secondary storage, is too expensive.

In order to use a jukebox effectively it is important to schedule the jukeboxresources. On the one hand, a jukebox is not a random-access device: the RSMswitching times are in the order of seconds or tens of seconds, which implies thatmultiplexing between two files stored in different RSM is many orders of mag-nitude slower than doing the same in secondary storage. On the other hand, the

1The acronym RSM stands both for the singular and the plural.

1

Page 2: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

resources in the jukebox—robots, drives and RSM—are shared and require exclu-sive use, which creates the potential for resource-contention problems.

To schedule the resources, we need to predict how long the operations will take.We obtain these predictions using the hardware model, which we also use to timethe jukebox simulator. The scheduler basically needs to know the time required toload an RSM in a drive, read data from the RSM and unload it. Computing thesetimes is not straightforward. Many factors are important as the type of RSM, thedrive, the jukebox robotics, the number of robots in the jukebox and the location ofthe shelves and drives in the jukebox. The hardware model has separate sub-modelsfor the RSM, the drives, the robots and the jukebox. Together, the sub-models candescribe any type of jukebox architecture.

The first step to build a jukebox model is to understand how the hardware be-haves. Therefore, in the next section gives an overview of jukebox technology, andoptical and magneto-optical storage media. Our focus is on these types of storagemedia, because they allow easier random access to the data than magnetic tapes.Section 3 presents the hardware model. The model is analytical and not simulated,as proposed by Ruemmler et al. [17], because in situations when the time of theexecution is important the scheduler must use the worst-case time. Additionally,our jukebox simulator can simulate operations in time in an accurate fashion us-ing this model. The simulator keeps track of time and the operations performedon the hardware. For example, the simulator can decide if a disc in a drive needsspinning up or if it should still be spinning after the last operation performed. Sec-tion 4 presents a validation of the model. Finally Section 5 concludes the paperand discusses some future work.

2 Jukebox Technology

Tertiary-storage jukeboxes are composed of the following hardware:

Removable Storage Media (RSM) where the data is stored. The RSM are storedin shelves, also called slots.

Drives to read the data from the RSM.

Robots to move the RSM from the shelves to the drives and vice-versa.

Figure 1 shows the architecture of a generic jukebox with four drives and onerobot. The data from the drives can be transferred directly to secondary storage orto memory through a high-bandwidth connection. Although the figure shows allthe drives using the same bus, they could be attached to different buses.

There are jukeboxes for different type of RSM. Older jukeboxes used mainlymagnetic tape. Newer jukeboxes, instead, use optical discs—CD-ROM, DVD-ROM, DVD-RAM—and magneto-optical disc. We are mainly concerned withjukeboxes for optical and magneto-optical discs, because discs are better suited

2

Page 3: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Shelves Robot Drives

Figure 1: Architecture of a generic jukebox with four drives and one robot.

for random access than tapes. Furthermore, the discs can be loaded and unloadedfaster than tapes (see 2.2).

Most optical jukeboxes are able to store different kind of optical discs—CD-ROM, DVD-ROM and DVD-RAM—which can be read using the same drives,because most optical drives can read ’earlier’ disc technologies. Most DVD-ROMdrives can read CD-ROM and the DVD-RAM drives can read both CD-ROM andDVD-ROM. However, the performance of a drive differs when using different typesof discs. For example, the transfer and access speed of DVD-ROM drives is differ-ent when reading DVD-ROM and CD-ROM. There may even be a difference whenreading CD-ROM with different reflective layers and dyes.

A jukebox can be equipped with different drive types, leading to configurationsin which some RSM can only be read by a subset of the drives. An example of sucha situation is a jukebox with two DVD-ROM drives and two DVD-RAM drives.The DVD-ROM stored in the jukebox can be read with any of the drives, but theDVD-RAM can only be read with the DVD-RAM drives. Such a situation can arisefor example from gradual upgrades of the jukebox hardware.

The number of shelves is between one and two orders of magnitude bigger thanthe number of drives. The time needed to switch the RSM loaded in a jukebox is inthe order of seconds. In optical jukeboxes, the average switch time is in the orderof tens of seconds, while in tape jukeboxes it can reach hundreds of seconds.

Table 1 provides some characteristics of some jukeboxes available at present inthe market. The data was taken from the product specifications of the manufactur-ers [21, 22, 12, 5, 16, 7, 2, 13, 19].

The switch time does not take into account the time needed to spin-down theRSM loaded, eject the RSM, close the drive once the new RSM is loaded andrecognize the RSM. However, the time needed to perform these activities shouldnot be ignored. For example, when using DVD-ROM the recognition time plus thetime needed to close the drive is approximately 12 seconds.

3

Page 4: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Model RSM type Robots Shelves DrivesRobot switchtime (sec.)

DVD 1400 CD-ROM 1600 48(ASM) DVD-ROM 1(a) 1696 24 6–12

DVD-RAM 1720 181744 12

MC-8600U CD-ROM 600 6(JVC) DVD-ROM 1 550 9 avg. 10

DVD-RAM 500 12NSM6000 CD-ROM 605 1

(DISC) DVD-ROM 1 515 7 avg. 6DVD-RAM 410 14

DRM-7000 CD-ROM 720 2(Pioneer) DVD-ROM 1(b) 570 8 ≤9

370 16D480 CD-ROM

(Plasmon) DVD-ROM 1(a) 440 2,4,6 avg. 4DVD-RAM

smartDAX700 CD-ROM(DAX) DVD-ROM 1(b) 720(c) 4 avg. 7

DVD-RAMSA-1600 DVD-RAM 436 2–16(Kubota) (in cartridge) 1 904 2–32 6.5–10

1840 2–64AV-1450 CD-ROM(Asaca) DVD-ROM 1(a) 1100–1450 1–24 avg. 3.5

DVD-RAMOrion D1050 (Disc) Magneto Optical 1(a) 910–1050 4–32 N/A

G638 (Plasmon) Magneto Optical 1(a) 638 6,10,12 avg. 6.42200mx (HP) Magneto Optical 1 238 4,6,10 avg. 6.5

Table 1: Hardware specification of some commercial jukeboxes. Notation: (a) Therobot may use a dual picker. (b) The robot cannot handle double-sided RSM. (c)The jukebox does not provide removable magazines.

4

Page 5: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Some jukeboxes have a dual-picker which allows the robot to carry two discs atthe same time. The robot can unload a drive and immediately load a the new disc.Most of the optical jukeboxes presented are capable of using double-sided DVD-ROM and DVD-RAM by turning them around. The turning is generally done whilemoving the disc between the slot and the drive.

In many jukeboxes a bigger number of drives implies that less RSM can bestored. In the case of the NSM series, each additional drive reduces the numberof shelves by 15. In the case of the ASM jukeboxes the drives can only be addedin blocks of fixed size. A block with 6 drives reduces the number of shelves by24. In the case of the JVC jukeboxes, the drives can be added in blocks of 3 drivesand each block reduces the number of shelves by 50. The Pioneer jukebox can beconfigured with even number of drives ranging from 2 to 16 drives. Each pair ofdrives added reduces the number of RSM by 50. In most jukeboxes the RSM isstored in removable magazines. The magazines vary in size from 10 to 50 discs,depending on the jukebox. Most jukeboxes provide the possibility to import andexport one RSM through a mailbox as well.

Two important parameters defining the quality of the jukebox is the mean timebetween failure and the time needed to recuperate from a failure. Most jukeboxspecifications provide these values, however the specification of the smartDAX700does not. We do not find this surprising as our experience with this jukebox indi-cates that the mean time between failures is small and recuperating from failuresgenerally involves strong manual intervention.2

The way in which the shelves and drives are placed in the jukebox varies con-siderably between the different models. In some cases the shelves and drives areplaced as in a shelf or matrix, e.g. ASM jukeboxes. In other they are placed in aconcentric fashion around the robotic arm, e.g. DAX jukeboxes. Some jukeboxesare built like big PC-towers and the shelves and drives are in two columns at thefront and end of the tower, e.g. JVC jukeboxes. The drives are generally at thebottom of the jukebox. In some jukeboxes, that space can be used either to putdrives or slots, and therefore increasing the number of drives reduces the numberof shelves. The robot mechanism also differs between different models, mainlydependent on the way the shelves and drives are placed.

2.1 Optical and Magneto-optical Discs

The data on an optical disc is stored using indentations on a polycarbonate plasticplastic layer and read using a very low power laser. The indentations are called pits.The areas around the pits are called lands. The pits and lands do not corresponddirectly to 1’s and 0’s to avoid having very small artifacts on the disc. Instead amodulation scheme is used that encodes a byte of data (8 bits) into into a largernumber of channel bits, allowing the pits and lands to be longer. The originalscheme called eight-to-fourteen (EFM) encodes eight bits into fourteen channel

2Manual intervention in this case includes getting ones hands and arms deep into the jukebox.

5

Page 6: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Track

Pitch

Figure 2: The data is stored in a spiral.

bits. Additionally three extra channel bits are added to the fourteen to ensure thatthe pit length is never shorter than three or longer than eleven channel bits. DVD-ROM uses a eight-to-sixteen modulation scheme.

The basic CD (compact disc) is 120mm in diameter and is basically a 1.2mmsandwich of three coatings: a back layer of clear polycarbonate plastic, a thin sheetof aluminum and a lacquer coating to protect the disc from external scratches anddust. There are multiple derivatives of this simple ’disc definition’. The two mainderivatives are CD-ROM (compact disc read only memory) and DVD-ROM (dig-ital versatile disc), with their write-once and rewrite versions. The DVR (digitalvideo recorder) or ’Blu-ray Disc’ [10], which uses blue-laser technology to offer27GB per layer of storage capacity, is expected to appear in the market soon. Al-though all these disc types are based on the same basic disc, the capacity they offervaries considerably.

The data is stored in a spiral track circling from the inside to the outside ofthe disc. With each rotation the radius of the spiral grows with a constant amountcalled track pitch. Figure 2 shows a representation of the spiral and a track in thedisc.

A player reads information from disc’s spiral track of pits and lands, startingfrom the center of the disc and moving to the outer edge. It does this by firingan infrared laser. The reflected light passes through a prism and onto a photo-sensor, the output of which is proportional to the amount of light it receives. Lightreflected from a pit is 180 degrees out of phase with the light from the lands, andthe differences in intensity are measured by the photo-electric cells and convertedinto electrical pulses.

6

Page 7: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Figure 3: Surface of a CD-ROM (left) and a DVD-ROM (right).

A magneto-optical disc (MO) is a read/write disc that combines magnetic andoptical technologies. It uses laser light to enable a relatively large magnetic writehead at a large flying height to write small magnetic domains.

The magnetic coating used on MO media is designed to be extremely stableat room temperature, making the data unchangeable unless the disc is heated toabove a temperature level called the Curie point (approx. 200 C). Once heatedthe magnetic particles can easily have their direction changed by a magnetic fieldgenerated by the read/write head. Information is read using a less powerful laser,making use of the Kerr Effect, where the polarity of the reflected light is altereddepending on the orientation of the magnetic particles.

A DVD-RAM uses phase-change recording technology. The layer where thedata is recorded has the property that it can make transitions between amorphousand crystalline states by controlled heating and cooling [18]. The medium is inpolycrystalline state during the reading. Recording is done by rapidly heating thematerial with a laser and letting it cool quickly to the amorphous state. To re-vert to the polycrystalline state, the alloy is heated to a temperature just above itscrystallization point.3

The type of media determines the size of the pits and the track pitch. Thesmaller these values are, the more data can be stored on the same surface. Figure 3shows the surface of a CD-ROM and a DVD-ROM. The pits in a CD-ROM are0.5µm wide, between 0.83µm and 3µm long and 0.15µm deep. and the pitch is1.6µm. A DVD-ROM can store more data and, thus, the sizes are smaller. Thepits in a DVD-ROM have a minimum length of 0.4µm and the pitch is 0.74µm.These values are even smaller for Blu-ray Discs and can be sustained because ofthe use of blue-laser technology, instead of the red-laser used for CD-ROM andDVD-ROM.

3Except when explicitly mentioned we treat DVD-RAM as a normal part of the DVD-ROMfamily.

7

Page 8: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

The official storage capacity of a CD-ROM is 650MB, equivalent to 74 min-utes of audio. However through over-burning and reducing the track pitch, highercapacities can be obtained. Currently it is common to use 700MB (80 minutes),800MB (90 minutes) and 870MB (99 minutes) discs. There are other ways of in-creasing the capacity of CDs. The double density CD-R/RW, for example has acapacity of 1300MB. In this case the track pitch is 1.1µm and the minimum pitlength is 0.623µm.

DVD-ROM discs provide up to 17GB of storage. The data on a DVD-ROMcan be stored in one or two layers. A single layer disc can store 4.7GB per side.A double-layer disc can store 4.25GB on each layer, resulting in a storage capacityof 8.5GB per side. When using two layers, instead of one, the pit length is slightlybigger, 0.44µm, to avoid interference. The second layer can contain data recorded”backwards”, or in a reverse spiral track. With this feature, it takes only an instantto refocus a lens from one reflective layer to another. The data in the second layercan also be written from the inside to the outside. Additionally a DVD-ROM canstore data on both sides of the disc. The capacity of double sided discs is 9.5GBand 17GB respectively. The dissadvantage of double-sided disc is that they have tobe turned over.

Magneto-optical discs offer different capacities, varying from 128MB to 9.1GB.When using double-sided discs, these also have to be turned over. Magneto-opticaldisks have smaller seek times than optical discs, because the read/write head islighter than that of an optical disc.

There are many simple technology improvements which are not yet widelyused. One of them is the Calimetrics’ Multilevel (ML) Recording technology,which uses different depths of the pits in CD-ROM and DVD-ROM to store moreinformation at the same location. On a conventional optical disc only lands (0)and pits (1) are distinguished. At this moment ML recording uses 8 levels (0-7)allowing for storage of 3 bits at the same location. For conventional writable me-dia, the laser writes and reads a series of marks of uniform darkness or reflectivityon the disc. These marks are of different lengths and are used to encode data. Animportant feature of this technology is that manufacturers only have to replace onechip in their drive-designs. Conventional laser pickup units have an electrical out-put depending on the reflection of the disc measured at the current location. Theseanalogue values are translated into bits (0 or 1). In a ML-ready drive this decoder-chip translates these values in series of 3 bits if an ML-medium is detected.

2.1.1 Drive Technology

The first generation of single-speed (1X) CD-ROM drives were based on the designof audio CD drives, employing constant linear velocity (CLV) technology to spina disc at the same speed as an audio CD with a resulting bandwidth of 150KBps.Variable spin is necessary to cope with audio data, which is always read at single-speed, whatever the transfer rate for computer data. While audio discs have to be

8

Page 9: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

0

5

10

15

20

25

30

35

40

45

50

0 100 200 300 400 500 600

Spee

d (X

)

Offset (MB)

CLV

0

5

10

15

20

25

30

35

40

45

50

0 100 200 300 400 500 600

Spee

d (X

)

Offset (MB)

CAV

0

5

10

15

20

25

30

35

40

45

50

0 100 200 300 400 500 600

Spee

d (X

)

Offset (MB)

Z-CLV

0

5

10

15

20

25

30

35

40

45

50

0 100 200 300 400 500 600

Spee

d (X

)

Offset (MB)

P-CAV

Figure 4: Different optical drive technology. The graphics the transfer speed as afunction of the track read.

read at single-speed, there is no limit for the CD-ROM. Indeed, the faster the datais read off, the better.

The speed of a CD-ROM drive is normally denoted as ’nX’ and it means itprovides a maximum bandwidth of n 150KBps. The same terminology is usedfor DVD-ROM, except that in this case 1X is equivalent to 1250KBps, which isneeded to play MPEG-2 encoded video. At the moment of writing this dissertation,there are 16X DVD-ROM drives, which offer a maximum transfer speed of nearly20MBps and an average transfer rate speed of 14MBps.

Since there are more sectors on the outside edge of the disc than in the centerCLV uses a servo motor to slow the spin speed of the disc toward the outer tracksin order to maintain a constant data transfer rate over the laser read head. As thespeed of a CLV drive increases, access times often suffer as it becomes harder toperform the abrupt changes in spindle velocity needed to maintain a constant highdata transfer rate, due to the mass inertia of the disc itself.

The next step in the CD-ROM drive evolution was using constant angular ve-locity (CAV) to spindle the discs. A drive using constant angular velocity transfersdata at a variable rate while the drive spins at a constant rate, like a hard disk. Thisresults in increased data transfer rates as the head moves toward its outside edgeand reduced seek times .

9

Page 10: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

The first drives using CAV were using a mix of CLV and CAV called partialconstant angular velocity (P-CAV). In a P-CAV drive, CAV is used for readingclose to the center of the disc while the drive switches to CLV mode for readscloser to the outer edge. The main problems inherent in P-CAV drives is the needto monitor the head location and step the motor speed up and down. Full CAV wasnot used at the beginning for faster drives, because the chips were unable to handlespeeds faster than 16-speed data rates.

With the advent of full CAV drives, the speed boosted very fast. A CD-ROM56X CAV drive, for example, spins the disc at 10000 rpm, resulting in a band-width of 8400KBps in the outer tracks. A problem with spinning discs at such highspeeds is excessive noise and vibration, often including loud hissing noise causedby air being forced out of the drive casing by the spinning disc. Because the discis clamped at its center, the most severe vibration occurs at the outer edges of thedisc—at exactly the point where the decoding circuits have to handle the highestsignal rate. Some drives however have spindle motors with anti vibration mech-anisms to try to solve this problem. Another problem of spinning discs at evenhigher speeds is that they explode. The technicians of Atlas Copco AB [1] presentvery interesting experimental results showing how the discs explode at rotationspeeds of 28000 rpm .

Another technology is zoned constant linear velocity (Z-CLV), which splits thedisc into zones. Within each of these zones CLV is maintained. The advantageof this technology lies in better seek times, due to the fact that the spindle motordoesn’t need to spin up and down so much, when seeking across the disc. Thistechnology is specially popular for CD-ROM writers and DVD-RAM.

Figure 4 shows the transfer speed over a disc for the four drive technologiesdescribed. These technologies are used for CD-ROM, DVD-ROM, DVD-RAMdrives and all the WORM (write-once read many) and RW (read write) variations.

In 1998 Kenwood introduced True-X CD-ROM drives based on multi-beamtechnology. These drives could achieve very high transfer speeds using a CLVrotation system and got very good reviews, but there were many complaints fromusers. Finally, in 2000 Kenwood discontinued the True-X series.

Multi-beam technology uses multiple laser beams to read multiple tracks of thedisc at once, resulting in both higher transfer rates and lower rotational speeds. Adiffracted laser is used to illuminate the disc with 7 discrete beams. The centralbeam is used for focus and tracking in the same way conventional players work.The 7 beams are spaced evenly on both sides of the central beam and allow a multi-beam detector to pick up the data from 7 tracks.

The multi-beam technology has also been used by Afeey to build a 25X DVD-ROM drive, which can also read CD-ROM at 100X speed. This drive was shownin the Cebit 2001. However, no True-X DVD-ROM drive has yet appeared in themarket.

10

Page 11: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

2.2 Magnetic Tapes

For decades tapes have been the main tertiary storage medium. There high storagecapacities and low cost per megabyte made them appropriate medium for backup,which was the main application of tertiary storage. However, tapes are ill suited tobe used in applications where random access and real-time guarantees are needed,as is our case. Therefore, we consider it is not possible to build a flexible multime-dia archive based on tape technology.

The access time of tapes is very high, in the order of tens or hundreds of sec-onds, while the access time when using optical and magneto-optical disks is in theorder of tens of milliseconds. Additionally, predicting accurately the access timeand transfer time is very complex, if not impossible. The time needed for loadingand unloading a tape in a drive is much higher than for optical discs, generallytens of seconds. A reason for this is that many tapes have to be rewound beforeunmounting.

High bandwidths can be achieved with high-end hardware, however, the perfor-mance of this hardware does not justify its high price when compared with opticaldiscs, especially because the access time is still orders of magnitude higher. Lastbut not least, the wear tapes suffer from random access is considerable.

We do not present a profound analysis of tape technology. Through the yearsmuch has been written about magnetic tape and their performance. Hillyer et al. [8]and Chervenak [3] provide a good overview of tape technology. Johnson et al. [11]present a benchmark methodology for tapes. The PC technical guide [15] gives anon-line overview of current technology and products in the markets.

Magnetic tapes store data as small magnetized regions. The tape is composedof magnetic material deposited on a thin flexible substrate. The tape is rolled alonga reel. Therefore, the thinner the substrate the more tape can be stored in lessvolume. However, a thin substrate is more prone to distort and tear off easier whensubmitted to high accelerations and many start and stop operations.

Tapes are categorized by the track orientation and the tape width. The mostimportant track orientations are linear and helical. In a linear tape the data is storedin longitudinal tracks through the length of the tape. A popular recording varietyof linear tapes is serpentine tapes, in which the data is recorded in an ’S’ shape.The data is recorded along the length of the tape, then the direction is reversed andthe head shifts sideways to record another track. Helical scan tape drives wrap thetape around a cylinder that contains the read/write heads and rotates the cylinderrapidly while the tape is transported relatively slowly. Helical tapes provide largestorage capacities, because the track and linear density are high. They also providehigh transfer rates, because of the high relative speed of the head across the tapes.

Tapes are mainly designed to stream data. There is a start/stop problem when-ever the application interrupts the stream and then tries to resume it, the drive stopsreverses direction to position the heads in the inter-record gap, before it can resumethe read. A solution that many drives provide to this problem is that they go on

11

Page 12: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

reading and caching the data into secondary storage, which implies that secondarystorage buffering must be attached to the tape drive.

Estimating the locate (or access) time is extremely difficult when working withtapes. One reason is that if there is an error while writing a block of data, the blockis rewritten again in the next portion of the tape. This makes it difficult to predictthe exact location of the data on the tape. Worse still, when the drive tries to readthe faulty block it may try to reread it many times, before it concludes it is faultyand tries with the next block.

Hillyer et al. [9] present a model to estimate the locate (or seek) time on ser-pentine tapes. They show that performing this estimation is complex. One reasonfor the complexity is that the length of the tracks are not equal. Another reasonis that the drives store the location of particular blocks in the tape to which theycan jump when performing seeks. The drive uses the high-speed seek to jump to anear known block before the desired block and then reads the tape until it reachesthe desired block. They show that an individual model needs to be done for eachtape, which takes several hours, because using the model built for another tape mayresult in bad predictions. Therefore, there is not a unique locate time model for agiven tape drive technology, but there must be an individual model for each tape inthe jukebox. Estimating the locate time for linear tapes is easier, because the seektime is linear in the distance the tape must travel [11].

3 Model

We now present an analytical model to compute the time to perform each of thejukebox operations. Figure 5 shows the structure of the model. At the higher levelwe have the jukebox model that provides the higher level functions that computethe time to load and unload a disc and to read data from a disc. These times arecomputed using the specific model of drive and robot involved. As the behaviorof a drive varies depending on the type of disc loaded in it, the drive model usesdifferent drive behavior models to compute the times for each type of disc. Wemodel a robot as having independent motors to move in each axis in the jukebox,and having one or multiple pickers.

The rest of the section describes each part of the model in a bottom-up fashion.Subsection 3.1 presents the disc model. The model of the disc is used in Subsec-tion 3.2 to model the drives. Subsection 3.3 present the esentials of the robot andjukebox model. These models are described in further detail in Subsection 3.3.1for for a specific drive model.

In the rest of this section we use a mix of Z notation [20] and normal mathe-matica formulae to specify the functionality provided by the model.

12

Page 13: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Jukebox

Drive

Disc

DriveBehavior

Single LayerDisc

Robot

MotorPicker

Figure 5: Structure of the hardware model.

3.1 Disc Model

This section presents the model of an optical or magneto-optical disc. The maingoal of the model is to provide a mapping from an offset on the disc, given in bytes,to a track number. The drive model in turn uses the track number to compute theaccess time, transfer time, etc. The model is restricted to single-layer discs, becausethe extension needed to convert this model in a model for double-layer discs doesnot provide more insight into the issues that are relevant in the model.

SingleLayerDiscR0 : PhysicalSize

Rf : PhysicalSize

p : PhysicalSize

BS : Size

N : N

Tracks : N

length : TrackNumber → PhysicalSize

sumlength : TrackNumber → PhysicalSize

TL : PhysicalSize

BL : PhysicalSize

block : Offset → BlockNumber

track : BlockNumber → TrackNumber

size : TrackNumber → Size

13

Page 14: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

We model an optical disc by viewing the data as stored in concentric circlesinstead of a spiral and we show that this approximation is very accurate. Eachcircle represents a track. The exact model of the data stored is an Archimedes’spiral.

The model takes as parameters the inner and outer radius defining where thedata can be stored, represented as R0 and Rf respectively, the track pitch p, theblock size in bytes BS and the maximum number of blocks that can be stored in adisc.

We compute the number of tracks Tracks on the disc using the the inner andouter radius of the recordable area and the track pitch. The length of a track i,length(i), is a function of the distance from the inner radius. The length of thefirst x tracks sumlength(x) is simply the sum of the length of the tracks. There-fore, we can compute the total length of the recordable area of the disc TL assumlength(Tracks).

Tracks =Rf − R0

p(1)

length(i) = 2 π (R0 + i p) (2)

sumlength(x) =x

i=0

length(i) =x

i=0

2 π (R0 + i p)

= (x + 1) 2 π R0 + 2 π px (x + 1)

2= π p x2 + π (p + 2 R0) x + 2 π R0

(3)

TL = sumlength(Tracks) (4)

We now show that the length of the data track computed with the concentriccircles approximation is very near the exact length of the spiral when using CD-ROM. When using DVD-ROM the approximation is even better, because the trackpitch is smaller. The inner and outer radius of the CD-ROM are 22.5mm and58mm respectively, the track pitch is 1.6µm. Applying the formulae to the CD-ROM specification, we obtain the following results:

Tracks =58000µm − 22500µm

1.6µm= 22187

TL = π 1.6µm 221872 + π (1.6µm + 2 . 22500) 22187 + 2 π 22500

= 5.611249 109µm

While computing the exact length of the spiral we obtain a value 5.6113 109µm.The exact length of the spiral is computed as

TLexact =

∫ 2π Tracks

0

(p

2 πΘ + R0)2 + ((

p2 π

)2 dΘ (5)

14

Page 15: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

In most cases what we need to know is the track number of a given offset x inthe disc. The smallest part of data that can be accessed independently is a sector orblock [6]. Therefore, we compute the position of a particular byte as the position ofthe beginning of the block which contains the byte. Byte x belongs to block b x

BSc,

where BS is the block size in bytes. We compute the block length BL using thetotal length of the disc TL and the maximum number of blocks N that can bestored in the disc:

BL =TL

N(6)

And compute the track to which byte x belongs as the track where the blockthat contains x is. Let s be the block number of x.

s =sumlength(s)

BL(7)

s BL = π p track(s)2 + π (p + 2 R0) track(s) + 2 π R0 (8)

track(s) =

−π (p + 2 R0) +√

(π (p + 2 R0))2 − 4 π p (2 π R0 − s BL)

2 (π p + 2 π R0)

(9)

Finally we can also compute the size of a track x in bytes, size(x), in thefollowing way:

size(x) =length(x)

BLBS (10)

3.2 Drive Model

The goal of the model is to predict the time needed to transfer data and accessdata on a medium using a given drive. It must also predict the time needed toopen and close the drive, both when the drive is loaded and empty. It also predictsthe time it takes to spin-down the drive. This model covers the most importantdrive technologies—CAV and CLV. The other two technologies we discussed inSubsection 2.1.1—P-CAV and Z-CLV—are covered by simple extensions to thismodel.

The drives in a jukebox may be different and differ on the type of RSM theycan handle. When a drive can handle multiple types of media, the performancewith each type may be different. Therefore, we have a DriveBehavior for eachdrive model when handling the possible RSM types.

DriveModels : F(MediaType × DriveBehavior)

behavior : MediaType → DriveBehavior

TechnologyType ::= CAV | CLV

15

Page 16: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

DriveBehaviorD : SingleLayerDisc

technology : TechnologyType

ConstantV elocity : Speed

ωu : Acceleration

ωd : Acceleration

amove : Acceleration

tsettle : Time

Tspinup : Time

Tspindown : Time

Tinactive : Time

Tload : Time

Trecognition : Time

Teject : Time

stransfer : TrackNumber → Speed

srotate : TrackNumber → Speed

trotate : TrackNumber → Time

tchangespin : TrackNumber × TrackNumber → Time

tmove : TrackNumber × TrackNumber → Time

tseek : TrackNumber × TrackNumber → Time

ttransfer : Offset × Size → Time

taccess : Offset × Offset → Time

topen : Content → Time

tclose : Content → Time

(∀ track : TrackNumber •stransfer(track) = srotate(track) ∗ D.size(track) ∧technology = CLV ⇒ stransfer(track) = ConstantV elocity ∧technology = CAV ⇒ srotate(track) = ConstantV elocity)

(∀ source : Offset; dest : Offset •taccess(source, dest) =

tseek(D.track(D.block(source)), D.track(D.block(dest)))+trotate(D.track(D.block(dest))))

(∀ t0 : TrackNumber; t1 : TrackNumber •tseek(t0, t1) = max{tmove(t0, t1), tchangespin(t0, t1)})

The DriveBehavior gets the information about the disc from the model pre-sented in the previous subsection. If the drive uses CLV technology, the transferspeed stransfer is constant. Instead if the technology is CAV, the rotation speed

16

Page 17: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

srotate is constant. In one rotation the drive can read the data of a full track.Therefore we can compute the transfer speed if we know the rotation speed andvice-versa.

We will provide one equation to compute the transfer time, independently ofthe type of technology used. The equation uses the track where the transfer mustbegin, given by the offset, and the track where the transfer must end, given by theoffset plus the amount of bytes to read.

We model the size of bytes to read as the distance the head has to travel, whilereading the data under the head. There is a constant acceleration in the transfertime as the offset increases, therefore, we can use the formulae for computing thedistance and the acceleration of a uniformly accelerating vehicle.

acceleration =final speed − initial speed

time(11)

distance = initial speed time +acceleration time2

2(12)

⇒ time =2 distance

initial speed + final speed(13)

We use Equation 13 to compute the transfer time given the offset o and size sof data to transfer in the following way:

ttransfer(o, s) =2 s

stransfer(to) + stransfer(td)(14)

where

to = D.track(D.block(o))

td = D.track(D.block(o + s))

A P-CAV drive uses CAV technology to read the first k tracks and CLV technol-ogy read the other tracks. To represent a P-CAV drive we use the constant angularvelocity corresponding to a CAV drive and provide an extra parameter indicatingthe track number where the drive changes from CAV to CLV technology. We com-pute the transfer time as the sum of the transfer time of the bytes falling in thetracks read using CAV technology and the bytes falling in the tracks in which CLVis used.

Computing the transfer time for a Z-CLV drive, needs as parameter a list ofranges where each speed holds. This is an extension of the computation of thetransfer time for a CLV drive.

The access time is the time it takes from the start of a random read operationuntil the data starts to be read from the disc. To compute the access time we need toknow the position of the head at the time or origin track and the destination track.Given that the function to compute the access time taccess takes as parameters the

17

Page 18: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

offset of the last byte read and the offset of the next byte to read, we need tocompute the tracks corresponding to these offsets. The access time is computed asthe sum of the seek time to go from the origin to the destination, plus the rotationallatency at the destination track. This equation is shown in the Z-specification.

The rotational latency is the time spent waiting for the correct byte to rotateto a position under the head. The rotational latency is directly related to the discrotation speed. The latency is the time it takes to rotate the disc so that the desiredbyte passes under the reading head.

trotate(track) = s−1rotate(track) (15)

The seek time is the time needed to position the reading head at the appropriatetrack and settle once the track has been reached. The seek time involves the headmovement and the time needed to spin up or down the rotation speed of the motorin the case of CLV drives. In CLV drives different motor speeds are used to readdata from the disc. Therefore, the seek time of CLV drives in general higher thanthat of CAV drives.

When using a CLV drive, the rotation speed on the inner tracks is higher thanon the outer tracks. Moving between tracks implies accelerating or deceleratingthe rotation of the disc. The acceleration is called spin-up and occurs at an angularacceleration of ωu. The deceleration is called spin-down and occurs at an angularacceleration of ωd [4]. We compute the time it takes to change the spin speed usingthe following function:

tchangespin(t0, t1) =

{

srotate(t0)−srotate(t1)ωd

if t0 < t1srotate(t1)−srotate(t0)

ωuotherwise

(16)

The acceleration and deceleration values are in general not provided in thespecification of a drive. However, the manufacturers generally report the spin-down time (Tspindown) and spin-up time (Tspinup). The spin-down time is the timeit takes to stop the spindle motor. The spin-up time is the time it takes the drive tostart reading data again after it has spun down.

To prolong the lifetime of the mechanical parts in the drive, most high-speeddrives lower or stop the rotation of the disc after a period of inactivity. Some drivesmaintain a low stationary spinning speed to prevent high spin-up times. In mostcases the system administrator can set time after the last read when the drive spinsdown. We view this value as another parameter of the model called maximuminactive time (Tinactive).

We can compute the values of ωd and ωu acceleration needed to go from ro-tation speed 0 to full rotation speed or vice-versa. The maximum speed in a CLVdrive is needed for reading data from the inner tracks. We use the formula to com-pute the acceleration presented in Equation 11.

ωd =0 − srotate(0)

Tspindown

(17)

18

Page 19: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

ωu =srotate(0) − 0

Tspinup

(18)

In our system it is also relevant to compute the time it takes to spin up the discafter the drive has been idle for some time. In this case the rotation speed must alsogo from 0 to the rotation speed required to read the data from the appropriate track.We also need to compute the time it takes to spin down a disc in order to be able tounload it.

The other component of the seek time is the time to move the head. Moving thehead consists of an acceleration phase, a linear coasting phase and a decelerationphase. In a short seek the acceleration and deceleration phase dominate [8], so weconsider that the head accelerates until it reaches half the distance to move andthen decelerates. The acceleration and deceleration happen at amove. The distancethrough which the head accelerates is the same as the distance through which itdecelerates |t0−t1|

2 . Replacing appropriately in Equation 12 we derive the functionthat computes the time needed to move the head between two tracks tmove(t0, t1).Once the destination track is reached the head needs to settle on the track [17].Settling on the track requires tsettle time. We could also use the model propossedby Ruemmler et al. [17] for modeling long seeks on a hard disk and incorporatethe coast phase where the arm moves at maximum velocity.

tmove(t0, t1) = 2

2 |t0−t1|2

amove

+ tsettle = 2

| t0 − t1 |

amove

+ tsettle (19)

The head movement and the change of spin can be done simultaneously. There-fore, the seek time is the maximum time required to complete both tasks. Whenthe distance between the tracks is small, the time needed to move the head weightsmore and when the distance is big, the time needed to change spin does. TheZ-specification shows how the seek time tseek is computed.

In order to compute the time to load and unload a drive, we need to computethe time needed to open and close the drive, both when the drive is loaded andempty.

The close time (tclose) is the time needed to introduce the disc in the drive,either by pulling in the tray or pulling in the disc. Once the disc has been loaded,the drive starts spinning up the disc to find out the type of disc loaded in the drive.

The time it takes to recognize the type of disc loaded is called recognition time(Trecognition). The recognition depends on the type of disc loaded. Even withinthe same type of disc, the recognition time varies considerably. We could not findthe reason for these differences. Therefore, we use the highest recognition timewe could measure for the type of disc. In most drives the load time is low and therecognition time is high, while in some drive the time relation is inverted.

Another way of computing the recognition time is to make it a function ofthe disc loaded. To do this we need to provide a mapping from each disc in thejukebox to the recognition time. We use the unique identifier assigned to each disc

19

Page 20: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

in the jukebox as the parameter to the function. Given that this way of defining therecognition time is a function of the contents in the jukebox and not of the type ofmedia or technology used, we do not use in the model.

We compute the time needed to close the drive as:

tclose(content) =

{

Tload + Trecognition if content 6= ∅

Tload otherwise(20)

The eject time (Teject) is the time it takes eject the disc from the drive. If thedrive has a tray on which the disc is placed, then it is the time needed to open thetray. If the drive has a slot instead of a tray and the drive is empty, the eject time is0.

The drive first needs to spin down the disc before it can unload it. To computethe time needed to open the drive accurately we need as parameter the last trackthat was read and we need to know if the disc is spinning. We consider that this istoo detailed for the model, therefore, we compute the worst case time. The worstcase assumes that the disc is spinning at the maximum speed, which means that thelast track read was 0, which is precisely the definition of the spin-down time.

topen(content) =

{

Tspindown + Teject if content 6= ∅

Teject otherwise(21)

3.3 Jukebox and Robot Model

In most jukeboxes there is only one shared robot, which is able to load and unloadany RSM in the jukebox to any drive. In the presence of multiple robots, thereare different usage scenarios for the robots. We classify the robots according totheir functionality and scope. A robot can be specific for loading, be specific forunloading or be able to perform both loads and unloads.

RobotFunctionality ::= Loader | Unloader | LoaderUnloader

The robot model can compute the time needed to move an RSM between anytwo locations in the jukebox, the time needed to grab an RSM from a shelf ordrive, and the time needed to place an RSM in a shelf or drive. The device wherethe RSM must be grabbed from or placed is given by a location in the jukebox. InSubsection 3.3.1 we show in more details the model of the robot in the smartDAX.

Robottposition : Position × Position → Time

tgrab : Position → Time

tplace : Position → Time

function : RobotFunctionality

20

Page 21: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

JukeboxRobots : F RobotDrives : F DriveShelves : F Shelfm : N

r : N

s : N

scope : Robot → F Drive × F Shelf

getDrivePosition : DriveNumber → PositiongetShelfPosition : ShelfNumber → Position

getDrive : DriveNumber → DrivegetRobot : RobotNumber → Robot

ttransfer : DriveNumber × MediaType × Offset × Size → Timetaccess : DriveNumber × MediaType × Offset × Offset → Time

tunload : RobotNumber × DriveNumber × ShelfNumber × MediaType → Timetload : RobotNumber × DriveNumber × ShelfNumber × MediaType → Time

tmaxload : DriveNumber → Time

tmaxunload : DriveNumber → Time

#Robots = r#Drives = m#Shelves = s(∀ shelf : Shelf | shelf ∈ Shelves •

(∃ r1 : Robot; r2 : Robot | r1 ∈ Robots ∧ r2 ∈ Robots •(let sc1 == scope(r1) • (let sc2 == scope(r2) •(shelf ∈ second(sc1) ∧

(r1.function = LoaderUnloader ∨ r1.function = Loader)) ∧(shelf ∈ second(sc2) ∧

(r2.function = LoaderUnloader ∨ r2.function = Unloader))))))(∀ drive : Drive | drive ∈ Drives •

(∃ r1 : Robot; r2 : Robot | r1 ∈ Robots ∧ r2 ∈ Robots •(let sc1 == scope(r1) • (let sc2 == scope(r2) •(drive ∈ first(sc1) ∧

(r1.function = LoaderUnloader ∨ r1.function = Loader)) ∧(drive ∈ first(sc2) ∧

(r2.function = LoaderUnloader ∨ r2.function = Unloader))))))

∀ dn : DriveNumber; media : MediaType •(let drive == getDrive(dn) •(let sp == drive.behavior(media) •(∀ offset : Offset; size : Size •

ttransfer(dn, media, offset, size) = sp.ttransfer(offset, size)) ∧(∀ source : Offset; dest : Offset •

taccess(dn, media, source, dest) = sp.taccess(source, dest))))

21

Page 22: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

The scope of a robot is given by the set of drives and shelves it can serve. Werepresent the scope of a robot Ri as Di × S i, where Di is a subset of the drivesand S i is a subset of the shelves. If the set D i contains only one drive, then wecall robot i a dedicated robot. In a jukebox with dedicated robots, there must be asmany robots as there are drives

The goal of the jukebox model is to be able to predict the time needed to loadand RSM into a drive, read data from an RSM once it is loaded in a drive, andunload an RSM.

In our model the jukebox has m drives, r robots and s shelves. We model eachdrive and robot separately. In the model there are l robots capable of loading RSMinto drives and u robots capable of unloading them. The l robots for loading may bethe same as the u robots for unloading, as is the case in most jukebox architectures.The total number of robots is r.

All the data in the jukebox should be readable. Therefore, each RSM in thejukebox can be loaded and unloaded from at least one drive, and each drive can beloaded and unloaded by at least one robot. These conditions are expressed formalyin the Z specification.

The drives and shelves have fixed positions in the jukebox. The model usesthese positions to compute the time needed to move an RSM and to access a shelfand drive in order to place or grab an RSM. The functions getDrivePosition andgetShelfPosition provide the location of the devices. The robots generally have anidle position where they are parked when idle.

The jukebox model uses the drive model presented in the previous subsection.As we have already discussed, the performance of the drives depend on the type ofmedia handled. The functions ttransfer and taccess compute the transfer and accesstime for a drive and media combination.

In general the file systems used for tertiary storage media store the data sequen-tially, e.g. ISO-9660[14]. Therefore, reading a file implies reading a given numberof bytes starting at a given offset in the medium. However, if the file system uses amore complex way of storing the files, e.g. i-nodes, we can use the information ofthe file system to transform a request unit corresponding for a file or part of a fileto a set of request units required by this model.

The functions used to compute the time needed to load and unload a drive aretload and tunload, respectively. To compute these functions we use the model of therobot and the drive. The model also provides functions to determine the maximumand minimum load time for each drive and the maximum and minimum over allthe drives.

The way in which the robot is utilized depends strongly on the jukebox archi-tecture. Therefore, we are not able to present a general robot model as we do forthe drives. Instead, we present the model of the smartDAX700, because we wereable to validate it.

22

Page 23: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Figure 6: Arhitecture of the smartDAX700 jukebox. The right shows a top view ofthe jukebox.

3.3.1 Model of smartDAX700

The discs are stored as shown in Figure 6. There are 18 columns, which interleavein odd and even rows, and 40 rows. The robot is in the center and has a dual-picker.At the bottom there are four drives, one in each corner of the jukebox.

The position of each device—shelf, drive, mailbox, robot—is given by a ro-tational coordinate x, a vertical coordinate y, and the radius rad. The radius isrelative to the the center of the jukebox. The vertical coordinate is in the range[3000,155000], the rotational (or horizontal) coordinate is in the range [0,18000]and the radius is in the range [0,2100]. The firmware can provide the position ofeach device in the jukebox and the idle position of the robot. We have noticedhowever, that after reseting the jukebox, the value of the positions reported varyslightly.

Positionx : N

y : N

rad : N

The firmware is able only to control one picker, therefore we model it only withone picker. The picker is attached to a board. The board moves vertically along thearm and also rotates along the axis. There are two independent motors to performthese movements, the elevator and the rotator. After performing a load or unloadthe robot returns to a predefined idle position. The idle position is around (51160,6050, 0).

23

Page 24: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

DAXRobotRobotIdlePosition : Positiontmove : Position × Position → Timetcalibrate : Position × Position → Timetsettle : Timeelevator : Motorrotator : Motorpicker : Picker

function = LoaderUnloader∀ source : Position; dest : Position •

tmove(source, dest) =max{elevator.tmove(abs(dest.y − source.y)),

rotator.tmove(abs(dest.x − source.x))}+tcalibrate(source, dest) ∧

tposition(source, dest) = tmove(source, dest) + tsettle ∧tgrab(source) = picker.tgrab(source) ∧tplace(dest) = picker.tplace(dest)

The jukebox can be operated in two modes: user mode and operator mode.In user mode the jukebox performs transactions as moving a disc from a slot to adrive, or moving a disc between two slots. In operator mode, instead, any kind ofrobot movement can be performed using the coordinates in the jukebox.

When using the operator mode the robot can compute the time to move betweentwo positions tmove without taking into account the time to settle. We compute thetime to move as the maximum time it takes to any of the two motors to move thepicker in its corresponding axis, plus the time to calibrate the robot. We also usetmove to compute the time it takes to move the picker back to the idle position.When using the operator mode we use the function tposition that takes into accountthe time to settle.

The time to calibrate the robot depends on the source and destination of themovement. Performing multiple measurements we have determined that there aretwo main calibration areas in the jukebox. One calibration area is at the bottomof the jukebox in the range [3000,6700] and another calibration area is at the topof the jukebox in the range [146800,155000]. In these calibration areas the robottakes longer to calibrate. We compute the time to calibrate using a function wederived from performing curve fits. Basicaly, the time to calibrate is longer whenthe robot nears the limits of the vertical axis.

The motors are defined by the maximum velocity vmax and the acceleration a.The motor first goes into an acceleration phase until it reaches maximum velocity,it then moves at maximum velocity, until before reaching the destination when itstarts to decelerate.

24

Page 25: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Motorvmax : Speeda : Accelerationtmove : Distance → Time

To compute the time needed to move tmove(x) we first compute the time neededto reach maximum velocity tmax. Using this time we compute the distance coveredduring acceleration and deceleration dacc.

tmax =vmax

a(22)

dacc =a t2max

2(23)

tmove(x) =

{

2 xa x ≤ 2 dacc

2 tmax + x−2 dacc

vmaxotherwise

(24)

In order to pick-up/place a disc, the picker moves outwards toward the corre-sponding shelf or drive. The picker then grabs/places the disc using a robotic hand.Finally, the picker retracts again.

Pickertgrab : Position → Time

tplace : Position → Time

retractor : Motor

tdrop : Time

tpickup : Time

∀ pos : Position •tgrab(pos) =

retractor.tmove(pos.rad)+tpickup+retractor.tmove(pos.rad) ∧

tplace(pos) =retractor.tmove(pos.rad)+tdrop+retractor.tmove(pos.rad)

The jukebox enforces to perform the activities needed to load and unload adrive sequentially. Furthermore, after moving a disc it always returns the robotto the idle position. The execution of a load (unload) is done in the followingsequence:

1. Open drive.

2. Move robot from idle position to shelf (drive).

25

Page 26: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

3. Pick up disc from shelf (drive).

4. Move robot from shelf (drive) to drive (shelf).

5. Place disc on drive tray (shelf).

6. Close drive.

7. Move robot from drive (shelf) to idle position.

DAXJukeboxJukebox

robot : DAXRobot

Robots = {robot}

scope(robot) = (Drives, Shelves)

∀ rn : RobotNumber; dn : DriveNumber; sn : ShelfNumber;media : MediaType •(let drive == getDrive(dn) •(let sp == drive.behavior(media) •(let shelfPosition == getShelfPosition(sn) •(let drivePosition == getDrivePosition(dn) •

tunload(rn, dn, sn, media) =sp.topen(RSM)+robot.tposition(robot.IdlePosition, drivePosition)+robot.tgrab(drivePosition)+robot.tposition(drivePosition, shelfPosition)+robot.tplace(shelfPosition)+sp.tclose(∅)+robot.tmove(shelfPosition, robot.IdlePosition)

tload(rn, dn, sn, media) =sp.topen(∅)+robot.tposition(robot.IdlePosition, shelfPosition)+robot.tgrab(shelfPosition)+robot.tposition(shelfPosition, drivePosition)+robot.tplace(drivePosition)+sp.tclose(RSM)+robot.tmove(drivePosition, robot.IdlePosition)))))

4 Model Validation

This section shows that the model can be effectively used to model the hardware.It is not the goal of this dissertation to build a system specific for one jukebox, nor

26

Page 27: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

CAV CLVsrotate(rpm) 10500

stransfer(KBps) 1200ωu(rot/ sec2) 0.0505 0.115ωd(rot/ sec2) -0.0462 -0.13

amove(µm/ sec2) 4250 1600tsettle(sec) 0.01 0.06

Table 2: Parameters of the drives.

0.849

0.85

0.851

0.852

0.853

0.854

0.855

0.856

0.857

0 100 200 300 400 500 600

Tim

e (s

ec)

Offset (MB)

MeasuredEstimated

(a) CLV drive

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0 100 200 300 400 500 600

Tim

e (s

ec)

Offset (MB)

MeasuredEstimated

(b) CAV drive

Figure 7: Measured and computed time to read one megabyte.

to obtains the exact parameters of the hardware. Therefore, we have estimated theparameters using only simple methods. The parameters can be further refined ifneeded to provide a better fit to the hardware performance.

4.1 Drives

Given that the model presented can be used as it is for CAV and CLV drives, weshow the estimates and measurements of one CAV and one CLV drive. Table 2shows the paramters used. We obtained these parameters by performing curvefitting and using the specifications of the drives. The CAV drive is a 48X CD-ROM drive model ’LG CRD-8484B’ and the CLV drive is an 8X CD-ROM drive’CW-7520’.

Figure 7 shows the read time of both drives when reading one megabytesblocks. The time estimated for the CLV fits the measured time with an differenceof only one millisecond. In the case of the CAV drive, the difference is clearly big-ger, specially at the outer edge of the disc. All measurements we performed showa point were the performance of the drive degrades, but the point at which it occursdiffers, however being always in the outer tracks of the disc.

27

Page 28: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Elevator Rotator Retractorvmax (units/ sec) 70000 20000 10000

a (units/ sec2) 300000 35000 15000

Table 3: Parameters of the elevator, rotator and retractor motors.

Figures 8 and 9 show the access time when using a CAV and CLV drive, re-spectively. The parameters needed to compute the access time are not reported inthe specifications, so we derived from the estimated spin-up and spin-down times.So we derived the spin-up/-down acceleration and adjusted the head accelerationto fit the measurements.

4.2 Jukebox

Table 3 shows the parameters used for the elevetor, rotator and retractor motors.The maximum velocity and acceleration provided by the jukebox firmware. All theinteractions with the jukebox involve a constant time of approximately 0.16 sec.

Figure 4.2 shows how the model of the motors fits the measurements obtainedfrom the jukebox in operator mode. In this cases we move the picker in only onedirection, to measure the performance of each robot separately. The right-handside of the figure shows the error of the estimation.

Figure 4.2 shows how the measurements and the error of the estimate whencomputing the functions tmove and tposition for random positions in the jukebox.The estimate of the time to move presents the larger errors when the robot is movedinto the calibration area. The function to compute the time to calibrate tcalibrate

is more complex than when moving the robot in one direction. However, whencomputing the time to position this error is mascaraded by the time to settle. Ourestimate of the settle time tsettle is 0.5 sec.

Figure 4.2 shows how the model of the time to grab and place an disc on aslot, tgrab and tplace respectively, fit the measurements obtained from the jukeboxin operator mode. The estimate for the time to pick-up a disc, tpickup, is 3.045 sec,and the estimate for the time to drop a disc, tdrop, is 1.965 sec.

Finally Figure 13(a) shows the measured and estimated time to load and unloada drive. The estimate is in most cases far above the measured time. The reason forthis is that the time to open and close a drive varies considerably and we have totake the worst case for scheduling. Figure 13(b) shows the time to open the drivewhen the drive is empty and loaded. The variation in the time to open and emptydrive is big 0.8 sec. Figure 13(c) shows the measured time to close the drive. Whenthe drive is loaded the variation is nearly 1.5 sec.

28

Page 29: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

5 Conclusions and Future Work

In this paper we have presented a model of jukebox devices, especially focusingon optical and magneto-optical jukeboxes. We have shown that magnetic tapejukeboxes cannot be effectively used for performing random-access, because theswitching time is excessively high and predicting the access time is very complex,if not impossible.

The hardware model has separate sub-models for the RSM, the drives, therobots and the jukebox. Together, the sub-models can describe any type of jukeboxarchitecture. The model can handle jukeboxes where the drives are not identical.This allows the toolbox to deal with situations in which the hardware of the juke-box goes through gradual upgrades. The model can also handle jukeboxes withmultiple robots where robot has an associated functionality and scope.

We presented a validation of the model using the hardware available at ourgroup and have derived parameters that fit the hardware behavior accurately. How-ever, these parameters can be further refined to provide still more accuracy. In thefuture we should also like to validate the model using other jukeboxes and drives.

References

[1] Atlas Copco AB. The case of the exploding CD-ROM record.http://www.qedata.se/e js.htm.

[2] Asaca. Specification of the asaca jukeboxes. http://www.asaca.com.

[3] Ann Louise Chervenak. Tertiary Storage: An Evaluation of New Applica-tions. PhD thesis, Dept. of Comp. Science, University of California, Berkeley,December 1994.

[4] Simon de Groot. Scheduling real-time streams for heterogeneous storage me-dia. Master’s thesis, Department of Computer Science, University of Twente,2002.

[5] Disc. Specification of the disc jukeboxes. http://www.disc-storage.com.

[6] Standardizing Information and Communication Systems ECMA. Data inter-change on read-only 120 mm optical data disks (CD-ROM). Standard ECMA130, ECMA, June 1996.

[7] Hewlett-Packard. Specification of the HP jukeboxes. http://www.hewlett-packard.com/go/optical.

[8] Bruce K. Hillyer, Rajeev Rastogi, and Avi Silberschatz. Storage technology:Status, issues, and opportunities. Unpublished technical report.

29

Page 30: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

[9] Bruce K. Hillyer and Avi Silberschatz. On the modeling and performancecharacteristics of a serpentine tape drive. In Proc. of the 1996 ACM SigmetricsConference on Measurement and Modeling of Computer Systems, pages 170–179, May 1996.

[10] Hitachi. Large capacity optical disc video recording format ”blu-ray disc”established, February 2002.

[11] Theodore Johnson and Ethan L. Miller. Benchmarking tape system perfor-mance. In Proc. of Joint NASA/IEEE Mass Storage Systems Symposium,March 1998.

[12] JVC. Specification of the JVC jukeboxes. http://www.jcvpro.co.uk.

[13] Kubota. Specification of the kubota jukeboxes. http://www.kubota.co.jp.

[14] OSI. ISO-9660:1988 - Information Processing - Volume and file structure onCD-ROM for information interchange.

[15] PCTechGuide.

[16] Pioneer. Specification of the pioneer jukeboxes.http://www.pioneerelectronics.com.

[17] Chris Ruemmler and John Wilkes. An introduction to disk drive modeling.IEEE Computer, 27(3):17–28, 1994.

[18] Koichi Sadashige. Optical recording and recordable dvd overview. In Pro-ceedings of the Eighth NASA Goddard Conference on Mass Storage Systemsand Technologies Seventeenth IEEE Symposium on Mass Storage Systems,April 2000.

[19] DAX Archiving Solutions. Specification of the DAX jukeboxes.http://www.smartdax.com.

[20] J.M. Spivey. The Z Notation. C.A.R. Hoare series editor. Prentice Hall, sec-ond edition, 1992.

[21] ASM Mass Storage Systems. Specification of the ASM jukeboxes.http://www.asm-jukebox.de.

[22] ASM Mass Storage Systems. Switch time of the 1400 series. Personal com-munications with Cornelia Reinhards.

30

Page 31: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

04000

800012000

1600020000

Source Track

04000

800012000

1600020000

Destination Track

00.05

0.10.15

0.20.25Time (sec)

(a) Estimated

04000

800012000

1600020000

Source Track

04000

800012000

1600020000

Destination Track

00.05

0.10.15

0.2

0.25Time (sec)

(b) Measured

-0.14

-0.12

-0.1

-0.08

-0.06

-0.04

-0.02

0

0.02

0.04

-16000 -8000 0 8000 16000

Tim

e (s

ec)

Track distance

(c) Error estimate

Figure 8: Measured and computed access time for a CAV CD-ROM drive.

31

Page 32: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

Head MovementChange Spin

04000

800012000

1600020000

Source Track

04000

800012000

1600020000

Destination Track

0

0.1

0.2

0.3

0.4Time (sec)

(a) Estimated

04000

800012000

1600020000

Source Track

04000

800012000

1600020000

Destination Track

00.1

0.20.3

0.4

0.5Time (sec)

(b) Measured

-0.2

-0.16

-0.12

-0.08

-0.04

0

0.04

0.08

-16000 -8000 0 8000 16000

Tim

e (s

ec)

Track distance

(c) Error estimate

Figure 9: Measured and computed access time for a CLV CD-ROM drive.

32

Page 33: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

0

0.5

1

1.5

2

2.5

3

0 40000 80000 120000

Tim

e (s

ec)

Distance

Measured: ForwardMeasured: Backward

Estimated

(a) Elevator

-0.02

0

0.02

0.04

0.06

0.08

0.1

-80000 0 80000

Tim

e (s

ec)

Distance

(b) Error estimate elevator

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

0 4000 8000 12000 16000

Tim

e (s

ec)

Distance

Measured: ForwardMeasured: Backward

Estimated

(c) Rotator

-0.015

-0.01

-0.005

0

0.005

0.01

0.015

0.02

0.025

0.03

-16000 -8000 0 8000 16000

Tim

e (s

ec)

Distance

(d) Error estimate rotator

0.3

0.4

0.5

0.6

0.7

0.8

0.9

0 500 1000 1500 2000

Tim

e (s

ec)

Distance

Measured: ForwardMeasured: Backward

Estimated

(e) Retractor

-0.008

-0.006

-0.004

-0.002

0

0.002

0.004

0.006

0.008

-2000 -1000 0 1000 2000

Tim

e (s

ec)

Distance

(f) Error estimate retractor

Figure 10: Comparison between the performance of the motors and the estimationproduced by the model for the function motor.tmove .

33

Page 34: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

-80080Vertical Distance

(x1000)

-16 -8 0 8 16Horizontal Distance

(x1000)

00.5

11.5

22.5

3Time (sec)

(a) Measured time to move

-0.2

-0.1

0

0.1

0.2

0.3

0 40 80 120

Tim

e (s

ec)

Vertical Position of Destination (x1000)

(b) Error estimate time to move

-80080Vertical Distance

(x1000)

-16 -8 0 8 16Horizontal Distance

(x1000)

0.51

1.52

2.53

Time (sec)

(c) Measured time to position

-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

0.2

0 40 80 120

Tim

e (s

ec)

Vertical Position of Destination (x1000)

(d) Error estimate time to position

Figure 11: Comparison between the performance of the robot and the estimationproduced by the model for the function robot.tmove and robot.tposition.

0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

80 85 90 95 100 105 110 115 120

Tim

e (m

s)

Slot

Measured: GrabMeasured: PlaceEstimated: GrabEstimated: Place

Figure 12: Comparison between the performance of the picker and the estimationproduced by the model for the functions tgrab and tplace.

34

Page 35: A Comprehensive Model of Tertiary-storage Jukeboxes · A Comprehensive Model of Tertiary-storage Jukeboxes ... DVD-RAM 410 14 DRM-7000 CD-ROM 720 2 (Pioneer) DVD-ROM 1(b) 570 8 9

16

17

18

19

20

21

22

23

24

25

26

27

0 40000 80000 120000 160000

Tim

e (s

ec)

Vertical location slot

Measured: UnloadEstimated: UnloadMeasured: LoadEstimated: Load

(a) Time to load and unload

2200

2400

2600

2800

3000

3200

Tim

e (s

ec)

EmptyLoaded

(b) Measured time to open the drive

5000

6000

7000

8000

9000

10000

11000

Tim

e (s

ec)

EmptyLoaded

(c) Measured time to close the drive

Figure 13: Measured and computed time to load and unload a drive and details ofthe measured time to open and close the drive.

35