Patent ID: 8407448

Claim:
A system for performing an I/O in a storage virtualization environment, the system comprising: a storage server in the storage virtualization environment, including a mapping service, wherein the storage server in communication with the mapping service organizes one or more storage objects as a set of related objects indicating a portion of data that is shared among the one or more storage objects; a data storage system in the storage virtualization environment, wherein the data storage system in communication with the storage server provides a pool of storage resources to the storage server for storing the one or more storage objects as a set of virtual devices that share from the pool of storage resources; and a client of the storage server including a mapping client for the mapping service and a data cache, wherein the client of the storage server in communication with the storage server and the data storage system presents a storage object of the one or more storage objects as a logical addressable storage object to one or more applications running on the client of the storage server and the mapping client provides the one or more application a mapping between a logical addressable storage object to its physical location on the data storage system and uses the data cache to store the physical location and contents of the one or more storage objects; wherein the one or more storage objects is represented by one or more files; wherein the storage server is represented by a file server in communication with the data storage system; wherein the data storage system provides the logical disk storage to the file server for storing the one or more files; wherein the one or more files are organized as a version set by the file server indicating a set of physical blocks that are shared among the one or more files; wherein the one or more files organized as the version set represents the logical disk storage for respective virtual machines of a group of one or more virtual machines in the storage virtualization environment; and wherein the version set is a sparse snapshot of the file of the one or more files.