Using CouchDB to Compute Temporal Aggregates
Curtis Dyreson
Abstract
Curtis Dyreson
Abstract
Computing an aggregate on big data is a common application of mapreduce. The map groups values based on some key, and the reduce computes the aggregate for the group. But temporal data cannot be effectively grouped, so to compute a temporal aggregate, a new strategy is needed. Temporal data is data annotated with time metadata, usually a temporal period representing the lifetime of the data in some time dimension. Since periods have extent they are not directly amenable to grouping on some value-based key. The main contribution of this paper is to show how temporal aggregates can be computed using CouchDB (and by extension in other mapreduce systems). We introduce a new kind of timestamp, which we call a log-segmented timestamp, and we show how to use the timestamp to compute a temporal aggregate. Our technique reuses and extends existing mapreduce techniques.
OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Computing an aggregate on big data is a common application of mapreduce. The map groups values based on some key, and the reduce computes the aggregate for the group. But temporal data cannot be effectively grouped, so to compute a temporal aggregate, a new strategy is needed. Temporal data is data annotated with time metadata, usually a temporal period representing the lifetime of the data in some time dimension. Since periods have extent they are not directly amenable to grouping on some value-based key. The main contribution of this paper is to show how temporal aggregates can be computed using CouchDB (and by extension in other mapreduce systems). We introduce a new kind of timestamp, which we call a log-segmented timestamp, and we show how to use the timestamp to compute a temporal aggregate. Our technique reuses and extends existing mapreduce techniques.
Key concepts: Timestamp, Aggregate (composite), Computer science, Temporal database, Metadata, Key (lock), Extension (predicate logic), Dimension (graph theory)