저희 프로젝트의 비즈니스 정책상 '검수 승인 및 경매 확정'이 된 상품만 사용자에게 노출됩니다. 또한, 확정된 이후에는 데이터 수정을 제한하고 있습니다. 이에 따라 ES 적재 시점을 두고 두 가지 방안을 고민 중입니다.
현재 방안 B를 우선순위에 두었으나, 검수 완료 API 로직에는 상품 정보만 있고 경매 정보가 없어 분산된 데이터를 어떻게 효율적으로 결합하여 ES에 넣을 것인가가 핵심 고민입니다.
| 비교 항목 | 방안 A: 최초 등록 시 적재 | 방안 B: 검수 승인 시 적재 (선택) |
|---|---|---|
| 적재 시점 | 상품/경매 생성 즉시 (PENDING 상태) | 검수 완료(APPROVED) 시점 |
| 장점 | 등록 API가 모든 데이터(상품+경매)를 보유하고 있어 단일 적재 가능. | 조회 품질 보장 및 부하 감소. 불필요한 데이터(대기/반려)를 제외하여 인덱스 최적화. |
| 단점 | 동기화 비용. 검수 전 수정이 잦을 경우 ES의 Delete-and-Insert(세그먼트 병합) 부하 가중. | 데이터 결합 부하. 검수 서비스 내에 흩어진 데이터를 모으는 추가 로직 발생. |
검수 승인 시점에 데이터를 결합하여 ES에 넣는 두 가지 구현 방식을 검토 중입니다.