1. A computer-implemented method of processing a plurality of data records, performed on a system having one or more processors and memory storing one or more programs for execution by the one or more processors to perform the computer-implemented method, comprising: partitioning the plurality of data records into groups and assigning each group of data record to a respective process of a first plurality of processes; executing the first plurality of processes in parallel, wherein for each group the assigned process: extracts information from the data records in the group; applies a multi-step script comprising a plurality of information processing commands applied sequentially to the extracted information to produce one or more intermediate values; stores the one or more intermediate values in a respective intermediate data structure; and updates a status of the group to indicate completion; determining whether a predefined threshold percentage of the data records are completed based on the status updates provided by the processes; when it is determined that the predefined threshold percentage of the data records are completed, assigning each group to a respective second process of the first plurality of processes; when it is determined that each of the groups has been completed by at least one process, executing a second plurality of processes to aggregate intermediate values from the intermediate data structures to produce output data, wherein the aggregation includes intermediate values only once for each group.