1. 문제 상황 (Context)

저희 프로젝트의 비즈니스 정책상 '검수 승인 및 경매 확정'이 된 상품만 사용자에게 노출됩니다. 또한, 확정된 이후에는 데이터 수정을 제한하고 있습니다. 이에 따라 ES 적재 시점을 두고 두 가지 방안을 고민 중입니다.

현재 방안 B를 우선순위에 두었으나, 검수 완료 API 로직에는 상품 정보만 있고 경매 정보가 없어 분산된 데이터를 어떻게 효율적으로 결합하여 ES에 넣을 것인가가 핵심 고민입니다.

비교 항목 방안 A: 최초 등록 시 적재 방안 B: 검수 승인 시 적재 (선택)
적재 시점 상품/경매 생성 즉시 (PENDING 상태) 검수 완료(APPROVED) 시점
장점 등록 API가 모든 데이터(상품+경매)를 보유하고 있어 단일 적재 가능. 조회 품질 보장 및 부하 감소. 불필요한 데이터(대기/반려)를 제외하여 인덱스 최적화.
단점 동기화 비용. 검수 전 수정이 잦을 경우 ES의 Delete-and-Insert(세그먼트 병합) 부하 가중. 데이터 결합 부하. 검수 서비스 내에 흩어진 데이터를 모으는 추가 로직 발생.

2. 세부 데이터 결합 방식에 대한 고민 (방안 B의 심화)

검수 승인 시점에 데이터를 결합하여 ES에 넣는 두 가지 구현 방식을 검토 중입니다.