Skip to content
isdnetworks
Go back

매핑표를 먼저 완성한다

옛 시스템의 코드 체계를 새 형식으로 옮기는 작업이었고 초기화 스크립트는 끝낸 상태였다. 다음은 데이터 스크립트인데 값들이 영문 약어로 들어 있어서 새 코드 형식으로 바꿔야 했다.

Table of contents

Open Table of contents

하나씩 바꾸지 않은 이유

약어를 찾아서 하나씩 바꾸는 방식은 세 가지가 걸렸다. 같은 약어가 여러 컬럼에 나올 수 있고 어느 코드 그룹에 속하는지가 컬럼마다 다르며 놓친 것이 있는지를 알 수 없다.

셋 중 마지막이 결정적이었는데 하나씩 바꾸면 끝났는지를 판정할 방법이 없기 때문이다. 그래서 매핑표를 먼저 완성하기로 했다.

컬럼별 정리와 건수

각 컬럼이 어느 코드 그룹에 속하는지를 확인하고 값별 대응을 적었다. 카테고리 유형과 판매 상태와 노출 상태와 브랜드 유형처럼 컬럼 단위로 줄을 나눴다.

여기에 건수도 같이 적었다. 변환 후에 개수를 대조할 수 있으므로 표의 각 줄이 그대로 검증 항목이 된다.

1대1이 안 되는 것

문의 유형에서 걸렸다. 넷 중 하나만 대응이 있고 나머지 셋에 대응하는 하위 코드가 없었으며 가장 가까운 것 하나가 셋을 다 포괄하는 성격이었다.

셋을 하나로 통합하기로 하되 그냥 넘기지 않고 매핑표에 주의로 적었다. 도매와 부품과 서비스 구분이 사라지기 때문이다. 되돌릴 수 없는 변환은 그 사실을 남겨야 나중에 왜 세 종류가 하나가 됐는지를 그 줄이 답한다.

배너 유형은 넷이 각각 대응됐는데 번호가 연속이 아니었다. 중간 두 자리가 비어 있었지만 억지로 순서대로 맞추지 않고 의미가 맞는 것으로 붙였다.

확정과 추정의 구분

문의와 배너 매핑은 1대1 대응이 문서로 확정된 것이 아니라 의미를 보고 판단한 것이었다. 그래서 매핑표에 이 둘은 대응이 불가해 합리적 추정을 적용했다고 명시했다.

나머지는 컬럼 이름과 코드 그룹 이름이 명확히 대응해서 확정으로 뒀다. 확정된 것과 추정한 것을 나눠 적지 않으면 표 전체가 같은 신뢰도로 읽히고 나중에 어디를 다시 봐야 하는지 알 수 없다.

순서와 기계적 변환

작업 순서는 코드 정의를 새 형식으로 변환하고 그 결과로 매핑표를 완성한 뒤 데이터 스크립트를 일괄 변환하는 셋으로 잡았다. 새 코드 체계가 확정돼야 매핑 대상이 생기므로 첫 단계가 먼저다.

두 번째를 건너뛰고 세 번째로 가면 변환하다가 이것을 무엇으로 바꿀지를 계속 만나고 그때마다 멈춰 판단하게 된다. 매핑표가 있으면 표의 각 줄이 치환 하나가 되어 변환이 기계적이 되고 적어 둔 건수로 변환 후 개수까지 대조된다.

정리


Share this post on:

Previous Post
센티널은 코드로 강제한다
Next Post
도착률 대비 처리량으로 잰다