Patent ID: 7984085

Claim:
A method comprising: creating, by a file server, a first and a second snapshot of a storage system; creating, by the file server, a first block map associated with the first snapshot, the first block map including a first number blocks of which the first snapshot is an oldest owner, wherein the first snapshot is the oldest owner of a block if the block is used by the first snapshot and not used by any snapshot older than the first snapshot, wherein the file server calculates the first number of blocks at a time the first snapshot is created and wherein the storage server updates the first number of blocks if changes are made to the storage system that correspond to the first number of blocks; creating, by the file server, a second block map associated with the second snapshot, the second block map including a second number of blocks of which the second snapshot is an oldest owner, wherein the second snapshot is the oldest owner of a block if the block is used by the second snapshot and not used by any snapshot older than the second snapshot, wherein the file server calculates the second number of blocks at a time the second snapshot is created and wherein the storage server updates the second number of blocks if changes are made to the storage system that correspond to the second number of blocks; receiving, by the storage server, a snapshot inquiry command, the snapshot inquiry command received after the creation of the first and second snapshots and after the creation of the first and second block maps; determining, by the storage server in response to the snapshot inquiry command, a rate of change of data between the first and the second snapshots, wherein the determining the rate of change of data between snapshots includes retrieving the first number of blocks and the second number of blocks from the first and second block maps, and dividing a sum of the first number to the second number by a difference between a time of creation for the first and second snapshots; and reporting, by the storage server via a graphical user interface in response to the snapshot inquiry command, how long available storage in the storage system will last based upon the determined rate of change.