Patent ID: 7966296

Claim:
A storage system comprising: one or more storage controllers for storing file data, comprising data that has been sent from a host system and arranged in a plurality of files, each file having a size and attribute, that is to be compressed, wherein said one or more storage controllers comprise: a master unit responsive to a user input for setting a common compression ratio target value and performance target value in the storage system; a measurement unit for measuring a throughput value and compression ratio for each file; a statistical information management unit for managing a throughput value for each file as decided based on statistical information of previously compressed file data as a system performance value; a mode setting unit for setting for each file a compression mode of either (1) a system performance priority mode that terminates compression of said file data and gives priority to system performance or (2) a compression priority mode, indicating a level of priority given to compression, which is determined in relation to performance, that gives priority to compression of said file data based on a comparison between a system performance target value preset as a target value and said system performance value; a compression controller for compressing said file data in each file, based on said compression mode set with said mode setting unit; and a subsequent file compression mode decision unit which is executed, when the compression priority mode of a first file is set to a first priority mode, to change the compression priority mode of the first priority mode according to the conditions (a)-(d) below: (a) if the throughput value of the first file attains the performance target value of the system and the compression ratio of the first file attains the compression ratio target value, the first priority mode is changed to a second priority mode giving a priority to compression; (b) if the throughput value of the first file attains the performance target value of the system and the compression ratio of the first file fails to attain the compression ratio target value, the first priority mode is changed to a second priority giving a priority to performance; (c) if the throughput value of the first file fails to attain the performance target value of the system and the compression ratio of the first file attains the compression ratio target value, the first priority mode is changed to a second priority mode giving a priority to performance; and (d) if the throughput value of the first file fails to attain the performance target value of the system and the compression ratio of the first file fails to attain the compression ratio target value, the first priority mode is changed to a second priority mode giving a priority to compression.