The Full Stack, Part I
I don't think I agree with the conclusion that performance will "depend almost completely on the random seek time."  You can store the entire 10TB library on 5 2TB spinning drives.  5 drives can easily serve up 500mbps (that's only 60MB/s, one drive territory).  So, on to seeking.2000 streams, 5 drives, that's 400 per disk.  Let's say we have the world's worst disks, that can only do 10 seeks per second.  400 / 10 means we have to buffer 40 seconds of data per stream (per seek) and we have to read it in 0.1 seconds before moving to the next stream.  300kbps * 40s / 8 = 1500K of data.  1.5M / 60MB/s disk transfer takes 0.025 seconds, well under 0.1.I guess that's alluded to by "non standard prefetching", but I don't think it's that advanced.  Especially since in a streaming video application, the client software is already going to be doing buffering for you.  The bottleneck is bandwidth.Check my math please? :)