핵심 요약
여기어때가 PLP 최저가 계산 로직에서 가지치기(pruning)를 도입해 255개 조합 중 다수 계산을 제거하고 평균 계산량을 약 70% 감소시켰으나, 실제 응답시간 개선은 12~15%에 그쳐 DB 조회 비용 최적화가 남은 과제로 확인됐다.
구현 방법
- 가지치기 상한선 설계: min(판매원가) + max(특가) + max(쿠폰) + max(더하기쿠폰)로 계산 대상 제외 기준 구성
- saleDate로 그룹화 후 날짜별 minSalePrice와 최대 할인치를 이용해 maxAllowedPrice를 산출하고 그보다 비싼 가격은 필터링
- 1차/2차 시도 비교로 계산량 약 70% 감소 확인, 실제 응답시간은 12~15% 개선
- 다음 단계로 DB 조회 비용 축소를 위한 쿼리 최적화 및 조회 감소 계획
주요 결과
- 평균 계산량 약 70% 감소
- 실제 응답시간 12~15% 개선
- DB 조회 비용이 여전히 큰 비중이라 조회 최적화 필요


