1. A computerized data storage system comprising: a. at least one storage device comprising a nonvolatile writable medium; b. a cache memory operatively coupled to the storage port and comprising a data storing area and a data management controller; c. a storage port, the storage port operable to connect to a host computer, receive and send I/O information required by the host computer, wherein the storage port is operable to receive a request to read data, and, in response to the request to read data, the storage port is operable to send the data stored in the data storing area of the cache memory and wherein the storage port is operable to receive a request to write data, and, in response to the request to write data, the storage port is operable to send the write data to the data storing area of the cache memory; d. a thin provisioning controller, the thin provisioning controller operable to provide a virtual volume comprising a virtual volume page, a capacity pool comprising a capacity pool page and manage a mapping between the virtual volume page and the capacity pool page; e. a data compression controller operable to perform a compression operation on the virtual volume page, and f. a data decompression controller operable to perform a decompression operation on the virtual volume page.