Applications that require random access to data incur delays due to mechanical disk rotation and head movement. Disk drive vendors and manufacturers of disk array products add cache memory in order to minimise these delays and to attempt to predict what data the host system will require next. Examples.
Applications that perform predictive access to data all to often fail to achieve the expected benefit from cache usage, especially at times of peak load when it is most needed, because there are too many simultaneous requests for data from different users. This results in the data that was predicted to be required often being lost before it is requested by the host so it has to be read again, resulting in another mechanical delay. This often leads to the situation where under moderate loads the system response is acceptable but under peak loads it appears to the users that the system has 'ground to a halt'. More examples.
In both cases caches are not totally effective as they are typically small in comparison to the size of the underlying storage and are usually split into a fairly small number of 'segments' (8 for a typical disk drive). As a result even if the data required is of only a moderately random nature the caches all to often provide little or no benefit.
With Solid State technology there are no mechanical delays so the time taken to access the data is consistent and very small (usually less than that of a cache hit on a conventional drive) regardless of where on the device the data is held. |