1. A computer-implemented method performed by one or more data processing apparatus, comprising: receiving a first data request from a user device, the first data request specifying a first type of aggregated data being requested and one or more first criteria for selecting data from a multidimensional dataset to derive a first value for the first type of aggregated data; responding to the first data request, wherein the responding comprises: deriving the first value for the first type of aggregated data using the data selected from the multidimensional dataset according to the one or more first criteria; and determining a first latency for responding to the first data request using the multidimensional dataset, the first latency being indicative of an amount of time, after receipt of the first data request, that is required to derive the first value using the multidimensional dataset; defining a pre-aggregated dataset based on the first data request, the pre-aggregated dataset, the pre-aggregated dataset being a proper subset of the multidimensional dataset used to derive the first value; calculating a benefit score for the pre-aggregated dataset based on a difference between the first latency and a second latency that is indicative of an amount of time required to respond to the first data request using the pre-aggregated dataset; determining that the benefit score meets a predetermined threshold value; and storing the pre-aggregated dataset from the multidimensional dataset upon determining that the benefit score of the pre-aggregated dataset meets the predetermined threshold value.