중복 데이터 제거는 같은 글자가 있는 행을 지우는 작업이 아닙니다. 무엇을 하나의 기록으로 볼지 정하고 그 기록을 식별할 기준을 찾아야 합니다. 이름이나 금액만 같다는 이유로 지우면 정상 자료가 사라질 수 있습니다.
사람 이름은 충분한 기준이 아닐 수 있습니다
동명이인이 있고 같은 사람이 여러 번 신청할 수도 있습니다. 신청 목록이라면 신청 번호, 주문 목록이라면 주문 번호와 상품 항목 등 자료의 목적에 맞는 식별자를 봅니다. 한 행의 단위가 상품인지 주문인지에 따라 중복 기준도 달라집니다.
중복 후보와 삭제 대상을 나눕니다
예를 들어 같은 주문 번호에 서로 다른 처리 상태가 있다면 중복 복사본이 아니라 변경 이력일 수 있습니다. 더 최근 날짜의 행만 남기기 전에 이 표가 현재 상태표인지 이력표인지 확인합니다. 기준을 알 수 없다면 삭제보다 후보 표시가 먼저입니다.
비교 작업의 순서
- 원본 사본을 보관합니다.
- 한 기록을 식별할 열을 정합니다.
- 같은 키를 가진 행을 모아 차이를 확인합니다.
- 남길 기준과 제외한 이유를 기록합니다.
- 처리 전후 건수와 합계를 비교합니다.
공백이나 표기 차이를 정리할 때도 원래 값은 남겨 두는 편이 검토하기 쉽습니다. 표기를 통일했기 때문에 서로 다른 기록이 같아진 것은 아닌지 확인합니다.
합계 변화까지 설명할 수 있어야 합니다
100행이 90행이 됐다는 사실만으로 성공을 판단하지 않습니다. 제외된 10행이 왜 중복인지, 금액이 얼마나 달라졌는지 설명할 수 있어야 합니다. 데이터를 깔끔하게 보이게 하는 일보다 기록의 의미를 유지하는 일이 먼저입니다.