- This quanta is responsible for aggregating required data, computing relevant metrics and generating reports.
- The report generation and metrics computation should happen at both periodic intervals and event based triggers.
- Creates and maintains 'Report' and 'Metric' entities.
- This quanta should not impact the core functionality of the platform. This is achieved by using analytics side cars that are deployed along with services. These side cars have read-only access to the data. They retrieve the relevant data and forward it to a data warehouse which is then accessed by the analytics data aggregation components.
- Trigger notification alerts when a metric is found to be beyond a threshold. (if configured)
- Elasticity - During report generation that is done at periodic intervals large amounts of data should be processed in a short interval of time.
- Availability - Should be available to trigger the alerts, periodic report generations and to serve the API endpoints.
- Performance - Metrics computation and report generation are computationally intensive tasks thus performance becomes an important characteristic for this quanta.
Hybrid - Event Driven + Microservices