55

스키마 드리프트와 계약

수집 파이프라인 설계

학습 목표

스키마 변경이 파이프라인을 깨는 경로를 안다 데이터 계약으로 방어하는 법을 익힌다

어느 날 갑자기 컬럼이 사라졌다

파이프라인이 조용히 망가지는 가장 흔한 이유는 스키마 드리프트입니다.

어떻게 일어나는가

  • 설비를 교체했더니 태그 이름이 바뀜
  • 벤더가 펌웨어를 올리면서 필드를 추가·삭제
  • 담당자가 엑셀 양식의 컬럼 순서를 바꿈
  • 단위가 조용히 바뀜 (kPa → bar)

가장 위험한 것은 마지막입니다. 파이프라인은 멀쩡히 돌고, 숫자만 100배 틀립니다.

방어 — 데이터 계약(Data Contract)

생산자와 소비자가 지킬 규약을 명시하고, 파이프라인 입구에서 검증합니다.

설비: PRESS01
필드:
  - 이름: MotorCurrent
    타입: float
    단위: A
    범위: [0, 60]        # 벗어나면 격리
    필수: true
  - 이름: OilTemp
    타입: float
    단위: celsius
    범위: [-20, 150]
    필수: true
샘플주기: 1s ± 200ms
결측허용: 1%

검증 실패 시 무엇을 할 것인가

전략동작적합한 경우
차단파이프라인 정지재무·품질 판정 데이터
격리이상 데이터를 별도 저장, 정상만 통과대부분의 설비 데이터
통과 + 경보일단 받고 알림유실이 더 치명적인 경우

격리 방식을 권합니다. 파이프라인은 살아 있고, 문제 데이터는 나중에 조사할 수 있습니다. 단 격리함이 쌓이는 것을 감시해야 합니다 — 아무도 안 보는 격리함은 그냥 유실입니다.