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.