A computer-implemented method for managing changes to a collection of records, the method including: storing a first set of records in a data storage system, the first set of records representing a first version of the collection of records and including a metadata map that provides a translation from one source value to a respective target value such that each target value is only associated with one source value; and validating a proposed change to the collection of records specified by an input received over a user interface, the validating including: querying the data storage system based on validation criteria associated with the proposed change and receiving a first result in response to the querying, wherein the validation criteria specify that a single source value is not to be mapped to more than one target value, and wherein the first result identifies rows and/or columns which are relevant to the rows and/or columns affected by the proposed change, processing a second set of records stored in the data storage system and representing changes, which have not yet been applied to the collection of records but which have already been validated, to generate a second result, wherein the second result represents changes that are candidates for conflicts with the proposed record change, updating the first result based on the second result to generate a third result, wherein the first result is updated with information from the second result, and processing the third result to determine whether the proposed change is valid according to the validation criteria, wherein the determining whether the proposed change is valid includes verifying for each source value that it maps to a particular target value. storing a first set of records in a data storage system, the first set of records representing a first version of the collection of records and including a metadata map that provides a translation from one source value to a respective target value such that each target value is only associated with one source value; and validating a proposed change to the collection of records specified by an input received over a user interface, the validating including: querying the data storage system based on validation criteria associated with the proposed change and receiving a first result in response to the querying, wherein the validation criteria specify that a single source value is not to be mapped to more than one target value, and wherein the first result identifies rows and/or columns which are relevant to the rows and/or columns affected by the proposed change, processing a second set of records stored in the data storage system and representing changes, which have not yet been applied to the collection of records but which have already been validated, to generate a second result, wherein the second result represents changes that are candidates for conflicts with the proposed record change, updating the first result based on the second result to generate a third result, wherein the first result is updated with information from the second result, and processing the third result to determine whether the proposed change is valid according to the validation criteria, wherein the determining whether the proposed change is valid includes verifying for each source value that it maps to a particular target value. querying the data storage system based on validation criteria associated with the proposed change and receiving a first result in response to the querying, wherein the validation criteria specify that a single source value is not to be mapped to more than one target value, and wherein the first result identifies rows and/or columns which are relevant to the rows and/or columns affected by the proposed change, processing a second set of records stored in the data storage system and representing changes, which have not yet been applied to the collection of records but which have already been validated, to generate a second result, wherein the second result represents changes that are candidates for conflicts with the proposed record change, updating the first result based on the second result to generate a third result, wherein the first result is updated with information from the second result, and processing the third result to determine whether the proposed change is valid according to the validation criteria, wherein the determining whether the proposed change is valid includes verifying for each source value that it maps to a particular target value.