SlideServe
Menu
Préférences
© SlideServe · v2026

Data Storage (Chap. 11)

yardley-pittman avatar
57 diapositives · 749 Views · Oct 30, 2014

Data Storage (Chap. 11). Based on Hector Garcia-Molina’s slides. Outline. Hardware: Disks Access Times Example - Megatron 747 Optimizations Other Topics: Storage costs Using secondary storage Disk failures*. P. Typical Computer. M. C. Secondary Storage. Processor

Data Storage (Chap. 11) - slide 1
01 / 57Data Storage (Chap. 11)
1 / 17

Télécharger la présentation

Data Storage (Chap. 11)
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Data Storage (Chap. 11) Based on Hector Garcia-Molina’s slides

  2. Outline Hardware: Disks Access Times Example - Megatron 747 Optimizations Other Topics: Storage costs Using secondary storage Disk failures*

  3. P Typical Computer ... ... M C Secondary Storage

  4. Processor Fast, slow, reduced instruction set, with cache, pipelined… Speed: 100  500  1000 MIPS Memory Fast, slow, non-volatile, read-only,… Access time: 10-6 10-9 sec. 1 s  1 ns

  5. Secondary storage Many flavors: - Disk: Floppy (hard, soft) Removable Packs Winchester Ram disks Optical, CD-ROM… Arrays - Tape Reel, cartridge Robots

  6. Focus on: “Typical Disk” … Terms: Platter, Head, Actuator Cylinder, Track Sector (physical), Block (logical), Gap

  7. Top View

  8. “Typical” Numbers Diameter: 1 inch  15 inches Cylinders: 100  2000 Surfaces: 1 (CDs)  (Tracks/cyl) 2 (floppies)  30 Sector Size: 512B  50K Capacity: 360 KB (old floppy)  4000 GB

  9. Focus on: “Typical Disk” … Terms: Platter, Head, Actuator Cylinder, Track Sector (physical), Block (logical), Gap

  10. Summary of Disk Geometry…

  11. Disk Access Time block x in memory I want block X ?

  12. Disk latency = Seek Time + Rotational Delay + Transfer Time + Other

  13. Seek Time 3 or 20x Time x 1 N Cylinders Traveled

  14. Average Random Seek Time N N  SEEKTIME (i  j) S = N(N-1) j=1 ji i=1 “Typical” S: 10 ms  40 ms

  15. Rotational Delay Head Here Block I Want

  16. Average Rotational Delay R = 1/2 revolution “typical” R = 8.33 ms (3600 RPM)

  17. Transfer Rate:t • “typical” t: 1  3 MB/second • transfer time: block size t

  18. Other Delays • CPU time to issue I/O • Contention for disk controller • Contention for bus, memory “Typical” Value: 0

  19. So far: Random Block Access • What about: Reading “Next” block?

  20. If we do things right Time to get = Block Size + Negligible block t - skip gap - switch track - once in a while, next cylinder

  21. Rule of Random I/O: ExpensiveThumb Sequential I/O: Much less • Exp: 1 KB Block • Random I/O:  20 ms. • Sequential I/O:  1 ms.

  22. Cost for Writing is similar to Reading …. unless we want to verify! need to add (full) rotation + Block size t

  23. To Modify Block: (a) Read Block (b) Modify in Memory (c) Write Block [(d) Verify?] To Modify a Block?

  24. Block Address: • Physical Device • Cylinder # • Surface # • Sector

  25. An Example Megatron 747 Disk (old) • 3.5 in diameter • 3600 RPM • 1 surface • 16 MB usable capacity (16 X 220) • 128 cylinders • seek time: average = 25 ms. adjacent cyl = 5 ms.

  26. 1 KB block = 1 sector • 10% overhead between blocks • capacity = 16 MB = (220)16 = 224 • # cylinders = 128 = 27 • bytes/cyl = 224/27 = 217 = 128 KB • blocks/cyl = 128 KB / 1 KB = 128

  27. 3600 RPM 60 revolutions / sec 1 rev. = 16.66 msec. One track: ... Time over useful data:(16.66)(0.9)=14.99 ms. Time over gaps: (16.66)(0.1) = 1.66 ms. Transfer time 1 block = 14.99/128=0.117 ms. Trans. time 1 block+gap=16.66/128=0.13ms.

  28. Burst Bandwith (BB) 1 KB in 0.117 ms. BB = 1/0.117 = 8.54 KB/ms or BB =8.54KB/ms x 1000 ms/1sec x 1MB/1024KB = 8540/1024 = 8.33 MB/sec

  29. Sustained bandwith(over track) 128 KB in 16.66 ms. SB = 128/16.66 = 7.68 KB/ms or SB = 7.68 x 1000/1024 = 7.50 MB/sec.

  30. T1 = Time to read one random block T1 = seek + rotational delay + TT = 25 + (16.66/2) + .117 = 33.45 ms.

  31. Suppose OS deals with 4 KB blocks ... T4 = 25 + (16.66/2) + (.117) x 1 + (.130) X 3 = 33.83 ms [Compare to T1 = 33.45 ms] 1 3 4 2 1 block

  32. TT = Time to read a full track (start at any block) TT = 25 + (0.130/2) + 16.66* = 41.73 ms to get to first block * Actually, a bit less; do not have to read last gap.

  33. The NEW Megatron 747 (pp. 518 and pp. 521) • 8 platters, 16 Surfaces, 3.5 Inch diameter • 214 = 16,384 Tracks/surface • 128 Sectors/track • 212 = 4096 Bytes/sector • Gaps represent 10% of the track.

  34. The NEW Megatron 747 (pp. 518 and pp. 521) • The disk rotates at 7200 RPM; i.e., it makes one rotation in 8.33 millisecond. • To move the head assembly between cylinders takes one millisecond to start and stop. • It takes one millisecond for every 1000 cylinders traveled.

  35. The minimum, Maximum, and average times to read a 16,384-byte block?

  36. Minimum and Maximum Time

  37. Average Time

  38. Assignment 3 is coming soon!

  39. Outline • Hardware: Disks • Access Times • Example: Megatron 747 • Optimizations • Other Topics • Storage Costs • Using Secondary Storage • Disk Failures here

  40. Optimizations(in controller or O.S.) • Disk Scheduling Algorithms • e.g., elevator algorithm • Track (or larger) Buffer • Pre-fetch • Arrays* • Mirrored Disks • On Disk Cache

  41. Double Buffering Problem: Have a File • Sequence of Blocks B1, B2 … Have a Program • Process B1 • Process B2 • Process B3 ...

  42. Single Buffer Solution (1) Read B1  Buffer (2) Process Data in Buffer (3) Read B2  Buffer (4) Process Data in Buffer ...

  43. Say P = time to process/block R = time to read in 1 block n = # blocks Single buffer time = n(P+R)

  44. process process B C B A A A B C D E F G done done Double Buffering Memory: Disk:

  45. Say P  R P = Processing time/block R = IO time/block n = # blocks What is processing time? • Double buffering time = R + nP • Single buffering time = n(R+P)

  46. Unfortunately... • Big Block  Read in more useless stuff! • and takes longer to read Block Size Selection? • Big Block  Amortize I/O Cost