-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
| 기능 ID | PRD-006 |
| 기능명 | 상품 추천 기능 (베스트셀러 / 관심 기반 / 협업 필터링) |
| 목적 | 사용자에게 더 나은 쇼핑 경험을 제공하기 위해 다양한 방식으로 상품을 추천하고, 개인화 추천을 통해 전환율과 만족도를 향상 |
| 관련 메뉴 | 메인 페이지, 상품 상세 페이지, 추천 탭 (/, /products/{id}) |
| 입력값 |
- 사용자 식별 정보 (로그인 사용자) - 최근 본 상품 목록 (세션/Redis 기반) - 주문 내역 (베스트셀러 및 협업 필터링 분석용) - 관심 카테고리 또는 평점 |
| 처리 로직 |
[1] 베스트셀러 기반 추천 • 주문 수량을 기준으로 인기 상품을 DB에서 정렬하여 상위 N개를 조회 • MySQL 쿼리 예시: SELECT product_id, COUNT(*) AS cnt FROM order_item GROUP BY product_id ORDER BY cnt DESC LIMIT 10;• Redis 등에 주기적으로 캐시하여 부하 감소 [2] 관심 기반 추천 (최근 본 상품/관심 카테고리) • Redis Sorted Set 또는 List에 사용자별 최근 본 상품 ID 저장 • 해당 상품의 카테고리 기준으로 유사 상품 목록 조회 • 유사 상품의 평점/판매량 등 가중치를 고려하여 추천 [3] 협업 필터링 기반 추천 • 사용자-상품 평점/구매 데이터를 기반으로 유사도 분석 • Python + Scikit-learn 또는 AWS Personalize 등 ML 서비스 사용 • 유사한 사용자들이 선호한 상품을 추천 • 실시간 처리 또는 정기 배치 기반 추천값 생성 |
| 출력값 | 추천 상품 리스트 (상품명, 이미지, 가격 등 포함된 JSON 또는 컴포넌트 렌더링용 객체) |
| 비고 |
- 추천 방식은 사용자 상태(비로그인/로그인)에 따라 유동적으로 선택 - 콜드스타트 대응 위해 비로그인 사용자는 베스트셀러 기반 우선 제공 - 향후 추천 로직 개선 시 API 형태로 추상화해 교체 가능 |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels