부품 호환 매핑 관리 콘솔
차종 마스터 트리 관리, 엑셀(CSV) 대량 매핑 업로드와 오류 리포트, 체크박스 개별 매핑, 차량 조회 캐시 현황, 품번 교차 검색, 카페24 상품 동기화, 계정 권한과 변경 이력을 한 콘솔에 모은 중계 서버 관리자 프로젝트입니다.
프로젝트 개요
차종 마스터 트리 관리, 엑셀(CSV) 대량 매핑 업로드와 오류 리포트, 체크박스 개별 매핑, 차량 조회 캐시 현황, 품번 교차 검색, 카페24 상품 동기화, 계정 권한과 변경 이력을 한 콘솔에 모은 중계 서버 관리자 프로젝트입니다. P1 부품몰과 같은 차종·상품 데이터를 사용합니다.
작업 범위
- 현황판: 오늘의 차량 조회 호출 건수, 캐시 응답 비율, 미매핑 상품, 최근 매핑 업로드가 한 화면에 모입니다. 미매핑 상품 한 건에서 바로 매핑 화면으로 이어집니다
- 차종 마스터: 제조사, 모델, 연식, 트림이 트리로 정리되고 노드를 선택해 추가, 수정, 삭제합니다. 삭제 전에는 연결된 상품 수가 확인 대화상자에 표시됩니다
- 대량 매핑 업로드: 상품코드와 차종 코드를 담은 엑셀(CSV)을 올리면 형식 검사 결과가 먼저 나오고, 오류 행은 사유와 함께 리포트로 정리됩니다. 정상 행만 반영하거나 전체를 취소할 수 있습니다
- 부품별 매핑: 상품을 검색해 고르면 호환 차종 트리가 체크박스로 나타나 호환되는 차종을 직관적으로 연결합니다. 저장 전에 추가·해제될 건수가 요약됩니다
주요 업무
- 현황판 화면: 호출 로그와 매핑 테이블을 집계한 뷰로 현황 카드를 만들고 카드에서 해당 목록으로 이동합니다
- 차종 마스터 화면: 차종 노드를 인접 목록과 경로 컬럼으로 저장하고 노드 변경 시 연결 매핑 영향 범위를 계산해 보여 줍니다
- 대량 매핑 업로드 화면: 업로드 파일을 스트림으로 읽어 행 단위로 검증하고, 검증 통과 행은 트랜잭션으로 일괄 반영합니다
- 부품별 매핑 화면: 체크 상태 변경을 차이값으로 모아 저장 시 한 번에 반영하고 저장 전 변경 요약을 보여 줍니다



프로젝트 핵심 과제
수만 건 상품코드와 차종 코드를 한 번에 올릴 때 검증 메모리 사용과 부분 실패 반영 방식을 함께 설계해야 합니다
트리 노드 이동·삭제가 이미 연결된 호환 매핑에 미치는 영향을 일관되게 처리하는 규칙 설계가 필요합니다
카페24 상품코드와 매핑 DB 상품 식별자가 어긋나는 경우를 찾아 분리하는 동기화 대조 로직 설계가 필요합니다
차량 조회 결과 캐시의 보관 기간과 갱신 기준을 정해 오래된 제원이 계속 쓰이지 않
설계해야 합니다
중계 서버와 매핑 DB를 AWS에 구성하고 카페24 도메인과 연결하는 배포 구조와 ERD 산출 문서 정리가 필요합니다
핵심 기능 상세
현황판
오늘의 차량 조회 호출 건수, 캐시 응답 비율, 미매핑 상품, 최근 매핑 업로드가 한 화면에 모입니다. 미매핑 상품 한 건에서 바로 매핑 화면으로 이어집니다.
- 호출 로그를 일 단위로 집계하는 Materialized View 설계
- 동일 차량번호 재조회는 DB 캐시에서 응답하도록 조회 키 설계
- 미매핑 상품 목록을 인덱스 기반 조회로 반환
차량번호 단위 캐시 테이블에 조회 결과를 저장해 같은 번호의 재조회가 외부 API 호출 없이 응답되는 구조를 설계합니다.


차종 마스터
제조사, 모델, 연식, 트림이 트리로 정리되고 노드를 선택해 추가, 수정, 삭제합니다. 삭제 전에는 연결된 상품 수가 확인 대화상자에 표시됩니다.
- 인접 목록과 경로 컬럼을 함께 두어 트리 조회와 하위 집계를 모두 지원
- 삭제 전 연결 상품 수를 계산해 확인 대화상자에 표시
- 변경 이력을 감사 로그 테이블에 기록
트리 노드 변경이 연결된 상품 매핑에 미치는 범위를 사전에 계산해 보여 주는 구조를 설계합니다.


대량 매핑 업로드
상품코드와 차종 코드를 담은 엑셀(CSV)을 올리면 형식 검사 결과가 먼저 나오고, 오류 행은 사유와 함께 리포트로 정리됩니다. 정상 행만 반영하거나 전체를 취소할 수 있습니다.
- CSV를 스트림 파서로 읽어 수만 행도 메모리에 모두 올리지 않고 검증
- 행 단위 오류 사유를 모아 오류 리포트 내려받기 구성
- 검증 통과 행을 배치 단위 트랜잭션으로 반영하고 실패 배치만 되돌림
검증과 반영을 분리해 오류 행이 있어도 정상 행만 반영할 수 있고 업로드 이력에 결과가 남는 구조를 설계합니다.


부품별 매핑
상품을 검색해 고르면 호환 차종 트리가 체크박스로 나타나 호환되는 차종을 직관적으로 연결합니다. 저장 전에 추가·해제될 건수가 요약됩니다.
- 체크 변경분만 추려 저장 요청 크기를 줄이는 차이값 계산
- 상위 노드 체크 시 하위 노드 일괄 선택과 부분 선택 표시
- 저장 전 추가·해제 건수를 요약해 확인
트리 체크박스의 부분 선택 상태를 계산하고 저장은 변경분만 보내는 구조를 설계합니다.


프로젝트 진행 단계
매핑 DB·ERD 설계와 캐시 키 정의 · 2026.11
차종 트리, 상품 매핑, 조회 캐시, 감사 로그 테이블과 관계 설계, 업로드 양식 정의
대량 업로드·매핑 API 개발 · 2026.11
스트림 검증, 배치 반영, 오류 리포트, 트리 CRUD와 체크박스 매핑 API 구현
카페24 연동·조회 캐시 개발 · 2026.11
카페24 토큰 발급·재발급과 상품 동기화, 차량 조회 캐시 로직 구현
관리 콘솔 UI·AWS 배포 구성 · 2026.11
관리 화면 구현과 권한 체계 적용, AWS 서버·DB 구성과 배포 설정 정리
개발 결과
기술적 주안점
- 차량번호 단위 캐시 테이블에 조회 결과를 저장해 같은 번호의 재조회가 외부 API 호출 없이 응답되는 구조를 설계합니다
- 트리 노드 변경이 연결된 상품 매핑에 미치는 범위를 사전에 계산해 보여 주는 구조를 설계합니다
- 검증과 반영을 분리해 오류 행이 있어도 정상 행만 반영할 수 있고 업로드 이력에 결과가 남는 구조를 설계합니다