Patent ID: 7853554

Claim:
A data warehouse system comprising: a warehouse database configured to store objects; and a data warehouse manager computer communicatively coupled to the warehouse database and configured to: (i) store data to and retrieve data from the warehouse database, and (ii) perform metadata reconciliation to update metadata of objects stored in the warehouse database to reflect a change in metadata of a first object stored in the warehouse database by: retrieving a plurality of dependency documents associated with the first object, each dependency document in the plurality of dependency documents created according to a common dependency format in response to a different dependency model and specifying one or more dependency rules that govern relationships between the first object and objects in the warehouse database; identifying a first set of objects stored in the warehouse database impacted by the change in the metadata of the first object that depend on the first object based on a first dependency rule expresses as a set of dependency tags stored in a first dependency document in the plurality of dependency documents associated with the first object, the first set of objects being objects in the warehouse database different from the first object; identifying a second set of objects stored in the warehouse database impacted by the change in the metadata of the first object on which the first object depends based on a second dependency rule expressed as a set of dependency tags stored in a second dependency document in the plurality of dependency documents associated with the first object, the second set of objects being objects in the warehouse database different from the first object; identifying at least one task to be completed to propagate the impact of the change in the metadata of the first object to objects in the first and second sets of objects; dynamically computing additional tasks based on whether or not definitions of objects in the first or second sets of objects change in response to completion of the at least one task; and generating a script based on the the additional tasks to propagate one or more changes in the definitions of objects in the first or second set of objects in order to reconcile the change in the metadata of the first object.