데이터 프로파일링으로 데이터 품질 문제를 찾는 방법

데이터 프로파일링의 절차와 분석 유형, 데이터 관리·구조·활용 영역별 품질 검증 방법을 정리한다.

2026-08-14 · 최초 발행 2025-08-10

오류를 고치기 전에 데이터의 상태를 측정한다

데이터 프로파일링은 데이터 오류의 발생 현황을 체계적으로 분석하고 원인을 파악해 개선으로 연결하는 데이터 품질 관리 기법이다. 데이터의 특성, 구조, 내용, 관계, 품질을 함께 살피므로 단순 오류 검출에 그치지 않는다. 데이터 자산의 가치를 높이고, 품질을 객관적으로 측정·평가하며, 활용 가능성을 넓히기 위한 분석 과정이다.

메타데이터에서 검증과 개선까지

프로파일링은 데이터의 기본 구조를 수집한 뒤 품질 규칙을 찾아 확정하고, 실제 데이터 검증과 개선 계획으로 이어진다.

메타데이터를 수집해 분석의 기반을 만든다

테이블 구조, 컬럼 정의, 데이터 타입, 제약조건처럼 데이터의 구조와 특성을 설명하는 정보를 확보한다. 시스템 카탈로그, 데이터 사전, ERD가 주요 소스가 되며, Oracle에서는 USER_TABLES, USER_TAB_COLUMNS 같은 시스템 뷰를 활용할 수 있다.

메타데이터 수집데이터 소스 식별메타데이터 추출메타데이터 표준화메타데이터 저장소 구축

데이터와 업무 규칙에서 품질 기준을 찾는다

수집한 메타데이터와 샘플 데이터를 바탕으로 통계 분석, 패턴 인식, 예외 사례 발견을 수행해 품질 규칙을 도출한다. 이 과정에서 비즈니스 요구사항과 데이터 특성을 함께 고려해야 한다. 도메인 전문가는 업무 규칙과 데이터의 실제 의미를 검토하는 역할을 맡는다.

도출한 규칙은 중요도, 우선순위, 적용 범위를 검토한 뒤 확정한다. 데이터 소유자, 사용자, 관리자의 검토와 승인을 거쳐 품질 규칙 카탈로그로 관리한다.

확정한 규칙으로 데이터를 검증한다

확정된 규칙은 실제 데이터에 적용한다. 자동화 도구를 이용하면 대규모 데이터도 효율적으로 검증할 수 있으며, 발견된 오류는 상세 분석과 보고서 작성, 개선 계획 수립으로 이어진다. 개선을 실행한 뒤 다시 프로파일링을 수행하는 순환 구조로 운영한다.

메타데이터 수집규칙 발견 도출규칙 확정데이터 검증개선 계획 수립개선 실행

관리·구조·활용 관점에서 보는 데이터

데이터 프로파일링은 개별 값만이 아니라 데이터가 관리되고 설계되며 사용되는 전반을 분석 대상으로 삼는다.

데이터 관리 영역에서는 생성, 수집, 저장, 처리, 공유에 이르는 라이프사이클을 살핀다. 데이터 거버넌스, 보안, 백업·복구, 아카이빙 정책과 함께 관리 프로세스의 효율성과 정책 준수 여부를 평가한다. 민감 정보 접근 통제나 데이터 보존 기간 준수 여부가 여기에 해당한다.

데이터 구조 영역에서는 데이터베이스 스키마, 테이블 설계, 인덱스, 테이블 관계를 검토한다. 정규화 수준, 키 설계, 제약조건의 적절성과 데이터 모델의 효율성·확장성·유연성을 확인한다. 테이블 관계 정의의 일관성이나 인덱스 구성의 효율성도 분석 대상이다.

데이터 활용 영역은 실제 사용 패턴과 접근 빈도, 활용 방식을 다룬다. 사용자 요구사항과 데이터 제공 방식이 맞는지, 활용 효율성과 접근성, 편의성이 충분한지 검증한다. 자주 조회되는 데이터의 최적화와 사용자 친화적인 제공 방식이 대표적인 검토 항목이다.

품질 문제를 드러내는 분석 방식

컬럼의 값과 형식을 분석한다

컬럼 분석은 개별 컬럼의 특성, 패턴, 분포를 확인하는 방식이다. 데이터 타입 적합성, NULL 값 비율과 분포, 고유값 수와 분포, 최소값·최대값·평균·중앙값 같은 통계치, 형식의 일관성을 분석한다. 예를 들어 고객 전화번호 컬럼에서 000-0000-0000000-000-0000이 섞여 있는지 식별할 수 있다.

기본키의 무결성을 검증한다

PK 분석은 기본키의 유일성과 비NULL성, 무결성을 확인한다. PK 누락과 중복 여부, PK 인덱스 구성의 적절성, 값의 분포와 패턴이 주요 대상이다. 주문 테이블이라면 주문번호(PK)의 중복 여부와 분포를 검증한다.

테이블 사이의 정합성을 확인한다

테이블 간 데이터 분석은 서로 다른 테이블의 데이터가 일관되고 정합한지 검증한다. 마스터와 트랜잭션 데이터의 정합성, 집계 데이터와 상세 데이터의 일치 여부, 중복 데이터, 분산 저장 데이터의 일관성을 확인한다. 주문 테이블과 주문상세 테이블 사이에서 주문금액 합계가 일치하는지 검증하는 경우가 이에 해당한다.

외래키 관계에서 참조 무결성을 찾는다

FK 관계 분석은 외래키를 통해 연결된 테이블의 참조 무결성을 검증한다. FK 제약조건 구현 여부, 참조 무결성 위반, 고아 레코드(orphan record), FK 인덱스 구성의 적절성을 확인한다. 주문상세 테이블의 상품코드가 상품 마스터 테이블에 존재하는지 검증하는 작업이 대표적이다.

1:N1:N1:NFK 관계 분석FK 제약조건 검증참조 무결성 검증고아 레코드 검출고객 테이블주문 테이블주문상세 테이블상품 테이블

정규화 상태를 점검한다

정규화 분석은 데이터베이스 설계의 정규화 수준을 평가하고 개선점을 도출하는 방식이다. 함수적 종속성, 데이터 중복성, 정규화 위반 사례, 비정규화의 적절성을 분석한다. 고객 테이블에 주소 정보가 반복된다면 주소를 별도 테이블로 분리해 3정규형을 만족시키는 방안을 제시할 수 있다.

도구와 분석 접근

오픈소스 도구로는 빅데이터 환경의 데이터 품질 보증 프레임워크인 Apache Griffin, 데이터 프로파일링·클렌징·변환을 위한 Data Cleaner, ETL과 데이터 통합 기능에 프로파일링 기능을 제공하는 Talend Open Studio가 있다.

상용 도구로는 엔터프라이즈급 데이터 품질 관리 솔루션인 Informatica Data Quality, 종합적인 프로파일링과 품질 분석을 제공하는 IBM InfoSphere Information Analyzer, 데이터 통합·품질·거버넌스를 포괄하는 SAS Data Management가 있다.

SQL만으로도 컬럼의 NULL 비율, 고유값 수, 최소값과 최대값을 확인할 수 있다.

-- 컬럼 분석 예시 (NULL 비율, 고유값 수, 최소/최대값 등)
SELECT
  COUNT(*) as total_rows,
  COUNT(customer_id) as non_null_count,
  COUNT(DISTINCT customer_id) as distinct_count,
  MIN(customer_id) as min_value,
  MAX(customer_id) as max_value
FROM customers;

통계적 방법론은 기술통계, 분포 분석, 이상치 탐지에 활용한다. 머신러닝 접근법은 패턴 인식, 클러스터링, 이상 탐지를 이용한 고급 프로파일링에 활용할 수 있다.

통합과 품질 개선에 적용한 사례

여러 레거시 시스템의 고객 데이터를 통합하는 금융권 프로젝트에서는 소스 시스템별 고객 데이터를 프로파일링해 구조와 품질 현황을 파악했다. 동일 고객에게 서로 다른 식별자가 사용되고, 주소 형식이 일치하지 않으며, 계좌 정보가 중복된 문제가 발견됐다. 프로파일링 결과는 통합 데이터 모델 설계와 ETL 규칙 수립에 활용돼 성공적인 통합으로 이어졌다.

병원 정보 시스템의 환자 진료 데이터는 품질 문제로 분석이 어려운 상황이 있었다. 진단코드, 처방전, 환자 정보를 종합적으로 프로파일링한 결과 진단코드 오기입, 처방약물 코드 불일치, 환자 정보 불완전성이 드러났다. 데이터 입력 프로세스 개선, 코드 표준화, 자동 검증 체계 구축으로 품질 70% 향상을 달성했다.

지속 가능한 프로파일링 운영

처음부터 전체 데이터셋을 일괄 분석하기보다 중요도가 높은 테이블과 컬럼에서 시작해 범위를 넓히는 접근이 효과적이다. 초기에는 자동화된 기본 프로파일링을 수행하고, 문제 영역을 중심으로 심층 분석을 진행한다.

기술적 분석만으로는 데이터의 의미와 중요도를 충분히 판단하기 어렵다. 도메인 전문가가 참여해 업무 맥락을 확인하고, 비즈니스 규칙과 연결된 프로파일링 규칙을 정의해야 한다.

프로파일링은 일회성 작업이 아니라 지속적인 프로세스로 운영한다. 자동화된 스크립트나 도구로 정기 실행하고, 결과 변화 추이를 모니터링해 데이터 품질 트렌드를 파악한다. 이는 데이터 구조 최적화, 활용성 향상, 관리 효율화의 기회를 찾고 데이터 기반 의사결정의 신뢰성을 확보하는 기반이 된다.

데이터 프로파일링데이터 품질메타데이터데이터베이스데이터 거버넌스