하나SK카드 배치프로세스개선 프로젝트
수행기간2014.04 ~ 2014.07
추진배경
1. 추가 업무 증가로 인한 처리시간이 증가됨에 따라 일일 배치작업의 점진적 처리시간 지연
2. 배치작업 지연으로 인한 캠페인 대상자 추출 및 분석작업 지연
3. 시스템 장애, 결제일자, 작업집중 등 예외상황에 대비한 예비시간 확보 필요
사업범위
1. 추진 전략
- 배치윈도우 조정 및 서버 노드 분산을 통한 핵심 성능개선 포인트 도출
- 단위 SQL 성능 개선
- 시스템 파라미터, DB 옵션조정
- 인덱스 조정
2. 구축 범위
- 배치작업 선후행 작업 조정, 스케쥴링, 서버, 병렬처리 등 개선
- 테이블 및 배치 SQL 조정을 통한 성능개선
- 일일 배치 작업을 오전 7시내 작업 종료(기존 9시 종료)
수행내용
1. 배치 수행 노드간 작업량 분산
- 기존 배치 프로세스 구성은 대부분의 배치작업이 서버1(#1)에서 수행되고 있으며, 일 배치 시간 동안 서버2(#2)의 CPU는 대부분인 Idle 상태에 있음
- 서버1의 배치 작업 중 일부를 서버2로 변경하여 시스템 유휴자원을 최대한 활용할 수 있도록 작업 분산
- 위험도가 적은 부분부터 점진적으로 N차에 걸쳐 분산 작업을 수행
2. SQL 성능 개선
- 주요 마트 SQL 도출 및 수행시간 분석에 따른 Critical Path 분산을 고려한 대상 SQL 추출
- 컬럼 Default 값, 불필요한 임시테이블 제거 등
3. 시스템 및 DB 파라미터
- DB 기동 파라미터 및 DB 옵션조정
- 해당 값의 적절성을 분석하여 배치 프로그램이 수행할 수 있는 최적의 설정값
4. 인덱스 개선
- 데이터 적재 시 인덱스 생성시간이 과도하게 소요되는 인덱스에 대한 분석 및 조정
5. Critcal Path 분석 및 조정 시뮬레이션
- 비용대비 효과를 만족하는 대상 선별을 위한 배치윈도우 분석
- 운영 시스템의 변경 영향도 최소화를 위한 사전 인터뷰 및 점진적 적용
성과 및 기대효과
1. 일 배치 작업 7시 이내 종료(3시간 20분 단축)
- 개선 전 8시 20분 전후 종료에서 사업 후 오전 4시50분 이내 종료로 3시간 이상 배치 시간 단축
2. 데이터 증가 및 업무량 증가에도 안정적 정보계 데이터 제공 기반 마련