tapis-early-adopters-workshop GitHub

Streams API

The Tapis v3 Streams API provides a production-quality service that builds on top of the CHORDS project for real-time data services and extends the primary data models including site,instrument and variable, with additional metadata including adding spatial indexing and permissions.
The Streams API also integrates Tapis event-driven function such as Abaco and data management and code execution capabilities to provide an analysis capability on streaming data sources.
Support for streaming data includes the following capabilities:

  • Storing and retrieving streaming data for batch job processing, with support for temporal and spatial indexes and queries
  • Automated, event-driven data stream processing workflows with integration into Tapis functions as well as other streamingframeworks.

  • Real-time, event-driven workflows are supported by the Streams API. Tapis provides this capability through integration with its functions-as-a-service (Abaco), jobs service and other systems or services that support web-hooks. The Streams API provides the following capabilities to support various levels of analysis based on computational needs:

  • Alerts as Events: Third-party processing engines will receive real-time notifications when measurement data hits pre-defined criteria. Subscribers will receive an HTTP POST request containing JSON data detailing the event that triggered the alert.
  • Processing Events with Tapis Functions— Developers are be able to register an Abaco function with an alert to performscalable processing with no infrastructure to maintain.

Streams API Introduction Slides