데이터 품질 문제 발견·변환 단계 개선·수치 결과 확인 중심으로 푸는 결
졸업 프로젝트에서 공공 데이터를 수집해 분석하는 파이프라인을 만들면서 ETL 프로세스를 처음 다뤘습니다. Python으로 데이터를 추출하고 pandas로 변환해 PostgreSQL에 적재하는 구조였는데, 가장 힘들었던 부분은 원천 데이터 품질이 예측 불가능하다는 점이었습니다. 날짜 형식이 파일마다 달랐고, 일부 컬럼은 null 없이 공백 문자열이 채워져 있었습니다. 처음에는 적재 단계에서 오류가 나면 그때마다 수작업으로 고쳤는데, 이 방식은 확장이 안 됐습니다. 이후 변환 단계에서 유효성 검사를 먼저 실행하고 오류 행은 별도 로그 파일로 분리하는 구조로 바꿨습니다. 그 결과 적재 실패가 주 20회 이상에서 3회 이하로 줄었고, 문제 원인도 로그에서 바로 확인할 수 있게 됐습니다. 이 경험에서 ETL의 핵심 병목은 적재가 아니라 변환 전 데이터 정제 단계라는 것을 직접 배웠습니다.