What are streams?
Stream is a named collection of datapoints.
Stream versus tags
Stream is a primary dimension used in the Formant UI for grouping visualization. Tags are used as metadata to describe additional dimension within a stream. It allows datapoints to be found or grouped by filtering or searching.
What should be modeled as a stream name as opposed to a tag?
There are no hard and fast rules, but the following may offer some guidance.
- The stream name is treated as the primary dimension by the Formant UI for grouping in visualizations, filtering, aggregation, etc.
- The stream name is usually a description of a sensor measurement, like battery.level, or a concept, like odometry.pose.
- The stream name often represents a relatively stable concept in your application.
- If you are a ROS user, stream name often maps well onto the concept of a ROS topic name.
- Tags are treated as additional dimensions
- Tags often represent a concept that can grow to take on additional possible values over the lifetime of your application, such as a software_version, a customer_id, or a robot_id
- Tags often encode additional metadata about the source of the measurement, as opposed to a description of the measurement