반응형

제목: 데이터 마이그레이션의 자동화된 데이터 검증(Automated Data Validation for Data Migration Security)

저자: Manjunath T. N 2, 인도

문서유형: 저널 페이퍼( 6페이지), 2011

 

 

메인프레임에서 UNIX 플랫폼의 오라클로 데이터 이전 시 자동화된 데이터 검증을 적용한 경험을 기술한 자료


 

데이터 검증 자동화 단계(Steps to Automate Data Validation)

메인프레임에서 Oracle 데이터베이스로 데이터 마이그레이션을 수행하는 프로세스에서 데이터 검증을 자동화하는 단계는 아래와 같다.

     EBCDIC 형식으로 된 메인프레임 서버의 데이터는 추출에 시간이 많이 걸림

     데이터에 빠르게 접근하기 위해 DBA 팀은 해당 데이터를 UNIX 서버로 이전함(, SAS 도구를 사용하여 EBCDIC 형식의 데이터를 ASCII 형식으로 전환)

     UNIX 기기에서 데이터는 파일(ASCII 형식)로 저장된다.

     UNIX의 데이터를 Oracle 10g 서버로 이전한다. 오라클 서버의 데이터는 외부 테이블(External Tables) 형식으로 저장되며 데이터 검증의 소스가 된다.

     품질보증(QA)팀은 참고 문서(, 매핑 문서, 파싱 규칙 문서, ETL 문서)를 기반으로 테스트 데이터를 생성한다. , 테스트 데이터(test data) 또는 참고 데이터(reference data)로 불려지는 QA 서브 테이블을 만들어 낸다.

     QA팀은 개발팀이 담당한 타겟 테이블과 QA팀이 담당한 소스 QA 테이블을 비교한다. compare2tabs 스크립트는 소스 QA 테이블과 개발팀의 타겟 테이블간의 모든 컬럼을 비교하여 DIFF 테이블을 생성해 낸다.

     SQL 스크립트를 사용하여 DIFF 테이블을 분석한다. 차이점(discrepancy)이 발견되면 요구사항을 재검토하고 이슈를 제기한다.

     QA팀은 제기된 이슈가 해결될 때까지 추적 및 관리한다.

 

     마이그레이션 할 모든 파일에 대하여 위 프로세스를 반복한다.

 

데이터를 처리하기 위해 사용된 문서는 아래와 같다.

  • 파싱 규칙 문서(Parsing Rules): 데이터 웨어하우스로부터 데이터를 추출하기 위한 파싱 규칙을 기술한 문서
  • 매핑 문서(Mapping document): 스키마간의 데이터 매핑을 위한 문서
  • ETL 문서: 데이터 추출의 ETL(Extract, Transform, and Load) 규칙을 기술한 문서
 

[자동 데이터 검증 프로세스]

 

작업 환경이 품질(QA) 환경과 개발(DEV) 환경으로 구분되며, 개발 환경에서 개발자는 데이터를 타겟 테이블로 로드하기 위한 마이그레이션 스크립트를 준비한다. 개발자가 타겟 DB(테이블)에 로드한 데이터를 검증하기 위해 QA팀은 자동화된 데이터 검증 프로세스를 적용하여 시간과 비용을 감소시키고 데이터 품질을 높인다.

 

데이터 마이그레이션 단계(STAGES OF DATA MIGRATION)

 

1. 마이그레이션 계획

어떤 데이터를, 어디에서, 어떻게, 언제 이전할 것인지를 계획하고 또한 대략 얼마나 걸릴지도 추정한다.

 

2. 데이터 평가(Data Assessment)

주요 활동으로 (i) 데이터 소스 식별 (ii) 시스템 추출 및 쿼리 실행 (iii) 데이터 마이그레이션 프로세스에 대한 사용자 인터뷰 수행 (iv) 마이그레이션 범위와 검증 전략 검토 (v) 작업 계획과 일정 마일스톤 생성이 있다.

 

 

이 단계의 출력물로는 (i) 마이그레이션 범위 문서 (ii) 마이그레이션 검증 전략 문서 (iii) 마일스톤을 반영한 작업 계획이 있다

 

3. 매핑 문서 준비(Mapping Document)

이 단계의 주요 활동은 아래 컬럼들을 포함하는 액셀 시트를 준비하는 것이다.

(i) 소스 테이블(또는 파일명) (ii) 소스 컬럼(또는 필드명) (iii) 소스 데이터 타입 (iv) 검증 규칙(소스 데이터 값을 도출해 내는 규칙 또는 직접적으로 값을 나타낸 규칙) (v) 일반 값(Typical Values) (vi) 변환 규칙(Transformation Rules) (vii) 타겟 테이블 (viii) 타겟 컬럼 (ix) 타겟 데이터 타입

 

출력물로는 (i) 자동화된 데이터 전환의 성공 가능성을 높이는 수정된 소스 데이터 (ii) 통제를 위한 정량 데이터(metrics)와 대시보드(dashboards)가 있다.

 

4. 데이터 추출/검증/로딩(Data Extraction, Validation and Loading)

주요 활동으로 (i) 데이터 항목 매핑 생성 및 검증 (ii) 현 시스템으로부터 데이터 추출 실행 (iii) 추출을 자동화하기 위한 테이블, 스크립트, (jobs) 생성 (vi) 추가적인 데이터 클린업 이슈 처리 (v) 애플리케이션에 특정된 커스토마이징 실행 (vi) 모의 마이그레이션(mock migrations) 실행 (vii) 대용량 로딩 기능(bulk loading functions)을 가진 ETL 도구 또는 SQL 로더를 사용하여 추출물을 신규 시스템으로 로드 (viii) 비즈니스 규칙 체크와 참조 무결성 체크(referential integrity checks)를 포함한 내부 데이터 검증 수행 (ix) 고객팀에 예외사항 보고 (x) 데이터 검증 수행이 있다.

 

출력물로는 (i) 소스 시스템으로부터 추출물 (ii) 데이터 잡, 스크립트 (iii) 전환된 데이터를 로드한 애플리케이션 (iv) 예외, 경고(alerts), 에러 핸들링 같은 통제 목적 마이그레이션 모듈이 있다.

 

5. 마이그레이션과 검증(Migration & Validation)

주요 활동으로 (i) 현 시스템에 최종 데이터 추출 실행 (ii) 타겟 데이터베이스에 커스토마이징 실행 (iii) 애플리케이션 특정된 커스토마이징 실행 (iv) 파일럿 마이그레이션(pilot migrations) 실행 (v) 대용량 로딩 기능을 가진 ETL 도구 또는 SQL 로더를 사용하여 추출물을 신규 시스템으로 로드 (vi) 비즈니스 규칙 체크와 참조 무결성 체크를 포함한 내부 데이터 검증 수행 (vii) 고객팀에 예외사항 보고 (viii) 데이터 검증 수행 (ix) 마이그레이션 검증 보고서와 데이터 이동 측정치(data movement metrics) 준비 (x) 마이그레이션 검증 보고서와 측정치 검토 (xi) 신규 시스템에 검증용 집계 데이터(count verifications) 기록 (xii) 예외사항 또는 예상치 못한 변이(unexpected variations)를 일치시키거나 해결 (xiii) 마이그레이션 검증에 기반한 작업 종료 승인이 있다. 

 

출력물로는 승인된 마이그레이션 검증 보고서가 있다.

 

6. 마이그레이션 후 일치 프로세스(Reconciliation Process-Post Migration)

주요 활동으로 (i) 데이터 마이그레이션 보고서와 상호참조 파일/매뉴얼(cross-reference files/manuals) 완성 (ii) 데이터 건전성 보고서(Data sanity reports) 작성 (iii) 타겟 시스템 보고서 작성이 있다. 

 

 

출력물로는 (i) 예외 보고서와 상호참조 파일/매뉴얼 (ii) 인프라구조 대시보드(Infrastructure dashboards) (iii) 승인된 데이터 마이그레이션 활동 목록이 있다.

반응형

+ Recent posts