Overview

  • TempoDB offers a ReST API to create new series, and read and write data. Every series can be identified by a system generated id or an optional user specified key.

Data Model

  • The data model for TempoDB is centered around the concept of a Series. A Series is a sequence of timestamp/value pairs. This sequence of timestamp/value pairs are measurements for a single source of data. For example, a temperature sensor measuring the temperature in a room is modeled by a single Series. A thermostat that measures temperature, humidity, and barometric pressure is modeled by three Series.

    Metadata attached to the Series is used to relate them. Series can accept a name, a list of tags, and a dictionary of attributes. The name is used to present a human readable display name. The list of tags are used to tag types for the Series. The dictionary allows key/value pairs to be attached to the Series.

    In the thermostat example above, the temperature Series could be tagged with temp, the humidity Series with humidity, and the barometric pressure Series with press. If your system had multiple thermostats, an attribute of thermostat=1 could be added to each Series to group them.

    This flexible tagging and attribute system allows the Series to be grouped and tagged in complex ways. The api allows Series to be filtered based on these tags and attributes. For instance, to get the Series associated with thermostat 1, filter on the attribute thermostat=1. To find all of the temperature sensors, filter on tag temp.

    A more in depth discussion of filtering is described here.