안녕하세요.
개발중인 시스템에 통계 기능이 필요한데, 현재 안은 아래와 같습니다.
이력을 쌓는 테이블이 있고 화면에 보여줄 형태에 맞춘 월별, 주별, 일별 집계 테이블을 만들어 빠르게 조회할 수 있도록 하고
각 테이블에 배치작업으로 데이터를 밀어 넣는 형태
이 안 외에 좀 더 효율적인 방법이 있을까요? 예를들어 저는 위 안에서 배치작업 대신 데이터가 들어올 때 마다 집계 테이블에 update문을 날리는 안을 생각했는데, 이는 너무 부하가 될까요?
좋은 방법이 있다면 조언 부탁드립니다.
감사합니다.
통계 화면 조회를 하시려면
배치 또는 실시간 조회중 선택하셔야 할겁니다.
- 배치
배치는 일배치 , 월배치등으로 일정기간이 끝난후 스케줄러등으로 데이터를 저장하는 형태로 진행됩니다.
또한 배치형태는 지난 데이터에 변화가 없어야합니다. 즉 마감(일마감 , 월마감) 등의 형태로 수정 불가능하게 해야합니다.
- 실시간 조회
실시간 조회는 sql로 조회될테고 만약 데이터가 많다면 partitioning table 등으로 분할하여 조회하는 형태로 나타납니다.
- 하이브리드
지난날짜는 배치에서 데이터를 가져오고 오늘날짜(또는 현재달) 는 sql로 가져와서 union 시키는 형태도 경우에 따라 가능합니다.