본문 바로가기

ETL Tools

[ETL] ETL 작업에 대한 작업 검증 방안

작성일: 2012.09.11

작성자: 천정현


 본 글은 ETL 검증시 내가 참고 하기 위해서 만든 글로, 주관적인 방법임을 명시합니다.

 읽으시다 잘못된 부분이나, 추가 정보가 잇는 경우 댓글로 남겨 주시면, 소정의 상품을 드리도록 하겠습니다.


0. 로직 검증(Logic Verification)

 - ETL 수행 로직이 적절한지 여부를 판단한다. 

   * 필터 절: 잘못 들어 오거나 빠지는 데이터가 있는지 확인

   * 조인 절:  조건에 의해서 중복되는 데이터가 발생하는지(Key Check), 데이터가 의도치 않게 걸러지는 것이 있는지(Outer join, Inner join) 확인 


1. 건수 검증(Count Verification)

 - 팩트테이블의 건수와 소스 테이블의 테이블 조인 및 필터 조건 추가된 쿼리에서의 건수를 비교하여 정의된 매핑 방식에 맞도록 쿼리가 잘 수행되는 지 확인 한다. 


2. 수치 검증(Measure Verification)

 -  적재된 팩트 컬럼 중, 수치 값이 들어 있는 컬럼 대상으로 집계(SUM,AVG, MIN, MAX,...) 값을 비교 하여 수치 계산중 변형되거나 빠지는 값이 있는지 여부를 확인한다.


3. 패턴 검증(Pattern Verification)

 - 적재된 팩트 컬럼 중, 수치 값을 제외한 나머지 컬럼을 대상으로 패턴을 분석하여 잘 못 들어가는 데이터가 있는지 확인한다. 

   * Null 처리: Dimension 과 join 되어 보여지는 데이터인 경우, Null처리가 선행 되어야 한다.

   * Dimension 조인: dimension 사용 컬럼의 경우, join 시 미매핑 되는 데이터가 발생하는지 확인하여, 디멘젼을 확인하든, 팩트를 확인하던 조치하여 미매핑되는 데이터가 발생하지 않도록 조치한다.

   * 이상 데이터: dimension과 조인되지 않는 컬럼도 distinct valre를 확인하여 전혀 이상한 데이터가 발생되지 않는지 확인한다.