A data storage apparatus has a plurality p of storage spaces for storing
sets of data. Each of the spaces has: available (unused) space x.sub.1 for
storage; a number x.sub.2 of data sets already stored; a number x.sub.3 of
channels available for transferring data to the space; and a number
x.sub.4 of times the space is scheduled to be used for reading out sets of
data therefrom. An allocation factor Qp=f(ai, xi) is calculated for each
space where ai are weighting factors ranking xi in order of importance. A
data set is allocated to the space having the "best" (e.g. lowest) value
of Qp at the time the data is to be allocated. Once allocation factors
determined, then data may be allocated according to usage indices
representing the ability of a space to store the data at the time of
allocation.