A computer-readable storage medium storing a program used to direct a computer to control processes of dividing redundant data into a plurality of volumes in a system comprising storage units scattered through a network, and distributing and storing volumes in a plurality of storage units, comprising:
- computing an evaluation value indicating desirability of each of the scattered storage units to be used based on a bandwidth, a communications cost, and a physical distance between a node to which a write request is issued and a storage unit;
- and
- selecting a plurality of storage units as an optimum storage set from among the scattered storage units based on the evaluation value.