PE Notes · DB
무결성 vs 정합성, 프로파일링과 클렌징
한 저장소 안의 무결성과 여러 저장소 사이의 정합성을 가르고, 진단으로서의 프로파일링과 처방으로서의 클렌징을 비교합니다.
품질이 낮으면 결정이 낮아집니다. 비슷한 한자어 두 개를 시험에서 자주 갈라 묻습니다. 은 값이 규칙에 맞고 손상되지 않았는지이고, 은 흩어진 같은 값이 서로 같은지입니다.
무결성과 정합성
무결성은 한 테이블·한 DB 안에서 PK·FK·CHECK가 지키는 정확·완전입니다. 정합성은 A 시스템의 주소와 B 시스템의 주소가 같은 사람을 가리키는지입니다. 수단도 다릅니다. 한쪽은 제약, 다른 쪽은 트랜잭션·동기화·CDC입니다.
| 축 | 무결성 | 정합성 |
|---|---|---|
| 핵심 | 값 자체의 규칙 | 복사본·시스템 간 일치 |
| 범위 | 단일 DB | 여러 저장소 |
| 위반 | NULL 금지 칸에 NULL | 한쪽만 주소가 바뀜 |
| 수단 | 제약조건 | 2PC, 동기화, CDC |
ACID를 적을 때 Consistency는 제약 만족에 가깝고, 분산 맥락의 정합성은 복사본 일치에 가깝습니다. 답안에 두 층을 한 줄로 구분해 두면 안전합니다.
프로파일링
은 구조·분포·패턴을 재어 “지금 어떤 상태인가”를 밝히는 진단입니다. 클렌징 대상을 고르기 전에 합니다.
| 유형 | 보는 것 |
|---|---|
| 컬럼 | 최소·최대, NULL, 고유값. 나이 -5 |
| 종속 | 우편번호 → 시·도 |
| 중복 | 같은 고객, 다른 ID |
| 패턴 | 이메일·전화 형식 |
| 연관 | 주문 고객이 고객 표에 없음 |
클렌징
은 오류·빈칸·중복을 고치거나 빼서 품질을 올립니다.
| 기법 | 대상 |
|---|---|
| 결측 처리 | 대체, 보간, 삭제 |
| 이상치 | IQR·Z-score 후 수정·제거 |
| 중복 제거 | 정확 매칭, |
| 형식 표준화 | 날짜·전화·주소 |
| 참조 복원 | 부모 생성 또는 삭제 |
| 인코딩·도메인 | UTF-8, 범위 규칙 |
| 축 | 프로파일링 | 클렌징 |
|---|---|---|
| 목적 | 문제 식별 | 문제 해결 |
| 시점 | 진단 | 그 다음 처방 |
| 산출 | 리포트 | 정제 데이터 |
수집 → 프로파일링 → 기준 → 클렌징 → 검증 → 적재 → 모니터링이 한 바퀴입니다. 웨어하우스 적재 앞단에 품질 게이트를 두면 늪으로 안 갑니다.