A method for storing and archiving point-in-time sets of a raw data set, the method being performed in an environment including at least one server on which the raw data set is stored, the method comprising: providing a first virtualization layer on a first computing resources pool of a first hardware subsystem, and the method being characterized by further comprising: running a storage application on the first virtualization layer, the storage application including a storage module and a recovery module, and the first virtualization layer presenting to the storage application a normalized representation of the computing resources pool so as to shield the storage application from actual hardware components (132, 134, 136, 138) of the computing resources pool; operating the storage application to generate point-in-time versions of a raw data set that is stored on one or more servers, wherein the point-in-time versions of the raw data set are smaller in size than the original raw data set being archived, and wherein the point-in-time versions and the storage application together constitute part of a first virtual machine; archiving copies of the storage application and point-in-time versions together, wherein the copies together constitute part of a virtual system in an archive data mechanism, wherein the virtual system includes a storage application that is a copy of the storage application and point-in-time versions of the raw data set that are copies of the point-in-time versions; and responsive to a request to restore the raw data set to a particular point in time, porting the virtual system from the archive data mechanism onto a second hardware subsystem so as to create part of a second virtual machine which includes a storage application that is copied from the storage application of the virtual system, and the storage application is shielded from hardware of the second hardware subsystem by a second virtualization layer. providing a first virtualization layer on a first computing resources pool of a first hardware subsystem, and the method being characterized by further comprising: running a storage application on the first virtualization layer, the storage application including a storage module and a recovery module, and the first virtualization layer presenting to the storage application a normalized representation of the computing resources pool so as to shield the storage application from actual hardware components (132, 134, 136, 138) of the computing resources pool; operating the storage application to generate point-in-time versions of a raw data set that is stored on one or more servers, wherein the point-in-time versions of the raw data set are smaller in size than the original raw data set being archived, and wherein the point-in-time versions and the storage application together constitute part of a first virtual machine; archiving copies of the storage application and point-in-time versions together, wherein the copies together constitute part of a virtual system in an archive data mechanism, wherein the virtual system includes a storage application that is a copy of the storage application and point-in-time versions of the raw data set that are copies of the point-in-time versions; and responsive to a request to restore the raw data set to a particular point in time, porting the virtual system from the archive data mechanism onto a second hardware subsystem so as to create part of a second virtual machine which includes a storage application that is copied from the storage application of the virtual system, and the storage application is shielded from hardware of the second hardware subsystem by a second virtualization layer. running a storage application on the first virtualization layer, the storage application including a storage module and a recovery module, and the first virtualization layer presenting to the storage application a normalized representation of the computing resources pool so as to shield the storage application from actual hardware components (132, 134, 136, 138) of the computing resources pool; operating the storage application to generate point-in-time versions of a raw data set that is stored on one or more servers, wherein the point-in-time versions of the raw data set are smaller in size than the original raw data set being archived, and wherein the point-in-time versions and the storage application together constitute part of a first virtual machine; archiving copies of the storage application and point-in-time versions together, wherein the copies together constitute part of a virtual system in an archive data mechanism, wherein the virtual system includes a storage application that is a copy of the storage application and point-in-time versions of the raw data set that are copies of the point-in-time versions; and responsive to a request to restore the raw data set to a particular point in time, porting the virtual system from the archive data mechanism onto a second hardware subsystem so as to create part of a second virtual machine which includes a storage application that is copied from the storage application of the virtual system, and the storage application is shielded from hardware of the second hardware subsystem by a second virtualization layer.