Provide a wider range of aggregate functions
Currently, we support a limited range of aggregate functions aggregation functions: avg, sum, min, max, count.
This range should be extended to support a wider range of statistical aggregates, adding for example:
* standard deviation
* rate of change
* moving-window averages
* percentile of various ranks, e.g. p99 for API responsiveness
It would also be useful to support a capabilities-style operation to allow caller discover the available aggregation functions.
(Especially since aggregates might be specific to individual storage-drivers, e.g. where some aggregate can be very efficiently calculated via mongodb MapReduce, but prohibitively expensive for say sqlalchemy).
Blueprint information
- Status:
- Complete
- Approver:
- Julien Danjou
- Priority:
- Medium
- Drafter:
- Eoghan Glynn
- Direction:
- Approved
- Assignee:
- Eoghan Glynn
- Definition:
- Approved
- Series goal:
- Accepted for icehouse
- Implementation:
-
Implemented
- Milestone target:
-
2014.1
- Started by
- Eoghan Glynn
- Completed by
- Julien Danjou
Related branches
Related bugs
Sprints
Whiteboard
WIP patch: https:/
Addressed by: https:/
Wider selection of aggregates for sqlalchemy
Addressed by: https:/
Wider selection of aggregates for mongodb
Addressed by: https:/
Test skipping logic for DB func unsupported by sqlite
Work Items
Dependency tree

* Blueprints in grey have been implemented.