Uploaded image for project: 'Apache IoTDB'
  1. Apache IoTDB
  2. IOTDB-516

Apache IoTDB trigger module for streaming cumputing



    • Type: Wish
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Core/Engine


      IoTDB is a time-series data management system and the data usually comes in a streaming way.

      In the IoT area, when a data point comes, a trigger can be called because of the following scenario:

      • (single data point calculation) the data point is an outlier point, or the data value reaches a warning threshold. IoTDB needs to publish the data point to those who subscribed the event.
      • (multiply time series data point calculation) a device sends several metrics data to IoTDB, e.g., vehicle d1 sends average speed and running time to IoTDB. Then users may want to get the mileage of the vehicle (speed x time). IoTDB needs to calculate the result and save it to another time series.
      • (Time window calculation) a device reports its temperature every second. Though the temperature is not too high, if it keeps increasing in 5 seconds, IoTDB needs to report the event to those who subscribe that.


      As there are many streaming computing projects already, we can integrate one of them into IoTDB.

      • If IoTDB runs on Edge, we can integrate Apache StreamPipes or Apache Edgent.
      • If IOTDB runs on a Server, the above also works  and Apache Flink is also a good choice.

      The process is:

      • User registers a trigger into IoTDB.
      • When a data comes, IoTDB save it and check whether there are triggers on it
      • If so, call a streaming computing framework to do something;


      You may need to know:

      • At least one streaming computing project.
      • SQL parser or some other DSL parser tool.

      You have to modify the source codes of IoTDB server engine module.

      Difficulty: A little hard





            • Assignee:
              hxd Xiangdong Huang
            • Votes:
              0 Vote for this issue
              2 Start watching this issue


              • Created: