1. A computer implemented method of managing and updating a data repository in real time, comprising: retrieving at least one record from a stream of incoming records maintained in a load repository for matching the retrieved record with a previous record history maintained in a detail repository based on a first uniquely identifying matching key; performing upon the retrieved record a sequence of matching runs executable on a parallel processing engine, said matching runs further comprising: a) matching the incoming record against a set of records maintained along with their second associated unique identifier in a master repository, said matching based upon a set of predefined matching conditions and performing at least one action type predefined for each possible matching result; b) for records found non matching in step a, iteratively performing a matching process between the non matching records and image records, said matching based upon a set of predefined matching conditions and performing at least one action type predefined for each possible matching result; c) for records found non matching in steps a and b, iteratively performing a self join matching process between the records of the load repository, said matching based upon a set of predefined matching conditions and performing at least one action type predefined for each possible matching result; and d) for the records found non matching in steps a, b and c, identifying remaining similar matched records based on a criterion.