Patent ID: 8732118

Claim:
A computer-implemented method comprising: receiving an aggregation definition for use in generating an OLAP (“online analytical processing”) cube from a plurality of data groups, wherein each data group includes multiple data elements associated with multiple data fields, and wherein the aggregation definition indicates a specified type of aggregation, a specified data field of the multiple data fields, and multiple specified data dimensions that each includes multiple data categories; generating the OLAP cube in multiple stages having distinct indicated activities, by: performing a first stage of the multiple stages by configuring multiple computing systems to perform one or more map functions as part of generating a plurality of intermediate data results in a distributed manner, the performing of the first stage including, for each of the multiple configured computing systems: assigning one or more data groups to the configured computing system, the one or more data groups being a subset of the plurality of data groups; obtaining, by the configured computing system, the assigned one or more data groups from storage; and generating, by the configured computing system, some of the plurality of intermediate data results by extracting data from the assigned data groups, wherein each intermediate data result includes a data value that is based on a data element associated with the specified data field of one of the assigned data groups and includes information identifying a corresponding data category combination based on other data elements of the one assigned data group; and performing a second stage of the multiple stages by configuring one or more computing systems to perform one or more reduce functions as part of aggregating, for each of one or more data category combinations and based on the specified type of aggregation, the included data values of multiple of the plurality of intermediate data results whose included information identifies the data category combination; and storing the aggregated included data values for each of the one or more data category combinations in the generated OLAP cube.