Change sample storage table db schema to improve performance
Performance of both read and write actions on Ceilometer samples is poor. Normalizing the schema for storing sample will improve performance by separating into definition (i.e. project id, resource id, etc) and fact (message id, counter volume, etc.) tables.
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Phil Neal
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Superseded
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- gordon chung
Related branches
Related bugs
Sprints
Whiteboard
I think it's a good idea to normalize the schema. User_id and project_id columns in sample table can be removed because they are transitively dependent on sample via resource_id. Also, I wonder if user and project tables are necessary.
Nihongi 01.05.14
Here, I made an example of revised data model.
https:/
Nihongi 10.05.14
this was actually handled by https:/