1. A method comprising: identifying a plurality of data sets; generating a data model representing the plurality of data sets, wherein the data model represents the plurality of data sets and variations of the plurality of data sets as entities, relationships between the plurality of data sets as associations, and values associated with the entities as properties, the data model identifying states corresponding to the plurality of data sets wherein each state has associated therewith one or more of the entities, the associations and the properties, at least one entity or one relationship is associated with multiple states and any changes of the one entity or the one relationship are written and associated with the multiple states at once, and the plurality of data sets is associated with a data storage system implementing a planned data migration, and the data model identifies each of the states of the plurality of data sets at a corresponding stage of different stages of the planned data migration; maintaining a state-aware attribute for each entity and, for each association, indicating to which one or more of the states the entity and the association respectively belong in the state-aware attribute; updating the data model comprising at least one of adding, updating and removing one or more of an entity and an association; and reflecting the update of the data model in a corresponding state-aware attribute; wherein the steps of the method are executed via at least one processor coupled to a memory.