| 기간 | 2024.06 – 2025.02 |
|---|---|
| 인원 | 8명 |
| 주요 기술 | Java, Struts, JSP, JavaScript, MySQL |
프로젝트 개요
아시아 5개국 서비스 확장에 따른 다국어 확장성 확보 및 28만 건 규모의 제품 데이터를 가지는 복수의 제품 테이블의 참조처리 변경 및 대용량 조회 성능 개선 프로젝트.
- 문제
- 기존 구조는 새 언어가 추가될 때마다 테이블 스키마(컬럼/테이블)를 변경해야 했으며, 독일과 같이 한 국가에서 복수의 언어를 사용하는 경우 테이블 내의 데이터가 혼재하게 되는 문제가 발생함.
- 해결
- 국가와 언어 조합을 메타데이터화하여 국가·언어 조합 기반의 제품 정보 테이블 구조 개선 수행.
- 성과
- 이후 신규 언어 확장 시 스키마 변경 없이 데이터 적재만으로 처리 가능한 구조적 확장성 확보.
- 문제
- STL/썸네일 관리 화면에서 제품 마스터(28만 건)와 모델 마스터(4만 건) 등 4개 테이블을 다중 조인하여 검색할 때, 인덱스 부재로 풀 스캔(Full Scan)이 발생해 화면 응답 속도가 심각하게 저하됨.
- 해결
- 레거시 시스템 안정성을 위해 비정규화 대신, 조인 키이자 핵심 검색 조건인 모델번호(型番)를 기준으로 복합 인덱스 구성.
- 성과
- 인덱스 최적화를 통해 풀 스캔을 제거하고 운영 환경에서 안정적인 조회 성능을 확보. 동일 구조의 썸네일 관리 화면까지 수평 전개하여 성능 개선.
- 범위
- 다국어 확장에 필요한 시차·공지사항·언어 설정용 Config 화면을 신규 구축. 재설계된 테이블 구조에 맞춰 기존 테이블 관리 화면에 신규 테이블을 추가하고 CRUD 전체를 신규 구현.
- 성과
- 관리자가 DB에 직접 접근하지 않고도 데이터를 CSV로 조회·관리할 수 있는 운영 체계 확보.
추가 담당
- 기본/상세 설계서 작성 (Java/Struts 기반 백엔드 로직, SQL 구현)
- 단위·결합 테스트 시나리오 설계 및 수행