A storage system comprising a plurality of storing means and a data processing means configured to store data into the plurality of storing means and retrieve the data stored in the storing means, wherein: the data processing means includes: a distribution storage processing means configured to distribute and store a plurality of fragment data composed of division data obtained by dividing storage target data into plural pieces and redundant data for restoring the storage target data, into the plurality of storing means; a data location monitoring means configured to monitor a data location of the fragment data in the respective storing means and store data location information representing the data location; and a data restoring means configured to, when any of the storing means is down, regenerate the fragment data having been stored in the down storing means based on the fragment data stored in the storing means other than the down storing means and store said regenerated fragment data into the other storing means; characterized in that the data processing means also includes a data location returning means configured to, when the down storing means recovers, return a data location of the fragment data to the data location as represented by the data location information stored by the data location monitoring means, by using the fragment data stored in the storing means that has recovered. the data processing means includes: a distribution storage processing means configured to distribute and store a plurality of fragment data composed of division data obtained by dividing storage target data into plural pieces and redundant data for restoring the storage target data, into the plurality of storing means; a data location monitoring means configured to monitor a data location of the fragment data in the respective storing means and store data location information representing the data location; and a data restoring means configured to, when any of the storing means is down, regenerate the fragment data having been stored in the down storing means based on the fragment data stored in the storing means other than the down storing means and store said regenerated fragment data into the other storing means; characterized in that a distribution storage processing means configured to distribute and store a plurality of fragment data composed of division data obtained by dividing storage target data into plural pieces and redundant data for restoring the storage target data, into the plurality of storing means; a data location monitoring means configured to monitor a data location of the fragment data in the respective storing means and store data location information representing the data location; and a data restoring means configured to, when any of the storing means is down, regenerate the fragment data having been stored in the down storing means based on the fragment data stored in the storing means other than the down storing means and store said regenerated fragment data into the other storing means; characterized in that the data processing means also includes a data location returning means configured to, when the down storing means recovers, return a data location of the fragment data to the data location as represented by the data location information stored by the data location monitoring means, by using the fragment data stored in the storing means that has recovered.