1. A computer-implemented method for constructing a change database from historical data, comprising the steps of: a. creating a plurality of periodic data files from the historical data, wherein each of the plurality of periodic data files comprises a plurality of records, and wherein each of the plurality of records comprises a plurality of record fields, wherein the plurality of record fields each comprises an identifier and a first value; b. identifying a foundation file from among the plurality of periodic data files; c. matching one of the plurality of periodic data files that is newer than the foundation file to the foundation file using the identifier, wherein a new record is created in the foundation file for each record in the newer one of the plurality of data files that contains an identifier that was not previously in any record in the foundation file; d. updating any record in the foundation file that has the same identifier as a record in the newer data file with a second value from the newer data file; e. creating a plurality of change files, each change file comprising each record in the foundation file that comprises both a first value and a second value, wherein each change file comprises a plurality of records each comprising a change value; and f. creating a master file by comparing two of the plurality of change files, wherein the master file comprises each record from the two compared change files with an appended counter field, wherein each master file is partitioned into a plurality of partitions based on one of the record fields.