The present invention is a method and system for associating metadata with user
data in a storage array in a manner that provides independence between metadata
management and a storage controller's cache block size. Metadata may be associated
with user data according to multiple fashions in order to provide a desired performance
benefit. In one example, the metadata may be associated according to a segment
basis to maximize random I/O performance and may be associated according to a stripe
basis to maximize sequential I/O performance.