기출 DB deduplication

agnusdei·2025년 5월 17일
0

Database

목록 보기
36/76

1. 개요 및 정의

**데이터 중복(duplication)**은 데이터베이스 내에 동일하거나 유사한 데이터가 반복 저장되어 저장 공간 낭비, 데이터 정합성 저하, 성능 저하 등을 유발하는 문제입니다.
De-duplication은 이러한 중복 데이터를 식별하고 제거하거나 통합하여 데이터 품질을 개선하고 리소스를 효율화하는 기술 및 절차입니다.


2. 데이터 중복의 유형

구분설명
정확한 중복 (Exact duplicates)PK/ID 포함한 모든 필드가 동일한 레코드
유사 중복 (Near duplicates)이름, 주소 등 일부 필드가 유사한 레코드 (오탈자, 공백, 약어 등)
논리적 중복 (Logical duplicates)의미적으로 동일하지만 표현이 다른 경우 (예: 김철수 vs 김 철 수)

3. 중복 발생 원인

  • 데이터 입력 실수 및 불완전한 검증
  • 다중 시스템 간 통합 과정에서의 정합성 부족
  • ETL 과정 중 잘못된 조인/매핑
  • 시스템 마이그레이션 및 데이터 이전 오류
  • 사용자 정의 입력 필드 사용 증가

4. De-duplication 절차

  1. 데이터 수집 및 정제

    • ETL 또는 EAI 툴을 통한 데이터 적재
    • Null, 공백, 특수문자 제거 등 전처리 수행
  2. 중복 기준 정의

    • 중복 판단 속성 및 유사도 기준 정의
    • 예: 이름 + 생년월일 + 전화번호 조합
  3. 중복 식별 기법

    • Exact Match: 모든 필드 완전 일치
    • Fuzzy Matching: 유사도 기반 비교 (Levenshtein, Jaro-Winkler, Cosine 등)
    • ML 기반 식별: 클러스터링, 분류 모델 적용
  4. 중복 제거 및 통합

    • 대표 레코드 선택 (기준값 우선)
    • 병합 정책 수립 (최신 정보 우선, 신뢰도 기반 등)
    • 통합 로직 설계 및 적용
  5. 검증 및 적용

    • 통합 후 정합성 검증 (PK 충돌, 참조 무결성 등)
    • 운영 데이터 반영 및 모니터링

5. 적용 기술 및 도구

  • 데이터 품질 관리 도구: Talend, Informatica DQ, IBM InfoSphere
  • Fuzzy Matching 라이브러리: Apache Lucene, OpenRefine, Python FuzzyWuzzy, Dedupe.io
  • DBMS 기능: Oracle Match Merge, SQL Window Function (ROW_NUMBER(), RANK() 등)

6. 고려사항 및 한계

고려사항설명
정합성 유지FK, 트랜잭션 일관성 보장 필요
실행 성능대용량 데이터에서 유사도 비교는 고비용 연산
운영 영향 최소화중복 제거 시 백업 및 롤백 계획 필요
정책의 표준화기준이 불명확할 경우 사용자 신뢰도 저하

7. 사례 및 적용 효과

사례

  • 공공기관 주민정보 중복 제거

    • 이름 + 주민번호 유사도 분석
    • 약 15% 중복 발견, 정확도 98.2%
  • CRM 시스템 통합

    • 고객 이름, 전화번호 기준 통합
    • 마케팅 비용 20% 절감

적용 효과

  • 저장 공간 최적화 (최대 40% 절감)
  • 고객 만족도 향상 (중복 연락 방지)
  • 데이터 기반 의사결정 정확도 개선

8. 결론

데이터 중복 제거는 단순한 데이터 정리 작업이 아닌, 데이터 품질 향상과 시스템 신뢰성 확보를 위한 핵심 작업입니다.
특히, 빅데이터, AI, 클라우드 기반의 데이터 활용이 증가함에 따라, 정확하고 확장성 있는 De-duplication 전략은 기업 경쟁력을 좌우하는 필수 요소가 됩니다.


profile
DevSecOps ⚙️ + Pentest 🚩

0개의 댓글