경험 중심 1인칭 답변
팀 프로젝트에서 외부 API 데이터를 수집해 분석 가능한 형태로 변환하는 간단한 ETL 파이프라인을 구성했습니다. 추출(Extract) 단계에서는 API 요청과 에러 처리를, 변환(Transform)에서는 데이터 타입 정합성 확인·결측값 처리·중복 제거를 하고, 적재(Load)는 PostgreSQL에 저장했습니다. 유지보수에서 가장 어려웠던 건 소스 API의 스키마가 변경됐을 때 변환 단계가 조용히 실패하는 경우였는데, 이후 입력 데이터 유효성 검증 단계를 추가하고 실패 시 알림을 내보내는 구조를 만들었습니다. ETL은 처음 잘 만드는 것보다 운영 중에 생기는 변화에 대응하는 구조를 갖추는 것이 더 중요하다는 걸 배웠습니다. 앞으로도 데이터 유효성 검증과 실패 알림을 ETL 설계의 기본 요소로 포함하겠습니다. 앞으로도 데이터 유효성 검증과 실패 알림을 ETL 설계의 기본 요소로 포함하겠습니다.
ETL은 처음 잘 만드는 것보다 운영 중 변화에 대응하는 구조를 갖추는 것이 더 중요합니다. 소스 스키마 변경이 조용히 실패하는 것이 운영 환경에서 가장 발견하기 어려운 유형의 오류입니다.