기술

데이터가 모자란 게 아니라 따로 노는 거였습니다: 제조 온톨로지와 지식그래프 이야기

품질팀 회의실에서 이런 장면을 자주 봅니다. 어제 난 불량 한 건을 두고 다들 노트북을 열어 놓고 앉아 있어요. 한 분은 QMS에서 검사 기록을 찾고, 옆 분은 MES에서 그 LOT이 언제 어느 라인을 탔는지 뒤지고, 또 한 분은 SCM에서 그때 투입된 자재가 뭐였는지 캡니다. 같은 품목 얘기를 하는데 화면이 세 개…

방동걸 프로필 사진
(주)웨이스 대표이사

품질팀 회의실에서 이런 장면을 자주 봅니다. 어제 난 불량 한 건을 두고 다들 노트북을 열어 놓고 앉아 있어요. 한 분은 QMS에서 검사 기록을 찾고, 옆 분은 MES에서 그 LOT이 언제 어느 라인을 탔는지 뒤지고, 또 한 분은 SCM에서 그때 투입된 자재가 뭐였는지 캡니다. 같은 품목 얘기를 하는데 화면이 세 개고, 화면마다 그 품목을 부르는 이름이 다 다릅니다. 30분쯤 지나면 누가 그래요. "이거 같은 자재 맞아요?"

솔직히 저희는 처음에 이게 데이터가 부족해서 생기는 일인 줄 알았습니다. 그런데 현장을 돌면 돌수록 반대더라고요. 데이터는 차고 넘칩니다. 문제는 그 데이터가 서로 연결돼 있지 않다는 거였어요. 오늘은 그 얘기를 좀 풀어 보려고 합니다. 왜 멀쩡한 데이터가 시스템마다 따로 살게 되는지, 그리고 저희가 그걸 어떻게 한 몸으로 꿰맸는지.

설비 위에 떠 있는 지식그래프 — 같은 품목 노드로 이어진 연결
데이터가 모자란 게 아니라 서로 따로 놀고 있었습니다.

같은 품목이 시스템마다 따로 삽니다

생각해 보면 이상한 일입니다. 공장에 품목은 하나뿐이에요. 그런데 그 하나가 ERP에서는 자재로, MES에서는 생산 대상으로, QMS에서는 검사 대상으로, SCM에서는 재고로 각각 따로 존재합니다. 이름도 다르고, 키도 다르고, 심지어 그게 가리키는 의미도 시스템마다 미묘하게 다르죠. 사람이야 "아 그거 그거" 하고 머릿속에서 잇지만, 시스템은 그걸 못 합니다. 시스템 입장에서는 그냥 서로 모르는 네 개의 데이터예요.

그래서 "이 불량과 연결된 자재·설비·LOT은?" 같은 질문이 들어오면, 결국 사람이 시스템을 넘나들며 손으로 잇는 수밖에 없습니다. 아까 그 회의실 장면이 바로 그거죠. 그럼 여기에 AI를 붙이면 해결될까요? 안 됩니다. 연결의 지도가 애초에 없으니까요. AI한테 시스템 네 개를 던져 줘 봐야, AI도 사람처럼 "아마 이게 그건가 봐요" 하고 추측할 수밖에 없어요. 길이 안 깔린 곳에서는 누가 길을 찾든 결국 짐작입니다.

온톨로지는 그러니까 관계를 표준으로 박아 두는 일입니다

온톨로지라는 말이 좀 거창하게 들리는데, 하는 일은 단순합니다. "무엇이 무엇과 어떻게 연결되는가"를 미리, 명시적으로 적어 두는 거예요. 흔히 쓰는 데이터 스키마가 "이 테이블은 어떻게 생겼다" 하는 테이블 모양을 정의한다면, 온톨로지는 엔티티끼리의 의미적 관계를 정의합니다. 예를 들어 품목이 설비에서 "가공된다", 불량이 어떤 LOT에 "속한다", 이 자재가 저 자재로 "대체된다" 같은 관계요. 모양이 아니라 관계입니다.

VEXPLOR는 제조 도메인에 311+ 비즈니스 관계를 사전 정의해 뒀습니다. 저희가 입버릇처럼 "표준화 없이 AI 없다"고 말하는데, 그 실체가 정확히 이겁니다. 관계가 표준으로 정의돼 있어야, AI가 추측이 아니라 정의된 길을 따라 또박또박 답을 냅니다. 길이 깔려 있으니까 헤매지 않는 거예요. 반대로 말하면, 이 311+ 관계가 없는 상태에서 아무리 똑똑한 모델을 갖다 붙여도 결과는 짐작 이상이 되기 어렵습니다.

품목 하나가 14개 솔루션을 관통합니다

온톨로지의 진짜 힘은 "단일 진실"에서 나옵니다. 무슨 말이냐면, VEXPLOR에서는 품목 마스터 1개가 14개 솔루션을 관통합니다. 아까처럼 같은 품목이 ERP·MES·QMS·SCM·PLM마다 따로 복제돼서 네 벌, 다섯 벌 존재하는 게 아니라, 노드 하나가 여러 솔루션의 맥락으로 동시에 연결돼 있어요. 품목을 한 번만 정의하고, 그 하나를 모두가 같은 얼굴로 바라보는 겁니다.

그리고 솔루션과 솔루션 사이의 관계는 730+ 크로스 관계로 정의돼 있습니다. 이게 깔려 있으면 어떤 일이 가능하냐면, 한 지점에서 출발해 "연결된 모든 것"을 끝까지 따라갈 수 있어요. 말로 하면 추상적이니 한 건 따라가 보겠습니다.

QMS에 불량 한 건이 떴습니다. 거기서 출발해 봅니다. 그 불량이 어느 LOT에서 났는지 MES 쪽 관계를 타고 넘어갑니다. 그 LOT에 무슨 자재가 투입됐는지 SCM 쪽으로 또 넘어가고요. 그 자재에 대체 가능한 자재가 있는지 ERP의 대체 관계를 짚습니다. 마지막으로 그 자재가 들어간 다른 주문들이 뭔지 다시 SCM으로 건너가요. 불량 한 건에서 시작했는데, 시스템 경계를 네 번 넘어 "이 불량이 결국 어떤 주문들까지 흔드는가"가 한 줄로 이어집니다. 사람 넷이 30분 걸리던 회의실 장면이, 관계만 깔려 있으면 한 번의 추적으로 끝나는 거죠.

품목 정의 하나가 14개 시스템을 관통하는 도면 — 중심 노드 강조
한 번 정의한 관계가 시스템 전부를 관통합니다.

그래프가 어제 데이터면 의미가 없습니다: CDC로 실시간 유지

여기서 당연한 반문이 하나 나옵니다. "그 관계 지도, 만들어 두면 금방 낡는 거 아니에요? 공장은 분 단위로 바뀌는데." 맞는 지적이에요. 그래서 저희가 가장 신경 쓴 부분이기도 합니다. 관계 지도가 어제 찍은 사진이라면 차라리 없느니만 못하거든요. 어제는 멀쩡했던 자재가 오늘 단종됐는데, 그래프는 여전히 그 자재를 추천하고 있으면 곤란하니까요.

그래서 VEXPLOR는 CDC(Change Data Capture) 파이프라인으로 변경을 Neo4j에 실시간으로 반영하고, 온톨로지는 9개 도메인으로 구성됩니다. 두 가지 기술을 잠깐 짚고 갈게요.

  • CDC는 원본 데이터에서 일어난 변경, 그러니까 삽입·수정·삭제를 그때그때 포착해 하류로 흘려보내는 기법입니다. 전체를 다시 퍼 오는 게 아니라 바뀐 것만 흘려보내니까, 실시간성과 효율을 동시에 챙깁니다.

  • Neo4j는 관계를 일급 시민으로 다루는 그래프 데이터베이스예요. 앞에서 본 것처럼 여러 칸을 건너뛰며 따라가는 다단계 탐색이 일인데, 이걸 조인 폭증 없이 빠르게 합니다.

이 둘이 맞물리니까 현장에서 품목·설비·불량 데이터가 바뀌는 순간 그래프도 따라 바뀝니다. 덕분에 AI가 어제의 공장이 아니라 지금 이 순간의 공장을 기준으로 추론해요.

이게 바로 AI가 헛소리를 안 하게 만드는 토대입니다

앞선 글(4-Way RAG)에서 Graph 검색 경로 얘기를 했는데, 그 경로가 따라가는 길이 바로 지금 설명한 이 온톨로지입니다. 관계가 정의돼 있으면 이런 일들이 가능해져요.

AI가 "연결된 답"을 짐작이 아니라 정의된 관계 탐색으로 냅니다. "대체 자재 추천해 줘" 같은 답도, 모델이 어디서 본 듯한 걸 지어내는 게 아니라 온톨로지에 박혀 있는 대체 관계에 근거합니다. 한 솔루션에서 일어난 변화가 다른 솔루션에 어떤 파장을 일으키는지도 추적할 수 있어요. 리콜 범위가 어디까지인지, 설비 하나 멈추면 영향이 어디까지 번지는지 같은 거요. 결국 표준화된 관계가 신뢰할 수 있는 제조 AI의 바닥을 깔아 주는 셈입니다.

그래서 베끼기가 어렵습니다

VEXPLOR의 데이터 해자는 6개 레이어로 짜여 있는데, 그중에서도 관계 레이어가 가장 깊습니다.

  • L5 제조 온톨로지(311+ 관계) — 복제 불가

  • L4 크로스 솔루션 관계(730+) — 매우 어려움

여기서 한 번 솔직하게 말씀드리고 싶은 게 있어요. 제조 도메인의 관계를 정의하는 일은 모델을 학습시키는 일과 성격이 완전히 다릅니다. 이건 도메인 지식을 한 줄 한 줄 쌓아 올리는 작업이에요. 311+ 관계와 730+ 크로스 관계는 어느 날 한 번의 작업으로 뚝딱 나오는 게 아닙니다. 현장을 돌고, 품목을 들여다보고, "이건 이거랑 이렇게 엮이는구나"를 수없이 확인하면서 천천히 쌓입니다. 모델은 사 오면 그만이지만, 이 축적은 사 올 데가 없어요. 그래서 이게 그대로 따라잡기 어려운 진입장벽이 됩니다.

같이 풀 사람을 찾습니다

제조 온톨로지·지식그래프 쪽에는 아직 안 풀린 재밌는 문제가 잔뜩 남아 있습니다. 온톨로지가 서로 안 부딪치게 일관성을 검증하고 충돌을 풀어내는 법, 그래프가 커질 대로 커진 상태에서 CDC 반영 지연을 어떻게 관리할지, 여러 칸을 건너뛰는 관계 탐색의 질의를 어떻게 더 빠르게 최적화할지, 새 도메인이나 솔루션이 붙을 때 관계 스키마를 어떻게 진화시킬지 같은 것들이요. 깔끔한 정답이 정해진 문제들이 아니라서, 붙잡고 풀다 보면 꽤 보람이 있습니다.

VEXPLOR는 제조 AI OS를 만드는 (주)웨이스의 제품입니다. 위 얘기 읽으면서 "어 이거 한번 파 보고 싶은데" 싶으셨다면, 아마 잘 맞으실 거예요. 아래 분야에 관심 있는 분을 찾습니다.

  • 관심 분야: 지식그래프(Neo4j/Cypher) / 온톨로지 엔지니어링 / 데이터 엔지니어링(CDC·파이프라인) / 그래프 알고리즘

  • 더 알아보기: 채용·회사 소개 https://wace.me · 기술 문의 contact@wace.me


이 글이 도움이 되셨다면 공유해 주세요

새 글이 올라오면 메일로 알려드립니다

제조 현장에서 확인한 것들을 기록합니다. 광고성 발송은 하지 않습니다.

우리 공장은 지금 어느 단계일까요?

제조 AI 성숙도 자가진단 — 회사 정보 없이 10문항이면 됩니다.

무료 진단 받기
방동걸 프로필 사진
작성자
(주)웨이스 대표이사

제조 AI 운영체제 VEXPLOR를 만들고 있습니다. 스마트공장 구축 현장에서 데이터 표준화·온톨로지·디지털트윈·자율형공장을 다루며, 이 블로그에는 현장에서 실제로 부딪힌 문제와 그때 내린 판단을 씁니다.

contact@wace.me

이 문제를 실제 현장에서 풀고 있습니다

(주)웨이스는 제조 AI 운영체제 VEXPLOR로 데이터 표준화부터 자율형공장까지 만들어가고 있습니다. 우리 공장에 적용하면 어떤 모습일지 궁금하시면 편하게 물어보세요.