Patent ID: 7519624
Filing Date: 2009-04-14
Classification: G06F

Abstract:
1. A processor-implemented method for proactively assessing the impact of a user action on a network storage system that includes a database represented by states and policies, before execution of the user action, the method comprising: classifying said polices in a plurality of policy classes; wherein said policies comprise: at least one individual entity-class policy defined only on instances of an entity class and holding on every instance of an entity class; at least one collection entity-class policy defined only on instances of an entity class and holding on a collection of instances from the entity class; at least one individual zone policy defined on attributes of zone instances of the network storage system and requiring evaluation over only one of an added zone and a modified zone; at least one collection zone policy defined on attributes of zone instances of the network storage system and requiring evaluation over multiple zones; receiving said user action; capturing a snapshot of the database states; maintaining intermediate states of said database states of said network storage system; maintaining attributes of said network storage system, wherein said attributes may include vendor, model, and operating system type; simulating the user action on the snapshot without applying changes to the database; selectively applying at least one of the policies to the snapshot; analyzing whether the simulated user action violates at least one of said applied policies, wherein said analyzing includes: predicting behaviour of resources of said network storage system using at least one independent resource model; generating intelligent data optimization structures each time the method is run; using the intelligent data optimization structures regarding evaluation of said simulated user action, using an independent caching substructure, an independent policy classification substructure, and an independent aggregation substructure; finding relevant policies and relevant regions affected by said simulated user action using said independent policy classification substructure; specifying said relevant policies in a high level specification language, wherein said high level specification language is selected from Ponder and Extensible Markup Language; exploiting data locality and commonality across different policies and across different evaluations using said independent caching substructure; performing evaluation of said classes of policies using said independent aggregation substructure; and creating a policy using a set of operations found within said policy classes; assessing an impact of at least one of said policies on a future event; and outputting visualization information regarding said impact of said user action on said network storage system over time.