vậy mình hiểu như này:
- staff sẽ có skills là multiskill và fullskiller, 2 skills này có thể switch bất cứ lúc nào.
- đánh giá staff sẽ dựa vào skill, và cuối quý (3 tháng) mới chốt.
Mình giả sử bên bạn:
- 200k staff.
- 2 phút đổi 1 skills lần.
- 1 tháng 168 hours working.
- chỉ dùng 1 table cho cả multiskill và fullskiller.
=> 200k * 3 * 168 * 60 / 2 = 3.024.000.000 records/table (data 1 quý).
mình nghĩ data lớn này thì bên bạn chắc chạy reporting database, và dữ liệu tính toán hàng ngày hay hàng giờ phải được update vào rồi, report quý cũng sẽ sum của monthly report, report tháng sum của daily report, daily report sum của hourly report.
chứ query chính từ raw data chắc khó.